Nintex RPA Central API
The Nintex RPA Central API is used for managing bots, botflows, users, and other related functions in Nintex RPA Central. You can use the Nintex RPA Central API to complete the following featured actions, and more:
-
Start botflows
-
Start a botflow that has inputs
-
Retrieve bot information
-
-
Retrieve a list of botflow instances (data can be used in third party reports)
-
Use the instance ID to retrieve botflow instance information to check on the status of started botflows
-
Manage users
-
Retrieve a list of users
-
Add users
-
Delete users
-
Validate users
-
Change user's role
-
Tip: To better manage the functions that are processed Nintex RPA Central, retain and download audit logs. For more information, go to Audit logs.
This topic describes how to use the Nintex RPA Central API:
Authentication
Because the Nintex RPA Central API uses Microsoft Windows-integrated authentication, you must use an identity that has administrative access in Nintex RPA Central. Non-registered and non-administrative users will receive an unauthorized error. If you do not want to allow some of the actions from your application, use a designer or participant role in Nintex RPA Central, depending on your scenario. For more information, go to Roles.
In addition, due to the use of NTLM authentication, you must be logged into a domain. If you are using Postman, ensure that you have selected NTLM Authentication at the collection level for authorization and you have entered the correct domain username and password for the administrator. You can use “Inherit auth from parent” to leverage the credentials stored as part of the collection.
Prerequisites
Before you can successfully use the Nintex RPA Central API, you must:
-
Install the latest version of Nintex RPA Central and Nintex Bot.
Contracts
-
If you are using K2 Five, read this Nintex Community article to get custom Swagger files and learn how to use K2 Five with Nintex RPA LE.
-
To view documentation for the Nintex RPA Central API, append /swagger to your Nintex RPA Central URL in your browser address bar. For example, https://<RPA Central URL>/swagger.
-
Support for OpenAPI Specification (Swagger) was introduced in Nintex RPA Central 2.8.0.
-
Open the contracts in OpenAPI Specification v3.
Postman collection
Use the four supplied Postman collections to make calls with the Nintex RPA Central API.
-
Download and import the Postman collections into a Postman workspace.
-
Ensure that the Postman collection is using NTLM authentication.
-
Type a username and password.
-
Set a ServerURL variable.
Tip: You can also use Postman to generate code for a language that you choose.
PowerShell scripts
The Nintex RPA Central API exposes endpoints for handling Nintex RPA Central-related management operations. You can use PowerShell scripts to call endpoints. Although you can call any endpoint, the two listed in the commands in this section are the most useful for starting botflow instances.
Action | PowerShell command |
Method type |
---|---|---|
Run a botflow |
curl.exe -X 'POST' 'https://localhost/api/jobbotflows/1/run' -H 'accept: application/json' -H 'Content-Type: application/json-patch+json' -d '{}' --ntlm -u : | POST |
Run a botflow instance on a particular bot | curl.exe -X 'POST' 'https://localhost/api/jobbotflows/1/run-on-bot/1' -H 'accept: application/json' -H 'Content-Type: application/json-patch+json' -d '{}' --ntlm -u : | POST |
Note: The --ntlm -u switch with a single colon (--ntlm -u :) uses the currently logged-in user to make the request.
Featured actions and endpoints
A list of featured actions and endpoints is displayed in the table below. You can view additional actions and endpoints in the Nintex RPA Central contracts, which can be viewed in OpenAPI Specification v3.
Actions that start botflow calls are asynchronous; they accept the request, but do not necessarily start the botflows. The botflow start depends on a variety of conditions, such as if there are any bots assigned to botflow, and if bots are available. After a botflow executes and completes, there is no API call to retrieve the results.
Action | Endpoint |
Method type |
---|---|---|
Get a list of input variables for a botflow | /api/jobbotflows/{jobBotflowId}/get-input-variables | GET |
Run a botflow on a bot | /api/jobbotflows/{jobBotflowId}/run-on-bot/{botId} | POST |
Run a botflow | /api/jobbotflows/{jobBotflowId}/run | POST |
Get a JobBotflow detail by ID | /api/jobbotflows/{jobBotflowId}/detail | GET |
Get a JobBotflow by ID | /api/jobbotflows/{jobBotflowId} | GET |
Get all the JobBotflows that are not deleted | /api/jobbotflows | GET |
Get a list of botflows and their complexity | /api/jobbotflows/get-metadata | GET |
Get the details for an instance by ID | /api/instances/{instanceId}/detail | GET |
Get an instance by ID | /api/instances/{instanceId} | GET |
Get a list of botflow instances | /api/instances | GET |
Get botflows assigned to a bot by ID | /api/bots/{botId}/get-jobbotflow-counts | GET |
Get a list of bots and their IDs | /api/bots | GET |
Get application info | /api/applicationinfo | GET |
Get the user's information | /api/users/domain/{domain}/name/{name} | GET |
Get the list of users | /api/users | GET |
Get the user's information | /api/users/{username} | GET |
Get the logged-on user's information | /api/users/currentuser | GET |
Add a user | /api/users | POST |
Delete a user | /api/users/{userId} | DELETE |
Change user's role | /api/users/update-role | PUT |
Validate a user | /api/users/validate-username | POST |