API Process Token Guide
Introduction
This document will serve as a guide to creating a process token using the TrustX API. To take advantage of the TrustX API, an API key is required. Follow the API Keys Guide for more information.
Create a Token
A token grants access to the caller to invoke API calls on TrustX. Once the token is generated it can be reused, however it must be noted that the token has a 'time to live'. Once the 'time to live' has expired a new token must be generated.
POST https://{{tenant}}.{{region}}.trustx.com/api/arthr/apiKeys/issueContent-Type: application/jsonX-API-Key: {{apiKey}}{}Create a Process Token
When creating a Process Token using the TrustX API, there are several parameters that can be passed through the request body. Below is a list of all available parameters and a description of their behavior.
Parameters
| Parameter Name | Type | Description | Required | |
|---|---|---|---|---|
| name | string | maxLength: 50 minLength: 0 | A unique name to describe the process token. | required |
| description | string | maxLength: 2000 minLength: 0 | A short description of the token. | optional |
| processDefnName | string | maxLength: 50 minLength: 0 | The process definition name. Using the combination of process definition name and process definition version a specific process definition is bound to the process token to be used when a process instance created with a token. | required |
| processDefnVersion | int32 | The process definition version. Using the combination of process definition name and process definition version a specific process definition is bound to the process token to be used when a process instance created with a token. | optional | |
| uiUrl | string | maxLength: 500 minLength: 0 | The URI of the application to execute the process definition when the process instance is started. Currently only TruxtX user interfaces are supported. | optional |
| status | string | Enum: ACTIVE,INACTIVE | The current status of the token. Possible values include: ACTIVE, INACTIVE | required |
| type | string | Enum:
| The process token type. An unlimited process token will not expire. A multi-use can have multiple uses determined either by a count or date. Alternatively, the limited process token will have a single use but expire after the defined date. Possible values include: UNLIMITED MULTI_USE_COUNT_LIMITED MULTI_USE_TIME_LIMITED | required |
| notBeforeDtm | date-time | The token will remain inactive before this date. | optional | |
| notAfterDtm | date-time | The date after which the token will be inactive. | optional | |
| maxCount | int32 | The number of times the token can be used. In the example above the token can be used once only. | optional | |
| counter | int32 | The current usage count. | optional | |
| maxProcessDuration | object | optional | ||
| startProcessAddress | string | optional | ||
| parameters | Map<String,String> | A map of additional parameters can be supplied to provide extra information when the process instance is started. This additional parameter map could typically contain information with the following keys:
These are typically attributes that are useful for searching for an ID&V applicant. Any set of additional parameters may be passed in. Using additional parameters the redirect URL can also be specified with they key |
Examples
Create Process Token uses the POST endpoint:/api/process-manager/processTokens.
Example: HTTP Request
POST https://{{tenant}}.{{region}}.trustx.com/api/process-manager/processTokensContent-Type: application/jsonAuthorization: Bearer {{token}}{ "name": "My Process Token", "description": "A token that allows me to start create an instance of my process definition", "status": "ACTIVE", "type": "MULTI_USE_COUNT_LIMITED", "maxCount": 1, "processDefnName": "{{processDefnName}}", "processDefnVersion": "{{processDefnVersion}}", "uiUrl": "https://{{tenant}}.{{region}}.trustx.com/web/trustweb", "parameters": { "email": "myemail@daon.com", "_redirectUrl": "https://www.daon.com" }}Example: Multi-Use Time Limited Token
POST https://{{tenant}}.{{region}}.trustx.com/api/process-manager/processTokensContent-Type: application/jsonAuthorization: Bearer {{token}}{ "name": "testToken", "type": "MULTI_USE_TIME_LIMITED", "status": "ACTIVE", "uiUrl": "https://skyprodqc.oak.trustx.com/web/trustweb", "processDefnName": "testprocessforniall", "processDefnVersion": 6, "notAfterDtm": "2023-12-07T15:45:25.000Z", "notBeforeDtm": "2023-09-22T13:45:25.971Z", "parameters": { "firstName": "firstName", "lastName": "lastName" }}Example: Unlimited Token
POST https://{{tenant}}.{{region}}.trustx.com/api/process-manager/processTokensContent-Type: application/jsonAuthorization: Bearer {{token}}{ "name": "unlimitedToken", "type": "UNLIMITED", "status": "ACTIVE", "uiUrl": "https://skyprodqc.oak.trustx.com/web/trustweb", "processDefnName": "testprocessforniall", "processDefnVersion": 6, "parameters": { "firstName": "firstName", "lastName": "lastName", "email": "test@daon.com", "_redirectUrl": "https://www.daon.com" }}