Download OpenAPI specification Download Postman collection
The REST API lets you access the data with HTTP requests; it is useful when implementing rich web forms / pages for a good user experience.
An open source java client is implemented above the HTTP API. It is available on Maven central.
If your application is using a technology other than Java, you can integrate it with the Bonita solution using the Web REST API. This API provides access to all Bonita objects (like processes, tasks, users, connectors etc.), to execute operations on them (create, retrieve, update, delete). You can use these operations to create a workflow with Bonita and integrate it into your application. The Bonita Engine remains responsible for executing the workflow logic (connectors, gateways with conditions, messages, timers etc.) while your application gives access to the workflow. Users can manage processes and tasks, and perform administrative activities.
You can create Rest API Extensions to extend the Rest API by adding missing resources (not provided by the Rest API). It is possible for an extension to interact with the engine (via the API) or with any other external service (for example a database, a directory, or a web service).
Request URL | http://.../API/{API_name}/{resource_name}/ |
---|---|
Request Method | POST |
Request Payload | an item in JSON |
Response | the same item in JSON, containing the values provided in the posted item, completed with default values and identifiers provided by Bonita Engine. |
Request URL | http://.../API/{API_name}/{resource_name}/{id} |
---|---|
Request Method | GET |
Response | an item in JSON |
Example http://.../API/identity/user/5
On some resources, in GET methods the d
(deploy) URL query parameter can be used to extend the response objects. The value of this parameter consists of an attribute for which you want to make an extended request (called a deploy) and retrieve attributes of a linked resource.
This means that instead of retrieving the ID or a parent or referenced resource, you can retrieve the full object.
For example, when you retrieve a task, you can also retrieve the process definition attributes in addition to the process definition ID that is already part of the task resource. The supported deploy values for a task include its process (d=processId).
Specifiy multiple d
parameter to extend several resources. For instance, to retrieve the flow node of id 143 and the associated process, process instance and assigned user, call /API/bpm/flowNode/143?d=processId&d=caseId&d=assigned_id
The order of the identifier parts for each resource type is given in the table above.
Request URL | http://.../API/{API_name}/{resource_name}/{id_part1}/{id_part2} |
---|---|
Request Method | GET |
Response | an item in JSON |
Example http://.../API/identity/membership/5/12/24
Request URL | http://.../API/{API_name}/{resource_name}/{id} |
---|---|
Request Method | PUT |
Request Payload | a map in JSON containing the new values for the attributes you want to change. |
Response | the corresponding item in JSON with new values where you requested a modification |
Example http://.../API/identity/user/5
Response: the corresponding item in JSON with new values where you requested a modification.
Request URL | http://.../API/{API_name}/{resource_name}/{id_part1}/{id_part2} |
---|---|
Request Method | PUT |
Request Payload | a map in JSON containing the new values for the attributes you want to change |
Response | the corresponding item in JSON with new values where you requested a modification |
Example
http://.../API/identity/membership/5/12/24
Use the DELETE request to remove multiple resources.
Request URL | http://.../API/{API_name}/{resource_name}/ |
---|---|
Request Method | DELETE |
Request Payload | A list of identifiers in JSON, for example ["id1","id2","id3"] . Compound identifiers are separated by '/' characters. |
Response | empty |
Example
http://.../API/identity/membership/
The required object is specified with a set of filters in the request URL. The URL parameters must be URL-encoded.
Results are returned in a paged list, so you have to specify the page (counting from zero), and the number of results per page (count), additionally you can define a sort key (order). You can see the total number of matching results in the HTTP response header Content-Range. If you are searching for business data using a custom query, there must be a count query in the BDM. If there is no count query, results from a custom query on business data cannot be paged properly (the header Content-Range will be absent). For business data default queries, the count query is defined automatically.
The available filters are the attributes of the item plus some specific filters defined by each item.
Request URL | http://.../API/{API_name}/{resource_name}?p={page}&c={count}&o={order}&s={query}&f={filter_name}={filter_value}&f=... |
---|---|
Request Method | GET |
Response | an array of items in JSON |
Example
/API/identity/user?p=0&c=10&o=firstname&s=test&f=manager_id=3
For a GET method that retrieves more than one instance of a resource, you can specify the following request parameters:
attributeName ASC
or attributeName DESC
. The final order parameter value must be URL encoded.attributeName=attributeValue
. To filter on more than one attribute, specify an f parameters for each attribute. The final filter parameter value must be URL encoded.
The attributes you can filter on are specific to the resource.s=Valid
returned matches containing the string "valid" at the start of any word in the attribute value word,
such as "Valid address", "Not a valid address", and "Validated request" but not "Invalid request".
If word-based search was disabled, s=Valid
returned matches containing the string "valid" at the start of the attribute value, such as "Valid address" or "Validated request" but not "Not a valid address" or "Invalid request".
Since Bonita 2024.1, the search mode can no longer be configured and a "like-based" algorithm is used. This means all the matching records for which the search term occurs anywhere in a phrase or a word are returned.The API uses standard HTTP status codes to indicate the success or failure of the API call.
If you get a 401
response code :
X-Bonita-API-Token
header is includedX-Bonita-API-Token
header.A call to the /loginservice
will generates a set-cookie header in the response.
The JSESSIONID
cookie must be transfered with each subsequent calls. (If the REST API is used in an application running in a web browser, this is handled automatically by the web browser just like any cookies).
Additional protection agains CSRF attacks is enabled by default for all fresh installations This security relies on X-Bonita-API-Token
information.
The X-Bonita-API-Token
value can be found in the cookie named: X-Bonita-API-Token
.
All the subsequence REST API calls performing changes in the system using DELETE, POST, or PUT HTTP methods must contain the HTTP header below:
X-Bonita-API-Token: example-dummy-not-be-used-value
username required | string the username |
password required | string <password> the password |
tenant | string the user tenant |
redirect | string Default: "false" "true" or "false". "false" indicates that the service should not redirect to Bonita Portal (after a successful login) or to the login page (after a login failure). |
redirectURL | string or null Default: "" the URL of the page to be displayed after login |
# Generate cookie file curl -v -c saved_cookies.txt \ --url 'http://localhost:8080/bonita/loginservice' \ --header 'Content-Type: application/x-www-form-urlencoded' --data-urlencode 'username=install' \ --data-urlencode 'password=install' \ --data-urlencode 'redirect=false' \ --data-urlencode 'redirectURL=' # Reuse the cookie file and set the `X-Bonita-API-Token` header curl -b saved_cookies.txt -X GET \ -- header 'X-Bonita-API-Token: <token>' \ --url 'http://localhost:8080/bonita/API/bpm/process?c=100&p=0'
{- "message": "Bad request"
}
Logout the current user from the system
redirect | string <= 5 characters ^(?:tru|fals)e$ Example: redirect=false Setting the redirect parameter to false indicates that the service should not redirect to the login page after logging out. |
curl -b saved_cookies.txt -X GET --url 'http://localhost:8080/bonita/logoutservice?redirect=false'
{- "message": "Bad request"
}
The username and password are in bonita-platform-community-custom.properties
file.
username | string the username |
password | string <password> the password |
redirect | string "true" or "false". "false" indicates that the service should not redirect to Bonita Portal (after a successful login) or to the login page (after a login failure). |
username=install&password=install&redirect=false
{- "message": "Bad request"
}
Manage applications. This enables you to build a consistent functional applicative environment for users to interact with business processes and business data from one place.
Finds living applications with pagination params and filters
id
,creationDate
, createdBy
, profileId
, token
, displayName
, updatedBy
, lastUpdateDate
, version
, link
token
, displayName
, version
, link
token
, displayName
, version
, link
, profileId
, creationDate
, createdBy
, updatedBy
, lastUpdateDate
, userId
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "306",
- "link": "true",
- "creationDate": "1411548289900",
- "icon": "",
- "createdBy"": "1",
- "profileId": "2",
- "description": "My application link description",
- "token": "myadvapp",
- "state": "ACTIVATED",
- "displayName": "My app link",
- "updatedBy": "1",
- "visibility": "ALL",
- "editable": "true",
- "lastUpdateDate": "1411548289900",
- "version": "1.0"
}, - {
- "id": "305",
- "link": "false",
- "creationDate": "1411548289900",
- "icon": "",
- "createdBy"": "1",
- "profileId": "2",
- "description": "My application description",
- "token": "myapp",
- "state": "DEACTIVATED",
- "displayName": "My app",
- "updatedBy": "1",
- "visibility": "ALL",
- "editable": "true",
- "lastUpdateDate": "1411548289900",
- "version": "1.0",
- "homePageId": "26",
- "themeId": "1",
- "layoutId": "3"
}
]
Create a living application (legacy application or application link).
Warning: as of 9.0.0, creating a living application using this API is deprecated.
Partial living application description
link | boolean Default: "false" Enum: true false true for an application link, false for a legacy application |
description | string description of the application |
displayName | string display name of the application |
profileId | string profile authorized to access this application |
token | string token of the application used to build the application URL |
version | string version of the application |
{- "link": "false",
- "version": "1.0",
- "profileId": "2",
- "token": "myapp",
- "displayName": "My app",
- "description": "My application description"
}
{- "id": "306",
- "link": "true",
- "creationDate": "1411548289900",
- "icon": "",
- "createdBy"": "1",
- "profileId": "2",
- "description": "My application link description",
- "token": "myadvapp",
- "state": "ACTIVATED",
- "displayName": "My app link",
- "updatedBy": "1",
- "visibility": "ALL",
- "editable": "true",
- "lastUpdateDate": "1411548289900",
- "version": "1.0"
}
Returns a single application for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of application to return |
{- "id": "306",
- "link": "true",
- "creationDate": "1411548289900",
- "icon": "",
- "createdBy"": "1",
- "profileId": "2",
- "description": "My application link description",
- "token": "myadvapp",
- "state": "ACTIVATED",
- "displayName": "My app link",
- "updatedBy": "1",
- "visibility": "ALL",
- "editable": "true",
- "lastUpdateDate": "1411548289900",
- "version": "1.0"
}
Delete a single application for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of application to delete |
{- "message": "Bad request"
}
Update a single application for the given ID (legacy application or application link).
Warning: as of 9.0.0, updating a living application using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of application to return |
Partial living application description
description | string description of the application |
displayName | string display name of the application |
profileId | string profile authorized to access this application |
token | string token of the application used to build the application URL |
version | string version of the application |
themeId | string theme id for the application |
layoutId | string layout id for the application |
{- "version": "1.0",
- "profileId": "2",
- "token": "myapp",
- "displayName": "My app",
- "description": "My application description",
- "themeId": "2",
- "layoutId": "17"
}
{- "id": "306",
- "link": "true",
- "creationDate": "1411548289900",
- "icon": "",
- "createdBy"": "1",
- "profileId": "2",
- "description": "My application link description",
- "token": "myadvapp",
- "state": "ACTIVATED",
- "displayName": "My app link",
- "updatedBy": "1",
- "visibility": "ALL",
- "editable": "true",
- "lastUpdateDate": "1411548289900",
- "version": "1.0"
}
Import a single application
Warning: as of 9.0.0, importing a living application using this service is deprecated.
applicationsDataUpload | string Uploaded file |
importPolicy | string Import policy |
{- "message": "Bad request"
}
Upload application
Warning: as of 9.0.0, uploading a living application using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
Upload an application configuration file in the bconf
format.
Warning: as of 9.0.0, uploading an application configuration file using this API is deprecated.
configuration required | string <binary> |
{- "message": "Bad request"
}
Manage the set of menus in an application. This set of menus enables a user to navigate to the application pages.
There are two types of menu item:
A top-level item appears in the navigation bar of the application. A top-level item can be clickable, leading to a page, or can be a parent for a menu of clickable items. A child menu item becomes visible in a menu when the parent is selected. A child menu item is clickable and leads to a page. Each menu item has an index that defines the position in the menu. For a top-level menu item, this is the position in the the navigation bar counting from the left. For a child menu item, this is the position in the menu counting from the top.
Returns application menus with pagination params and filters
id
, displayName
, applicationId
, applicationPageId
, menuIndex
, parentMenuId
displayName
id
, displayName
, applicationId
, applicationPageId
, menuIndex
, parentMenuId
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "8",
- "applicationId": "1",
- "applicationPageId": "5",
- "menuIndex": "1",
- "parentMenuId": "-1",
- "displayName": "menuLabel"
}
]
Create an application menu item
Warning: as of 9.0.0, creating an application menu item using this API is deprecated.
A partial representation of an application menu in JSON
displayName | string display name of the application menu |
applicationPageId | string the application menu page ID |
menuIndex | string the application menu index |
parentMenuId | string the application parent menu ID |
{- "displayName": "My updated label"
}
{- "id": "8",
- "applicationId": "1",
- "applicationPageId": "5",
- "menuIndex": "1",
- "parentMenuId": "-1",
- "displayName": "menuLabel"
}
Returns a single application menu for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of application menu to return |
{- "id": "9823",
- "displayName": "menuLabel",
- "applicationId": "1",
- "applicationPageId": "5",
- "menuIndex": "1",
- "parentMenuId": "-1"
}
Delete a single application menu for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the application menu to delete |
{- "message": "Bad request"
}
Update an application menu for the given ID
Warning: as of 9.0.0, updating an application menu item using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the application menu to return |
Partial application menu description
parentMenuId | string id of the parent menu of this menu item, or -1 for a top-level item |
applicationPageId | string id of the application page targeted by this menu item, or -1 if there is no targeted page (that is, the item is a parent menu) |
applicationId | string id of the application related to this menu item |
menuIndex | string index of the menu item |
displayName | string label to display for this menu in the application navigation bar or menu |
{- "displayName": "menuLabel",
- "applicationId": "1",
- "applicationPageId": "5",
- "menuIndex": "1",
- "parentMenuId": "-1"
}
{- "message": "Bad request"
}
An application page is a custom page that has been associated with an application. Use this resource to manage application pages and define the paths used to access them. This list of pages will be used to build the application menus.
Finds application pages with pagination params and filters
id
, token
, applicationId
, pageId
token
id
, token
, applicationId
, pageId
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "9876",
- "token": "myPage",
- "applicationId": "1234",
- "pageId": "5678"
}
]
Create an application page
Warning: as of 9.0.0, creating an application page using this API is deprecated.
Partial application page description
token | string token use to access the page using a URL : ../appName/pageToken/ |
applicationId | string id of the application related to this page |
pageId | string id of the custom page to display |
{- "token": "myPage",
- "applicationId": "1234",
- "pageId": "5678"
}
{- "id": "9876",
- "token": "myPage",
- "applicationId": "1234",
- "pageId": "5678"
}
Returns a single application page for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of application page to return |
{- "id": "9876",
- "token": "myPage",
- "applicationId": "1234",
- "pageId": "5678"
}
Delete a single application page for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of application page to delete |
{- "message": "Bad request"
}
Finds FormMappings with pagination params and filters
processDefinitionId
,type
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": 5,
- "processDefinitionId": 7281286536417002000,
- "type": "TASK",
- "target": "URL",
- "task": "Validate Feedback",
- "pageId": null,
- "pageMappingKey": "taskInstance/myProcess/1.0/Validate Feedback",
- "lastUpdatedBy": 4,
- "lastUpdateDate": 1425295012666,
}
]
Update the FormMapping for the given ID
Warning: as of 9.0.0, updating a Form Mapping using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the FormMapping to return |
Representation of the form mapping attribute to update - {'pageId': (long)} or {'url': (string)} or {} to set the mapping type to NONE
pageId | string pageId of the FormMapping |
url | string url of the FormMapping |
{- "pageId": "123",
}
{- "message": "Bad request"
}
Show status or install or update the Business Data Model.
Installing or updating a BDM on your tenant needs to be done in two successive steps:
To do this, your tenant services need to be paused.
In Enterprise editions, if you have an access control file installed on your tenant, you need to delete it before installing or updating your BDM.
Finds business data specified by their identifiers.
businessDataType required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: com.company.model.Employee Business Data Type |
ids required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: ids=1,3,56 list of persistenceIds (comma separated) |
[- {
- "persistenceId_string": "1",
- "persistenceVersion_string": "0",
- "contractName": "contract for Netcom3",
- "terms": [
- {
- "persistenceId": 1,
- "persistenceId_string": "1",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "termName": "term Name"
}, - {
- "persistenceId": 2,
- "persistenceId_string": "2",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "termName": "term Name"
}
], - "client": {
- "persistenceId": 13,
- "persistenceId_string": "13",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "clientName": "client name",
- "description": "n/a",
- "industry": [
- {
- "persistenceId": 2,
- "persistenceId_string": "2",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "industryName": "Services"
}, - {
- "persistenceId": 3,
- "persistenceId_string": "3",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "industryName": "Software"
}
]
}
}
]
Finds business data specified by its identifier.
businessDataType required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: com.company.model.Employee Business Data Type |
persistenceId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: 1 Business data ID |
{- "persistenceId_string": "1",
- "persistenceVersion_string": "0",
- "contractName": "contract for Netcom3",
- "terms": [
- {
- "persistenceId": 1,
- "persistenceId_string": "1",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "termName": "term Name"
}, - {
- "persistenceId": 2,
- "persistenceId_string": "2",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "termName": "term Name"
}
], - "client": {
- "persistenceId": 13,
- "persistenceId_string": "13",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "clientName": "client name",
- "description": "n/a",
- "industry": [
- {
- "persistenceId": 2,
- "persistenceId_string": "2",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "industryName": "Services"
}, - {
- "persistenceId": 3,
- "persistenceId_string": "3",
- "persistenceVersion": 0,
- "persistenceVersion_string": "0",
- "industryName": "Software"
}
]
}
}
Gets the business data attribute of business data according to its identifier and attribute name. Request url.
businessDataType required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: com.company.model.Employee Business Data Type |
persistenceId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: 1 Business data ID |
attributeName required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: company Business data attribute name |
{- "persistenceId_string": "1",
- "persistenceVersion_string": "0",
- "company": "The Big Company"
}
Upload file.
NOTE: If this file is a BDM zip, to do this, your tenant services need to be paused. In Enterprise editions, if you have an access control file installed on your tenant, you need to delete it before installing or updating your BDM.
file | string <binary> |
{- "message": "Bad request"
}
Returns the current BDM. Make this call to get the status the BDM.
{- "id": "309",
- "name": "client_bdm.zip",
- "type": "BDM",
- "state": "INSTALLED",
- "lastUpdatedBy": -1,
- "lastUpdateDate": "2018-01-17T17:05:36.671Z"
}
Install a BDM
Warning: as of 9.0.0, importing a BDM using this API is deprecated.
fileUpload | string the temporary file name once uploaded on the server |
{- "fileUpload": "tmp_uploaded_bdm.zip"
}
{- "message": "Bad request"
}
Finds Business Data with pagination params and filters by calling a Named Query
.
The business data query REST API resource is used to call a default or custom business data query. It is available from version 6.5.
Data parameters:
true
or false
.By default, for a Date parameter can use the following formats:
businessDataType required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: com.company.model.Employee Business Data Type |
q required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Example: q=searchEmployeeByFirstNameAndLastName Named query to use |
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
[- { }
]
BDM Access control is available to protect the tenant BDM. You can use this API to get the access control status (lastUpdatedBy, lastUpdateDate...).
Get the BDM access control status.
{- "id": 4090,
- "name": "bdm_access_control.xml",
- "type": "BDM_ACCESS_CONTROL",
- "state": "INSTALLED",
- "lastUpdatedBy": 4,
- "lastUpdateDate": "2018-01-17T17:05:36.671Z"
}
Upload BDM Access Control
Warning: as of 9.0.0, uploading a BDM Access Control using the portal is deprecated.
file | string <binary> |
tmp_accessControlFileToUpload.xml
Import a BDM Access Control
Warning: as of 9.0.0, importing a BDM Access Control using this service is deprecated.
bdmAccessControlUpload | string The temporary name of the previously uploaded file to install |
bdmAccessControlUpload=tmp_accessControlFileToUpload.xml
{- "message": "Bad request"
}
Finds Activities with pagination params and filters. Activities in states completed, cancelled, or aborted are not retrieved. The search returns an array of activities.
name
, displayName
, state
, processDefinitionId
, parentProcessInstanceId
, parentActivityInstanceId
(order by parent activity id), rootProcessInstanceId
, lastUpdateDate
name
, displayName
, state
, processDefinitionId
, parentProcessInstanceId
, parentActivityInstanceId
(order by parent activity id), rootProcessInstanceId
, lastUpdateDate
name
, state
, processId
, parentProcessInstanceId
, rootProcessInstanceId
, last_update_date
, supervisor_id
(only in Enterprise editions)p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "displayDescription": "validate expense request",
- "executedBySubstitute": "0",
- "caseId": "76539",
- "parentCaseId": "68743",
- "rootCaseId": "65879",
- "processId": "7012",
- "rootContainerId": "7000",
- "state": "completed",
- "type": "the activity type as a string",
- "assigned_id": "304",
- "assigned_date": "2014-10-17 16:05:42.626",
- "id": "809764",
- "executedBy": "0",
- "priority": "the priority of the current activity as a string",
- "actorId": "50",
- "description": "In this step a manager reviews and validates an expense request.",
- "name": "Validate",
- "reached_state_date": "2014-10-18 10:37:05.643",
- "displayName": "Validate expense request",
- "dueDate": "2014-10-21 16:05:42.626",
- "last_update_date": "2014-10-18 10:37:05.643"
}
]
Returns the single Activity for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Activity to return |
{- "displayDescription": "validate expense request",
- "executedBySubstitute": "0",
- "caseId": "76539",
- "parentCaseId": "68743",
- "rootCaseId": "65879",
- "processId": "7012",
- "rootContainerId": "7000",
- "state": "completed",
- "type": "the activity type as a string",
- "assigned_id": "304",
- "assigned_date": "2014-10-17 16:05:42.626",
- "id": "809764",
- "executedBy": "0",
- "priority": "the priority of the current activity as a string",
- "actorId": "50",
- "description": "In this step a manager reviews and validates an expense request.",
- "name": "Validate",
- "reached_state_date": "2014-10-18 10:37:05.643",
- "displayName": "Validate expense request",
- "dueDate": "2014-10-21 16:05:42.626",
- "last_update_date": "2014-10-18 10:37:05.643"
}
Update the Activity for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Activity to return |
Partial Activity description
variables | string Activity variables to update. Note: if there is no data with the specified name in the activity, the update will be applied to the process data if a variable with the specified name exists. Note: if the task definition includes a connector that is executed on finish and updates the value of a variable, the value set by the REST API call is overwritten. |
state | string The target state of the activity
|
{- "variables": "[{\"name\":\"foo\",\"value\":\"bar\"}]",
- "state": "completed"
}
{- "message": "Bad request"
}
Finds Archived Activities with pagination params and filters. Activities in states completed, cancelled, or aborted are not retrieved. The search returns an array of activities.
Can order on:
name
: the name of this activitydisplayName
: the display name of this activitystate
: the current state of the activitytype
: the activity typeisTerminal
: say whether or not the activity is in a terminal stateprocessId
: the process this activity is associated tocaseId
: the process instance initiator this activity is associated toreached_state_date
: the date when this activity arrived in this stateCan filter on:
supervisor_id
: retrieve the information the process manager associated to this id has access to (only in Enterprise editions)p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "string",
- "type": "AUTOMATIC_TASK",
- "name": "string",
- "displayName": "string",
- "description": "string",
- "displayDescription": "string",
- "state": "failed",
- "reached_state_date": "string",
- "last_update_date": "string",
- "dueDate": "string",
- "priority": "highest",
- "processId": "string",
- "parentCaseId": "string",
- "rootCaseId": "string",
- "rootContainerId": "string",
- "executedBy": "string",
- "executedBySubstitute": "string",
- "actorId": "string",
- "assigned_id": "string",
- "assigned_date": "string",
- "sourceObjectId": "string",
- "archivedDate": "string"
}
]
Returns the single Archived Activity for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Archived Activity to return |
{- "id": "string",
- "type": "AUTOMATIC_TASK",
- "name": "string",
- "displayName": "string",
- "description": "string",
- "displayDescription": "string",
- "state": "failed",
- "reached_state_date": "string",
- "last_update_date": "string",
- "dueDate": "string",
- "priority": "highest",
- "processId": "string",
- "parentCaseId": "string",
- "rootCaseId": "string",
- "rootContainerId": "string",
- "executedBy": "string",
- "executedBySubstitute": "string",
- "actorId": "string",
- "assigned_id": "string",
- "assigned_date": "string",
- "sourceObjectId": "string",
- "archivedDate": "string"
}
Finds HumanTasks with pagination params and filters
name
, priority
, dueDate
, state
, processDefinitionId
, processInstanceId
, parentActivityInstanceId
, assigneeId
, parentContainerId
, displayName
, reachedStateDate
assigned_id
, user_id
, show_assigned_to_others
(since 2022.2), state
, name
, displayName
, processDefinitionId
, caseId
, rootProcessInstanceId
, parentProcessInstanceId
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "displayDescription": null,
- "executedBySubstitute": 0,
- "processId": 5826139717723008000,
- "parentCaseId": 1,
- "state": "ready",
- "rootContainerId": 1002,
- "type": "USER_TASK",
- "assigned_id": null,
- "assigned_date": null,
- "id": 20004,
- "executedBy": 0,
- "caseId": 1002,
- "priority": "normal",
- "actorId": 102,
- "description": null,
- "name": "Analyse case",
- "reached_state_date": "2014-09-05 11:11:30.808",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-05 11:11:30.808"
}
]
Returns the single HumanTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the HumanTask to return |
{- "displayDescription": null,
- "executedBySubstitute": 0,
- "processId": 5826139717723008000,
- "parentCaseId": 1,
- "state": "ready",
- "rootContainerId": 1002,
- "type": "USER_TASK",
- "assigned_id": null,
- "assigned_date": null,
- "id": 20004,
- "executedBy": 0,
- "caseId": 1002,
- "priority": "normal",
- "actorId": 102,
- "description": null,
- "name": "Analyse case",
- "reached_state_date": "2014-09-05 11:11:30.808",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-05 11:11:30.808"
}
Update the HumanTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the HumanTask to return |
Fields that can be updated are assignedId
and state
. Specify only those fields that you want to change.
assigned_id | string The id of the user to assign this Human task to |
state | string state of the HumanTask |
{- "assigned_id": "1234",
- "state": "new_state"
}
{- "message": "Bad request"
}
Finds ManualTasks with pagination params and filters
You can filter on:
assigned_id={user_id}
: retrieve only the manual tasks assigned to the specified user. For example, retrieve the manual tasks assigned to user with id 1: /API/bpm/manualTask?p=0&c=10&f=assigned_id%3d1
.state=skipped | ready | completed | failed
: retrieve only the manual tasks with the specified state. For example, retrieve the ready tasks: /API/bpm/manualTask?p=0&c=10&f=state%3dready
.caseId={case_id}
: retrieve only the manual tasks created in the specified process instances. For example, retrieve the manual tasks for the case_id 2: /API/bpm/manualTask?p=0&c=10&f=caseId%3d2
.parentTaskId={parentTask_id}
: retrieve only the manual tasks for a specific parentTask. For example, retrieve the manual tasks for the parentTask_id 40001: /API/bpm/manualTask?p=0&c=10&f=parentTaskId%3d40001
.You can search on:
/API/bpm/manualTask?p=0&c=10&s=MySubTask
.p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "displayDescription": "This is my subtask",
- "executedBySubstitute": 1,
- "processId": 8367255255370238000,
- "parentCaseId": 1,
- "state": "ready",
- "rootContainerId": 1,
- "type": "MANUAL_TASK",
- "assigned_id": 1,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 40006,
- "executedBy": 1,
- "caseId": 1,
- "priority": "above_normal",
- "actorId": 1,
- "description": "This is my subtask",
- "name": "My subtask",
- "reached_state_date": "2014-12-01 17:39:53.784",
- "rootCaseId": 1,
- "displayName": "My subtask",
- "parentTaskId": 40001,
- "dueDate": "2014-12-25 00:00:00.000",
- "last_update_date": "2014-12-01 17:39:53.784"
}
]
Create the ManualTask. Use a POST method to create a new subtask. A subtask is attached to a parent task and it needs to be immediately assigned to a user.
Partial ManualTask description
parentTaskId | string The parent task ID |
state | string The task state |
name | string The task name |
description | string The task description |
priority | string The task priority |
dueDate | string The task due date |
assigned_id | string The id of the user assigned to the task |
{- "parentTaskId": "40001",
- "state": "ready",
- "name": "My subtask",
- "description": "This is my subtask",
- "priority": "above_normal",
- "dueDate": "2014-12-25 00:00:00.000",
- "assigned_id": "1"
}
{- "displayDescription": "This is my subtask",
- "executedBySubstitute": 1,
- "processId": 8367255255370238000,
- "parentCaseId": 1,
- "state": "ready",
- "rootContainerId": 1,
- "type": "MANUAL_TASK",
- "assigned_id": 1,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 40006,
- "executedBy": 1,
- "caseId": 1,
- "priority": "above_normal",
- "actorId": 1,
- "description": "This is my subtask",
- "name": "My subtask",
- "reached_state_date": "2014-12-01 17:39:53.784",
- "rootCaseId": 1,
- "displayName": "My subtask",
- "parentTaskId": 40001,
- "dueDate": "2014-12-25 00:00:00.000",
- "last_update_date": "2014-12-01 17:39:53.784"
}
Returns the single ManualTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ManualTask to return |
{- "displayDescription": "This is my subtask",
- "executedBySubstitute": 1,
- "processId": 8367255255370238000,
- "parentCaseId": 1,
- "state": "ready",
- "rootContainerId": 1,
- "type": "MANUAL_TASK",
- "assigned_id": 1,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 40006,
- "executedBy": 1,
- "caseId": 1,
- "priority": "above_normal",
- "actorId": 1,
- "description": "This is my subtask",
- "name": "My subtask",
- "reached_state_date": "2014-12-01 17:39:53.784",
- "rootCaseId": 1,
- "displayName": "My subtask",
- "parentTaskId": 40001,
- "dueDate": "2014-12-25 00:00:00.000",
- "last_update_date": "2014-12-01 17:39:53.784"
}
Update the ManualTask for the given ID. Use a PUT method to execute a subtask. Executing a subtask basically means changing its state to completed and providing an executedBy value.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ManualTask to return |
Partial ManualTask description
state | string State of the ManualTask (completed) |
executedBy | string Id of the task executor |
{- "state": "completed",
- "executedBy": "1"
}
{- "message": "Bad request"
}
Finds Tasks with pagination params and filters
caseId
, processId
, state
, type
, supervisor_id
, last_update_date
caseId
, processId
, state
, type
, supervisor_id
, last_update_date
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "displayDescription": null,
- "executedBySubstitute": 0,
- "processId": 9132099022957911000,
- "parentCaseId": 5,
- "state": "ready",
- "rootContainerId": 5,
- "type": "USER_TASK",
- "assigned_id": 4,
- "assigned_date": "2014-12-01 16:22:54.685",
- "id": 10,
- "executedBy": 0,
- "caseId": 5,
- "priority": "normal",
- "actorId": 6,
- "description": null,
- "name": "Step1",
- "reached_state_date": "2014-12-01 16:22:50.814",
- "rootCaseId": 5,
- "displayName": "Step1",
- "parentTaskId": 40001,
- "dueDate": "2014-12-01 17:22:50.809",
- "last_update_date": "2014-12-01 16:22:50.814"
}
]
Returns the single Task for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Task to return |
{- "displayDescription": null,
- "executedBySubstitute": 0,
- "processId": 9132099022957911000,
- "parentCaseId": 5,
- "state": "ready",
- "rootContainerId": 5,
- "type": "USER_TASK",
- "assigned_id": 4,
- "assigned_date": "2014-12-01 16:22:54.685",
- "id": 10,
- "executedBy": 0,
- "caseId": 5,
- "priority": "normal",
- "actorId": 6,
- "description": null,
- "name": "Step1",
- "reached_state_date": "2014-12-01 16:22:50.814",
- "rootCaseId": 5,
- "displayName": "Step1",
- "parentTaskId": 40001,
- "dueDate": "2014-12-01 17:22:50.809",
- "last_update_date": "2014-12-01 16:22:50.814"
}
Update the Task for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Task to return |
Task fields to update (forbidden fields are : caseId
, processId
, name
, executedBy
, type
, id
, reached_state_date
, last_update_date
)
state | string state of the Task (completed) |
displayName | string display name of the Task |
property name* additional property | any |
{- "state": "completed"
}
{- "message": "Bad request"
}
Finds UserTasks with pagination params and filters
id
displayName
displayName
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "displayDescription": "",
- "executedBySubstitute": 0,
- "processId": 5826139717723008000,
- "parentCaseId": 1,
- "state": "ready",
- "rootContainerId": 1002,
- "type": "USER_TASK",
- "assigned_id": null,
- "assigned_date": "",
- "id": 20004,
- "executedBy": 0,
- "caseId": 1002,
- "priority": "normal",
- "actorId": 102,
- "description": "",
- "name": "Analyse case",
- "reached_state_date": "2014-09-05 11:11:30.808",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-05 11:11:30.808"
}
]
Returns the single UserTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the UserTask to return |
{- "displayDescription": "",
- "executedBySubstitute": 0,
- "processId": 5826139717723008000,
- "parentCaseId": 1,
- "state": "ready",
- "rootContainerId": 1002,
- "type": "USER_TASK",
- "assigned_id": null,
- "assigned_date": "",
- "id": 20004,
- "executedBy": 0,
- "caseId": 1002,
- "priority": "normal",
- "actorId": 102,
- "description": "",
- "name": "Analyse case",
- "reached_state_date": "2014-09-05 11:11:30.808",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-05 11:11:30.808"
}
Update the UserTask for the given ID.
Fields that can be updated are assigned_id
and state
. The only value that can be set for the state is skipped
. You only need to specify the fields that are to be updated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the UserTask to return |
Partial UserTask description
state | string The UserTask state |
assigned_id | string The id of the user assign to the UserTask |
{- "assigned_id": "1",
- "state": "skipped"
}
{- "message": "Bad request"
}
Returns the Contract for the given UserTask ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the UserTask that has the Contract to return |
{- "constraints": [
- {
- "name": "string",
- "expression": "string",
- "explanation": "string",
- "inputNames": [
- "string"
]
}
], - "inputs": [
- {
- "description": "string",
- "name": "string",
- "multiple": "string",
- "type": "TEXT",
- "inputs": [
- { }
]
}
]
}
Execute the UserTask. In order to execute a task, the task contract values have to be provided.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the UserTask to execute |
assign | boolean if true, assign the task to the current user and execute the task |
A JSON object matching task contract. Execute a task providing correct contract values.
property name* additional property | any |
{- "ticket_comment": "this is a comment"
}
{- "message": "Bad request"
}
Returns the Context for the given UserTask ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the UserTask that has the Context to return |
{- "myBusinessData_ref": {
- "name": "myBusinessData",
- "type": "com.company.model.BusinessObject1",
- "link": "API/bdm/businessData/com.company.model.BusinessObject1/2",
- "storageId": 2,
- "storageId_string": "2"
}, - "myDocument_ref": {
- "id": 1,
- "processInstanceId": 3,
- "name": "myDocument",
- "author": 104,
- "creationDate": 1434723950847,
- "fileName": "TestCommunity-1.0.bos",
- "contentMimeType": null,
- "contentStorageId": "1",
- "url": "documentDownload?fileName=TestCommunity-1.0.bos&contentStorageId=1",
- "description": "",
- "version": "1",
- "index": -1,
- "contentFileName": "TestCommunity-1.0.bos"
}
}
Finds ArchivedHumanTasks with pagination params and filters
You can filter on:
assigned_id={user_id}
: retrieve only the human tasks assigned to the specified ID. For example, retrieve the human tasks assigned to user with id 2: /API/bpm/archivedHumanTask?p=0&c=10&f=assigned_id%3d2
state=
: retrieve only the archived user tasks with the specified state. For example, retrieve the skipped tasks: /API/bpm/archivedHumanTask?p=0&c=10&f=state=skipped
name=
: retrieve only the human tasks with the specified name. For example, retrieve the human tasks with the name "Analyse ProcessInstance": /API/bpm/archivedHumanTask?p=0&c=10&f=name=Analyse ProcessInstance
displayName=
: retrieve only the archived user tasks with the specified displayName. For example, retrieve the human tasks with the displayName "Analyse ProcessInstance": /API/bpm/archivedHumanTask?p=0&c=10&f=displayName=Analyse ProcessInstance
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "displayDescription": "",
- "executedBySubstitute": "0",
- "processId": "5826139717723008213",
- "parentCaseId": 1,
- "state": "skipped",
- "rootContainerId": "1002",
- "type": "USER_TASK",
- "assigned_id": "2",
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": "240002",
- "executedBy": "0",
- "caseId": "1002",
- "priority": "normal",
- "actorId": "102",
- "description": "",
- "name": "Analyse case",
- "reached_state_date": "2014-09-09 17:21:51.946",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-09 17:21:51.946",
- "sourceObjectId": "20004",
- "archivedDate": "2014-09-09 17:21:51.986"
}
]
Returns the single ArchivedHumanTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedHumanTask to return |
{- "displayDescription": "",
- "executedBySubstitute": "0",
- "processId": "5826139717723008213",
- "parentCaseId": 1,
- "state": "skipped",
- "rootContainerId": "1002",
- "type": "USER_TASK",
- "assigned_id": "2",
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": "240002",
- "executedBy": "0",
- "caseId": "1002",
- "priority": "normal",
- "actorId": "102",
- "description": "",
- "name": "Analyse case",
- "reached_state_date": "2014-09-09 17:21:51.946",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-09 17:21:51.946",
- "sourceObjectId": "20004",
- "archivedDate": "2014-09-09 17:21:51.986"
}
Finds ArchivedManualTasks with pagination params and filters
You can filter on:
assigned_id={user_id}
: retrieve only the human tasks assigned to the specified ID. For example, retrieve the human tasks assigned to user with id 2: /API/bpm/archivedHumanTask?p=0&c=10&f=assigned_id%3d2
state=
: retrieve only the archived user tasks with the specified state. For example, retrieve the skipped tasks: /API/bpm/archivedHumanTask?p=0&c=10&f=state=skipped
name=
: retrieve only the human tasks with the specified name. For example, retrieve the human tasks with the name "Analyse ProcessInstance": /API/bpm/archivedHumanTask?p=0&c=10&f=name=Analyse ProcessInstance
displayName=
: retrieve only the archived user tasks with the specified displayName. For example, retrieve the human tasks with the displayName "Analyse ProcessInstance": /API/bpm/archivedHumanTask?p=0&c=10&f=displayName=Analyse ProcessInstance
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "displayDescription": "this is a test",
- "executedBySubstitute": 1,
- "processId": 8367255255370238000,
- "parentCaseId": 1,
- "state": "completed",
- "rootContainerId": 1,
- "type": "MANUAL_TASK",
- "assigned_id": 1,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 160007,
- "executedBy": 1,
- "caseId": 1,
- "priority": "highest",
- "actorId": 1,
- "description": "this is a test",
- "name": "myTest",
- "reached_state_date": "2014-12-01 17:20:47.200",
- "rootCaseId": 1,
- "displayName": "myTest",
- "parentTaskId": 40001,
- "dueDate": "2014-12-17 00:00:00.000",
- "last_update_date": "2014-12-01 17:20:47.200",
- "sourceObjectId": 40003,
- "archivedDate": "2014-12-01 17:20:47.217"
}
]
Returns the single ArchivedManualTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedManualTask to return |
{- "displayDescription": "this is a test",
- "executedBySubstitute": 1,
- "processId": 8367255255370238000,
- "parentCaseId": 1,
- "state": "completed",
- "rootContainerId": 1,
- "type": "MANUAL_TASK",
- "assigned_id": 1,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 160007,
- "executedBy": 1,
- "caseId": 1,
- "priority": "highest",
- "actorId": 1,
- "description": "this is a test",
- "name": "myTest",
- "reached_state_date": "2014-12-01 17:20:47.200",
- "rootCaseId": 1,
- "displayName": "myTest",
- "parentTaskId": 40001,
- "dueDate": "2014-12-17 00:00:00.000",
- "last_update_date": "2014-12-01 17:20:47.200",
- "sourceObjectId": 40003,
- "archivedDate": "2014-12-01 17:20:47.217"
}
Finds ArchivedTasks with pagination params and filters
caseId
, name
, displayName
, processId
, state
, type
, archivedDate
, reached_state_date
, assigned_id
caseId
, name
, displayName
, processId
, state
, type
, archivedDate
, reached_state_date
, assigned_id
, isTerminal
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "displayDescription": null,
- "executedBySubstitute": 4,
- "processId": 9132099022957911000,
- "parentCaseId": 5,
- "state": "completed",
- "rootContainerId": 5,
- "type": "USER_TASK",
- "assigned_id": 4,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 9,
- "executedBy": 4,
- "caseId": 5,
- "priority": "normal",
- "actorId": 6,
- "description": null,
- "name": "Step1",
- "reached_state_date": "2014-12-01 16:24:32.457",
- "rootCaseId": 5,
- "displayName": "Step1",
- "parentTaskId": 40001,
- "dueDate": "2014-12-01 17:22:50.809",
- "last_update_date": "2014-12-01 16:24:32.457",
- "sourceObjectId": 10,
- "archivedDate": "2014-12-01 16:24:32.460"
}
]
Returns the single ArchivedTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedTask to return |
{- "displayDescription": null,
- "executedBySubstitute": 4,
- "processId": 9132099022957911000,
- "parentCaseId": 5,
- "state": "completed",
- "rootContainerId": 5,
- "type": "USER_TASK",
- "assigned_id": 4,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 9,
- "executedBy": 4,
- "caseId": 5,
- "priority": "normal",
- "actorId": 6,
- "description": null,
- "name": "Step1",
- "reached_state_date": "2014-12-01 16:24:32.457",
- "rootCaseId": 5,
- "displayName": "Step1",
- "parentTaskId": 40001,
- "dueDate": "2014-12-01 17:22:50.809",
- "last_update_date": "2014-12-01 16:24:32.457",
- "sourceObjectId": 10,
- "archivedDate": "2014-12-01 16:24:32.460"
}
Finds ArchivedUserTasks with pagination params and filters. An ArchivedUserTask is an executable task that has been performed by a user or skipped and is archived.
You can filter on:
assigned_id={user_id}
: retrieve only the user tasks assigned to the specified ID. For example, retrieve the user tasks assigned to user with id 2: /API/bpm/archivedUserTask?p=0&c=10&f=assigned_id%3d2
state=
: retrieve only the archived user tasks with the specified state. For example, retrieve the skipped tasks: /API/bpm/archivedUserTask?p=0&c=10&f=state=skipped
name=
: retrieve only the user tasks with the specified name. For example, retrieve the user tasks with the name "Analyse ProcessInstance": /API/bpm/archivedUserTask?p=0&c=10&f=name=Analyse ProcessInstance
displayName=
: retrieve only the archived user tasks with the specified displayName. For example, retrieve the user tasks with the displayName "Analyse ProcessInstance": /API/bpm/archivedUserTask?p=0&c=10&f=displayName=Analyse ProcessInstance
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "displayDescription": null,
- "executedBySubstitute": 0,
- "processId": 5826139717723008000,
- "parentCaseId": 1,
- "state": "skipped",
- "rootContainerId": 1002,
- "type": "USER_TASK",
- "assigned_id": 2,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 240002,
- "executedBy": 0,
- "caseId": 1002,
- "priority": "normal",
- "actorId": 102,
- "description": null,
- "name": "Analyse case",
- "reached_state_date": "2014-09-09 17:21:51.946",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-09 17:21:51.946",
- "sourceObjectId": "string",
- "archivedDate": "2014-09-09 17:21:51.986"
}
]
Returns the single ArchivedUserTask for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedUserTask to return |
{- "displayDescription": null,
- "executedBySubstitute": 0,
- "processId": 5826139717723008000,
- "parentCaseId": 1,
- "state": "skipped",
- "rootContainerId": 1002,
- "type": "USER_TASK",
- "assigned_id": 2,
- "assigned_date": "2014-12-01 17:39:53.784",
- "id": 240002,
- "executedBy": 0,
- "caseId": 1002,
- "priority": "normal",
- "actorId": 102,
- "description": null,
- "name": "Analyse case",
- "reached_state_date": "2014-09-09 17:21:51.946",
- "rootCaseId": 1,
- "displayName": "Analyse case",
- "parentTaskId": 40001,
- "dueDate": "2014-09-05 12:11:30.775",
- "last_update_date": "2014-09-09 17:21:51.946",
- "sourceObjectId": "string",
- "archivedDate": "2014-09-09 17:21:51.986"
}
Returns the single ActivityVariable for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The identifier of the activity from which to retrieve the variable |
variableName required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The name of the variable to retrieve |
{- "tenantId": 0,
- "tenantId_string": 0,
- "id": 5010,
- "id_string": 5010,
- "name": "RequestValidationData",
- "description": null,
- "transientData": false,
- "className": "java.lang.String",
- "containerId": 20004,
- "containerId_string": 20004,
- "containerType": "ACTIVITY_INSTANCE",
- "value": "Confirmed"
}
Since 2022.1
Returns the single ArchivedActivityVariable for the given activity ID and variable name
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The identifier of the activity from which to retrieve the variable |
variableName required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The name of the variable to retrieve |
{- "name": "RequestValidationData",
- "description": null,
- "type": "java.lang.String",
- "containerId": 20004,
- "containerType": "ACTIVITY_INSTANCE",
- "value": "Confirmed",
- "archivedDate": "2021-12-27 23:10:59.342",
- "sourceObjectId": 42
}
Finds ProcessInstance Variables with pagination params and filters
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "description": "",
- "name": "myInvoiceAmount",
- "value": "14.2",
- "case_id": 1,
- "type": "java.lang.Float"
}
]
Returns the single Variable for the given ProcessInstance ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The identifier of the process instance from which to retrieve the variable |
variableName required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The name of the variable to retrieve |
{- "description": "",
- "name": "myInvoiceAmount",
- "value": "14.2",
- "case_id": 1,
- "type": "java.lang.Float"
}
Update the variable for the given ProcessInstance ID.
Warning : only following types are supported for javaTypeclassname: java.lang.String
, java.lang.Integer
, java.lang.Double
, java.lang.Long
, java.lang.Boolean
, java.util.Date
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The identifier of the process instance from which to retrieve the variable |
variableName required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The name of the variable to retrieve |
Partial ProcessInstance variables description
type | string the java class name |
value | string the new value |
{- "type": "java.lang.String",
- "value": "My new value"
}
{- "message": "Bad request"
}
Since 2022.1
Finds ArchivedProcessInstance Variables with pagination params and filters
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f required | string <= 250 characters ^[A-Za-z0-9%\_\-\.]{0,250}$ Example: f=case_id%3d1001 Filter for the case id before it was archived (eg: case_id=10001 ) |
[- {
- "name": "RequestValidationData",
- "description": null,
- "type": "java.lang.String",
- "case_id": 20004,
- "value": "Confirmed",
- "archivedDate": "2021-12-27 23:10:59.342",
- "sourceObjectId": 42
}
]
Since 2022.1
Returns the single ArchivedProcessInstanceVariable for the given ProcessInstance ID and variable name
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The identifier of the process instance from which to retrieve the archived variable |
variableName required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ The name of the archived variable to retrieve |
{- "name": "RequestValidationData",
- "description": null,
- "type": "java.lang.String",
- "case_id": 20004,
- "value": "Confirmed",
- "archivedDate": "2021-12-27 23:10:59.342",
- "sourceObjectId": 42
}
Finds ProcessInstanceDocuments with pagination params and filters
It is possible to filter on three parameters: submittedBy
, name
and description
.
submittedBy="id"
: search for documents that were submitted by the user with the specified identifier.name="string"
: search for documents with names that contain string.
Depending on the setting for word-based search, the search returns documents with string at the start of the name or the start of a word in the name.description="string"
: search for documents with descriptions that contain string.
Depending on the setting for word-based search, the search returns documents with string at the start of the description or the start of a word in the description.p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": "3",
- "creationDate": "2014-10-09 16:45:36.658",
- "author": "1",
- "index": "-1",
- "contentMimetype": "application/octet-stream",
- "caseId": "1",
- "contentStorageId": "4",
- "isInternal": "true",
- "description": "draft",
- "name": "Doc 1",
- "fileName": "document_1.jpg",
- "submittedBy": "1",
- "url": "documentDownload?fileName=document_1.jpg&contentStorageId=4",
- "version": "1"
}
]
Create the ProcessInstanceDocument.
Use a POST method to add a document to a process instances. You can upload a document from the local file system or by URL. Specify the process instance id and the document name in the payload. The document description is optional: if you do not specify a description, the description in the response is empty. The response contains a version, which is managed automatically. You cannot currently retrieve a specific version of a document, only the most recent version. To retrieve earlier versions of a ProcessInstanceDocument, use the archivedProcessInstanceDocument resource.
Partial ProcessInstanceDocument description
caseId | string The process instance id |
file | string The local file name to upload from (as from the temp upload folder) |
url | string The remote url to upload from |
name | string The file display name |
fileName | string The target file name |
description | string The document description |
{- "caseId": "1",
- "file": "doc.jpg",
- "name": "Doc 1",
- "fileName": "document_1.jpg",
- "description": "draft"
}
{- "id": "3",
- "creationDate": "2014-10-09 16:45:36.658",
- "author": "1",
- "index": "-1",
- "contentMimetype": "application/octet-stream",
- "caseId": "1",
- "contentStorageId": "4",
- "isInternal": "true",
- "description": "draft",
- "name": "Doc 1",
- "fileName": "document_1.jpg",
- "submittedBy": "1",
- "url": "documentDownload?fileName=document_1.jpg&contentStorageId=4",
- "version": "1"
}
Returns the single ProcessInstanceDocument for the given ID. Use a GET method to get a document from a process instances. First you get the document information, then you download the content. To get the document information, specify the document id in the URL. The document id is created when you upload a document to a process instances. There is no payload.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInstanceDocument to return |
{- "id": "3",
- "creationDate": "2014-10-09 16:45:36.658",
- "author": "1",
- "index": "-1",
- "contentMimetype": "application/octet-stream",
- "caseId": "1",
- "contentStorageId": "4",
- "isInternal": "true",
- "description": "draft",
- "name": "Doc 1",
- "fileName": "document_1.jpg",
- "submittedBy": "1",
- "url": "documentDownload?fileName=document_1.jpg&contentStorageId=4",
- "version": "1"
}
Update the ProcessInstanceDocument for the given ID
You update a document in a process instance by uploading a new version of the document using a PUT method. You can upload a document version from the local file system or by URL. The document name will be used in all the process instances of the process, but the combination of process instance id and document name is unique. In the URL, you specify to supply the document id. This is included in the response when you first add a document to a process instances. The response to PUT methods is the same as for POST methods.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInstanceDocument to return |
Partial ProcessInstanceDocument description
file | string The local file name to upload from (as from the temp upload folder) |
url | string The remote url to upload from |
name | string The file display name |
fileName | string The target file name |
description | string The document description |
{- "file": "Expense policy rev2.pdf",
- "description": "updated version of document",
- "fileName": "revision2.pdf"
}
{- "message": "Bad request"
}
Delete the single ProcessInstanceDocument for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInstanceDocument to delete |
{- "message": "Bad request"
}
Finds ArchivedProcessInstanceDocuments with pagination params and filters
You can filter on :
sourceObjectId="id"
: search for documents by specifying the original document id.
This is useful if you know the id of a ProcessInstanceDocument and you wish to retrieve all its previous versions..caseId="id"
: search for documents with the specified open process instance id.archivedCaseId="id"
: search for documents with the specified archived process instance id.submittedBy="id"
: search for documents that were submitted by the user with the specified identifier.name="string"
: search for documents with names that contain string.
Depending on the setting for word-based search, the search returns documents with string at the start of the name or the start of a word in the name.description="string"
: search for documents with descriptions that contain string.
Depending on the setting for word-based search, the search returns documents with string at the start of the description or the start of a word in the description.p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": "1",
- "creationDate": "2014-10-09 16:39:52.472",
- "author": "1",
- "index": "0",
- "contentMimetype": "text/plain",
- "caseId": "1",
- "contentStorageId": "1",
- "isInternal": "true",
- "description": "",
- "name": "myDoc",
- "fileName": "test1.txt",
- "submittedBy": "1",
- "url": "documentDownload?fileName=test1.txt&contentStorageId=1",
- "version": "1",
- "sourceObjectId": "1",
- "archivedDate": "2014-10-09 17:39:52.473"
}
]
Delete the single ArchivedProcessInstanceDocument for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedProcessInstanceDocument to delete |
{- "message": "Bad request"
}
Finds Actors with pagination params and filters
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": "1",
- "process_id": "4717422838168315799",
- "description": null,
- "name": "employee",
- "displayName": "Employee actor"
}
]
Returns the single Actor for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Actor to return |
{- "id": "1",
- "process_id": "4717422838168315799",
- "description": null,
- "name": "employee",
- "displayName": "Employee actor"
}
Update the Actor for the given ID
Warning: as of 9.0.0, updating an Actor using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Actor to return |
Fields that can be upated are displayName
and description
displayName | string display name of the Actor |
description | string description of the Actor |
{- "displayName": "My actor",
- "description": "My actor description"
}
{- "message": "Bad request"
}
Finds ActorMembers with pagination params and filters
There is a mandatory filter on:
actor_id
For example, retrieve the actorMembers related to the specified actor_id. http://localhost:8080/bonita/API/bpm/actorMember?p=0&c=10&f=actor_id%3d1You can also filter also on:
member_type
(user|role|group|roleAndGroup) retrieve only the actorMembers of type user. /API/bpm/actorMember?p=0&c=10&f=actor_id%3d1&f=member_type%3duser
user_id
: retrieve only the actorMembers related to the specified user_id. /API/bpm/actorMember?p=0&c=10&f=actor_id%3d1&f=user_id%3d101
role_id
: retrieve only the actorMembers related to the specified role_id. /API/bpm/actorMember?p=0&c=10&f=actor_id%3d1&f=role_id%3d101
group_id
: retrieve only the actorMembers related to the specified group_id. /API/bpm/actorMember?p=0&c=10&f=actor_id%3d1&f=group_id%3d101
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": "206",
- "actor_id": "2",
- "role_id": "4",
- "group_id": "8",
- "user_id": "-1"
}
]
Returns the single ActorMember for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ActorMember to return |
{- "id": "206",
- "actor_id": "2",
- "role_id": "4",
- "group_id": "8",
- "user_id": "-1"
}
Delete the single ActorMember for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ActorMember to delete |
{- "message": "Bad request"
}
Finds ProcessInstances with pagination params and filters
You can filter on:
processDefinitionId
: The process derfinition IDname
: the process namestarted_by
: the ID of the user who started the processteam_manager_id
: allow to retrieve the process instances in which all users with this manager ID ar involved)supervisor_id
: allow the retrived the process instances of all processes the user with this ID is supervisor of) beware you cannot use team_manager_id and supervisor_id at the same timep required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": 1,
- "end_date"": "",
- "failedFlowNodes"": 9,
- "startedBySubstitute"": 345,
- "start"": "2014-11-27 17:55:00.906",
- "activeFlowNodes"": "9",
- "state"": "started",
- "rootCaseId"": "1",
- "started_by"": 989,
- "processDefinitionId"": "5777042023671752656",
- "last_update_date"": "2014-11-27 17:55:00.906",
- "searchIndex1Label": "mySearchIndex1Label",
- "searchIndex2Label": "mySearchIndex2Label",
- "searchIndex3Label": "mySearchIndex3Label",
- "searchIndex4Label": "mySearchIndex4Label",
- "searchIndex5Label": "mySearchIndex5Label",
- "searchIndex1Value": "mySearchIndex1Value",
- "searchIndex2Value": "mySearchIndex2Value",
- "searchIndex3Value": "mySearchIndex3Value",
- "searchIndex4Value": "mySearchIndex4Value",
- "searchIndex5Value": "mySearchIndex5Value"
}
]
Create the ProcessInstance This way of creating a process instance using this method will only work for processes in which no contract is defined. To instantiate a process with a contract, check the process instantiation resource documentation.
Warning: The attribute variables
on the request payload is used to initialize the process variables (not BDM variables). If you want to initialize BDM variables at process instantiation, add a contract on the process and map BDM variables to the contract data. See Start a process using an instantiation contract for usage.
processDefinitionId | string the process definition Id |
Array of objects (ProcessVariable) process variables initial values |
{- "processDefinitionId": "5777042023671752656",
- "variables": [
- {
- "name": "stringVariable",
- "value": "aValue"
}, - {
- "name": "dateVariable",
- "value": 349246800000
}, - {
- "name": "numericVariable",
- "value": 55
}
]
}
{- "id": 1,
- "end_date"": "",
- "failedFlowNodes"": 9,
- "startedBySubstitute"": 345,
- "start"": "2014-11-27 17:55:00.906",
- "activeFlowNodes"": "9",
- "state"": "started",
- "rootCaseId"": "1",
- "started_by"": 989,
- "processDefinitionId"": "5777042023671752656",
- "last_update_date"": "2014-11-27 17:55:00.906",
- "searchIndex1Label": "mySearchIndex1Label",
- "searchIndex2Label": "mySearchIndex2Label",
- "searchIndex3Label": "mySearchIndex3Label",
- "searchIndex4Label": "mySearchIndex4Label",
- "searchIndex5Label": "mySearchIndex5Label",
- "searchIndex1Value": "mySearchIndex1Value",
- "searchIndex2Value": "mySearchIndex2Value",
- "searchIndex3Value": "mySearchIndex3Value",
- "searchIndex4Value": "mySearchIndex4Value",
- "searchIndex5Value": "mySearchIndex5Value"
}
Delete a list of ProcessInstances for the given IDs
ProcessInstance id
[- "string"
]
{- "message": "Bad request"
}
Returns the single ProcessInstance for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInstance to return |
n | string Enum: "activeFlowNodes" "failedFlowNodes" Count of related resources |
{- "id": 1,
- "end_date"": "",
- "failedFlowNodes"": 9,
- "startedBySubstitute"": 345,
- "start"": "2014-11-27 17:55:00.906",
- "activeFlowNodes"": "9",
- "state"": "started",
- "rootCaseId"": "1",
- "started_by"": 989,
- "processDefinitionId"": "5777042023671752656",
- "last_update_date"": "2014-11-27 17:55:00.906",
- "searchIndex1Label": "mySearchIndex1Label",
- "searchIndex2Label": "mySearchIndex2Label",
- "searchIndex3Label": "mySearchIndex3Label",
- "searchIndex4Label": "mySearchIndex4Label",
- "searchIndex5Label": "mySearchIndex5Label",
- "searchIndex1Value": "mySearchIndex1Value",
- "searchIndex2Value": "mySearchIndex2Value",
- "searchIndex3Value": "mySearchIndex3Value",
- "searchIndex4Value": "mySearchIndex4Value",
- "searchIndex5Value": "mySearchIndex5Value"
}
Delete the single ProcessInstance for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInstance to delete |
{- "message": "Bad request"
}
Returns the Context for the given ProcessInstance ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInstance that has the Context to return |
{- "myBusinessData_ref": {
- "name": "myBusinessData",
- "type": "com.company.model.BusinessObject1",
- "link": "API/bdm/businessData/com.company.model.BusinessObject1/2",
- "storageId": 2,
- "storageId_string": "2"
}, - "myDocument_ref": {
- "id": 1,
- "processInstanceId": 3,
- "name": "myDocument",
- "author": 104,
- "creationDate": 1434723950847,
- "fileName": "TestCommunity-1.0.bos",
- "contentMimeType": null,
- "contentStorageId": "1",
- "url": "documentDownload?fileName=TestCommunity-1.0.bos&contentStorageId=1",
- "description": "",
- "version": "1",
- "index": -1,
- "contentFileName": "TestCommunity-1.0.bos"
}
}
Finds archived ProcessInstances (or ProcessInstance) with pagination params and filters
You can order on id
, processDefinitionId
, startedBy
, startedBySubstitute
, startDate
, endDate
, lastUpdate
, archivedDate
, sourceObjectId
You can filter on :
sourceObjectId
: The original process instance ID before the process instance was archivedprocessDefinitionId
: The process derfinition IDname
: the process namestarted_by
: the ID of the user who started the processteam_manager_id
: allow to retrieve the process instances in which all users with this manager ID ar involved)supervisor_id
: allow the retrived the process instances of all processes the user with this ID is supervisor of) beware you cannot use team_manager_id and supervisor_id at the same timep required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": 9,
- "end_date"": "",
- "failedFlowNodes"": 9,
- "startedBySubstitute"": 345,
- "start"": "2014-11-27 17:55:00.906",
- "activeFlowNodes"": "9",
- "state"": "started",
- "rootCaseId"": "1",
- "started_by"": 989,
- "processDefinitionId"": "5777042023671752656",
- "last_update_date"": "2014-10-22 10:57:00.299",
- "searchIndex1Label": "case9SearchIndex1Label",
- "searchIndex2Label": "case9SearchIndex2Label",
- "searchIndex3Label": "case9SearchIndex3Label",
- "searchIndex4Label": "case9SearchIndex4Label",
- "searchIndex5Label": "case9SearchIndex5Label",
- "searchIndex1Value": "case9SearchIndex1Value",
- "searchIndex2Value": "case9SearchIndex2Value",
- "searchIndex3Value": "case9SearchIndex3Value",
- "searchIndex4Value": "case9SearchIndex4Value",
- "searchIndex5Value": "case9SearchIndex5Value",
- "end_date": "2014-10-22 10:57:00.299",
- "startedBySubstitute": "4",
- "sourceObjectId": "3",
- "start": "2014-10-22 10:56:53.415",
- "state": "completed",
- "rootCaseId": "3",
- "started_by": "4",
- "archivedDate": "2014-10-22 10:57:00.299",
- "processDefinitionId": "6054482369194211518"
}
]
Returns the single ArchivedProcessInstance for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedProcessInstance to return |
{- "id": 9,
- "end_date"": "",
- "failedFlowNodes"": 9,
- "startedBySubstitute"": 345,
- "start"": "2014-11-27 17:55:00.906",
- "activeFlowNodes"": "9",
- "state"": "started",
- "rootCaseId"": "1",
- "started_by"": 989,
- "processDefinitionId"": "5777042023671752656",
- "last_update_date"": "2014-10-22 10:57:00.299",
- "searchIndex1Label": "case9SearchIndex1Label",
- "searchIndex2Label": "case9SearchIndex2Label",
- "searchIndex3Label": "case9SearchIndex3Label",
- "searchIndex4Label": "case9SearchIndex4Label",
- "searchIndex5Label": "case9SearchIndex5Label",
- "searchIndex1Value": "case9SearchIndex1Value",
- "searchIndex2Value": "case9SearchIndex2Value",
- "searchIndex3Value": "case9SearchIndex3Value",
- "searchIndex4Value": "case9SearchIndex4Value",
- "searchIndex5Value": "case9SearchIndex5Value",
- "end_date": "2014-10-22 10:57:00.299",
- "startedBySubstitute": "4",
- "sourceObjectId": "3",
- "start": "2014-10-22 10:56:53.415",
- "state": "completed",
- "rootCaseId": "3",
- "started_by": "4",
- "archivedDate": "2014-10-22 10:57:00.299",
- "processDefinitionId": "6054482369194211518"
}
Delete the single ArchivedProcessInstance for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedProcessInstance to delete |
{- "message": "Bad request"
}
Returns the Context for the given ArchivedProcessInstance ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedProcessInstance that has the Context to return |
{- "myBusinessData_ref": {
- "name": "myBusinessData",
- "type": "com.company.model.BusinessObject1",
- "link": "API/bdm/businessData/com.company.model.BusinessObject1/2",
- "storageId": 2,
- "storageId_string": "2"
}, - "myDocument_ref": {
- "id": 1,
- "processInstanceId": 3,
- "name": "myDocument",
- "author": 104,
- "creationDate": 1434723950847,
- "fileName": "TestCommunity-1.0.bos",
- "contentMimeType": null,
- "contentStorageId": "1",
- "url": "documentDownload?fileName=TestCommunity-1.0.bos&contentStorageId=1",
- "description": "",
- "version": "1",
- "index": -1,
- "contentFileName": "TestCommunity-1.0.bos"
}
}
since 2022.2
Returns the single ProcessInstanceInfo for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInstanceInfo to return |
{- "id": 123,
- "flowNodeStatesCounters": {
- "Step1": {
- "completed": 2,
- "ready": 1,
- "executing": 5
}, - "Step3": {
- "completed": 10,
- "failed": 2
}
}
}
Finds ProcessInstanceComments with pagination params and filters
postDate
supervisor_id
,user_id
,processInstanceId
- You cannot use supervisor_id and user_id filter at the same timep required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "content": "Need to review the last inputs of this case",
- "tenantId": "1",
- "id": "20005",
- "processInstanceId": "1",
- "postDate": "2016-06-16 14:51:33.053",
- "userId": 9798
}
]
Create the ProcessInstanceComment
The process instance (case) id and the comment content, in JSON
processInstanceId | string the process instance (case) the comment is associated to |
content | string the comment content |
{- "processInstanceId": "5777042023671752656",
- "content": "The process instance has been started"
}
{- "content": "Need to review the last inputs of this case",
- "tenantId": "1",
- "id": "20005",
- "processInstanceId": "1",
- "postDate": "2016-06-16 14:51:33.053",
- "userId": 9798
}
Finds ArchivedProcessInstanceComments with pagination params and filters
id
displayName
displayName
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "content": "Need to review the last inputs of this case",
- "tenantId": "1",
- "id": 20005,
- "processInstanceId": 1,
- "postDate": "2016-06-16 14:51:33.053",
- "userId": 30,
- "archivedDate": "2016-06-17 10:18:24.723"
}
]
Deploy and manage process definitions. In addition, you can instantiate a process, which will create a new process instance (case).
Finds Processes with pagination params and filters
name
, version
, deploymentDate
, deployedBy
, activationState
, configurationState
, processId
, displayName
, lastUpdateDate
, categoryId
, label
name
, displayName
or version
name
, version
, deploymentDate
, deployedBy
, activationState
with the value DISABLED or ENABLED, configurationState
with the value UNRESOLVED, or RESOLVED, processId
, displayName
, lastUpdateDate
, categoryId
, label
, supervisor_id
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "string",
- "icon": "string",
- "displayDescription": "string",
- "deploymentDate": "string",
- "description": "string",
- "activationState": "ENABLED",
- "name": "string",
- "deployedBy": "string",
- "displayName": "string",
- "actorinitiatorid": "string",
- "last_update_date": "string",
- "configurationState": "RESOLVED",
- "version": "string"
}
]
Create the Process. A process resource is created using the content of a .bar file that has previously been uploaded, using the processUpload servlet, to get the process archive path.
Warning: as of 9.0.0, creating a process using this API is deprecated.
Partial Process description
fileupload | string the bar file to deploy (previously uploaded in tmp folder) |
{- "fileupload": "tmp_4431838172282406107.bar"
}
{- "id": "string",
- "icon": "string",
- "displayDescription": "string",
- "deploymentDate": "string",
- "description": "string",
- "activationState": "ENABLED",
- "name": "string",
- "deployedBy": "string",
- "displayName": "string",
- "actorinitiatorid": "string",
- "last_update_date": "string",
- "configurationState": "RESOLVED",
- "version": "string"
}
Delete Process for the given list of ID.
Warning: Beware! Data loss risk!
Deleting a process will automatically delete all its process instances (on-going and archived alike). Thus, the operation may take a long time, and fail if the transaction timeout is not large enough. This feature should only be used on non-production environments.
Please proceed at your own risk.
[- "1",
- "2",
- "3"
]
{- "message": "Bad request"
}
Returns the single Process for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Process to return |
{- "id": "string",
- "icon": "string",
- "displayDescription": "string",
- "deploymentDate": "string",
- "description": "string",
- "activationState": "ENABLED",
- "name": "string",
- "deployedBy": "string",
- "displayName": "string",
- "actorinitiatorid": "string",
- "last_update_date": "string",
- "configurationState": "RESOLVED",
- "version": "string"
}
Update the Process for the given ID
Warning: as of 9.0.0, updating a process using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Process to return |
Partial Process description
displaydescription | string description of the Process |
displayName | string display name of the Process |
activationState | string (ActivationState) Enum: "ENABLED" "DISABLED" the state of the process definition (ENABLED or DISABLED) |
{- "displayName": "Leave booking process"
}
{- "message": "Bad request"
}
Delete the single Process for the given ID.
Warning: Beware! Data loss risk!
Deleting a process will automatically delete all its process instances (on-going and archived alike). Thus, the operation may take a long time, and fail if the transaction timeout is not large enough. This feature should only be used on non-production environments.
Please proceed at your own risk.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Process to delete |
{- "message": "Bad request"
}
Returns the single Process design for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Process to get the design from |
{- "displayName": "string",
- "displayDescription": "string",
- "flowElementContainer": {
- "activities": [
- { }
], - "transitions": [
- { }
], - "gatewaysList": [
- { }
], - "startEvents": [
- { }
], - "intermediateCatchEvents": [
- { }
], - "intermediateThrowEvents": [
- { }
], - "endEvents": [
- { }
], - "dataDefinitions": [
- { }
], - "documentDefinitions": [
- { }
], - "connectors": [
- { }
], - "businessDataDefinitions": [
- { }
], - "documentListDefinitions": [
- { }
]
}, - "parameters": [
- {
- "type": "string",
- "description": "string",
- "name": "string"
}
], - "actorsList": [
- {
- "name": "string",
- "description": "string",
- "initiator": true
}
], - "actorInitiator": {
- "name": "string",
- "description": "string",
- "initiator": true
}, - "stringIndexLabels": [
- "string"
], - "stringIndexValues": [
- {
- "id": "string",
- "name": "string",
- "content": "string",
- "expressionType": "string",
- "returnType": "string",
- "interpreter": "string",
- "dependencies": [
- { }
]
}
], - "contract": {
- "constraints": [
- {
- "name": "string",
- "expression": "string",
- "explanation": "string",
- "inputNames": [
- "string"
]
}
], - "inputs": [
- {
- "description": "string",
- "name": "string",
- "multiple": "string",
- "type": "TEXT",
- "inputs": [
- { }
]
}
]
}, - "context": [
- {
- "key": "string",
- "expression": {
- "id": "string",
- "name": "string",
- "content": "string",
- "expressionType": "string",
- "returnType": "string",
- "interpreter": "string",
- "dependencies": [
- { }
]
}
}
]
}
Returns the process contract for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Process to get the contract from |
{- "constraints": [
- {
- "name": "string",
- "expression": "string",
- "explanation": "string",
- "inputNames": [
- "string"
]
}
], - "inputs": [
- {
- "description": "string",
- "name": "string",
- "multiple": "string",
- "type": "TEXT",
- "inputs": [
- { }
]
}
]
}
Instanciate the process with the provided contract values.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the process to instanciate |
A JSON object matching process contract.
property name* additional property | any |
{- "ticket_account": "CustomerA",
- "ticket_description": "issue description",
- "ticket_subject": "Issue 1"
}
{- "caseId": "12345678"
}
Update the ProcessConnector for the given ID
Warning: as of 9.0.0, updating a Process Connector using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the process to update |
connectorImplId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Process Connector implementation to update |
connectorImplVersion required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Version of the Process Connector implementation to update |
Partial ProcessConnector description
id | string Id of the process for which to update the connector, combined with connector name and version separated by slashes (x/y/z) |
implementation | string Previously uploaded temp file name of the updated version of the connector (returned by the upload file api) |
{- "id": "8491796209115952722/scripting-groovy-script/1.0.1",
- "implementation": "tmp_7006630415905915150.zip"
}
{- "message": "Bad request"
}
Upload a bar file
Warning: as of 9.0.0, uploading a bar file using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
Use the diagram resource to access the process diagram xml representation. This is necessary for drawing the diagram.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the process to get the diagram from |
{- "message": "Bad request"
}
Since 2022.2
Returns the single ProcessInfo for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProcessInfo to return |
{- "processDefinitionId": 123,
- "flowNodeStatesCounters": {
- "Step1": {
- "executing": 2,
- "ready": 1,
- "failed": 5
}, - "Step3": {
- "ready": 10,
- "failed": 2
}
}
}
Finds ProcessParameters with pagination params and filters.
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "process_id": 4880205209556179000,
- "process_name": "myProcessName",
- "description": "myProcessDescription",
- "name": "myParameterName",
- "value": "myParameterValue",
- "process_version": "1.0",
- "type": "java.lang.String"
}
]
Returns the single ProcessParameter for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the process to get parameter from |
name required | string <= 250 characters ^[A-Za-z0-9\_\-\.\s]{0,250}$ Name of the process parameter to return |
{- "process_id": 4880205209556179000,
- "process_name": "myProcessName",
- "description": "myProcessDescription",
- "name": "myParameterName",
- "value": "myParameterValue",
- "process_version": "1.0",
- "type": "java.lang.String"
}
Update the ProcessParameter for the given ID
Warning: as of 9.0.0, importing a Process parameter using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the process to get parameter from |
name required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Name of the process parameter to return |
You can update only a process parameter value using the API. If you specify values for other fields in the update request, they are ignored.
value | string value of the Process Parameter |
{- "value": "myNewValue"
}
{- "message": "Bad request"
}
Finds ProcessResolutionProblems with pagination params and filters to list the problems that need to be solved before a process can be used.
Filtering on the process definition ID is mandatory.
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "message": "string",
- "resource_id": "string",
- "target_type": "string"
}
]
Finds ProcessSupervisors with pagination params and filters
To filter, you need to specify the process_id
, and then the user_id
, group_id
and role_id
with one of them
(two if you want to filter on group and role) set to >0
and the other ones set to -1
.
E.g.: f=process_id%3D8040901857674754544&f=user_id%3D>0&f=group_id%3D-1&f=role_id%3D-1
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "process_id": 8040901857674754000,
- "user_id": 2,
- "role_id": -1,
- "group_id": -1
}
]
Create the ProcessSupervisor
The process definition id and either the user, role and/or group id.
process_id | string Id of the process |
role_id | string Id of role, or -1 if the supervisor type is not role or membership |
group_id | string Id of group, or -1 if the supervisor type is not group or membership |
user_id | string Id of user, or -1 if the supervisor type is not user |
{- "process_id": "5777042023671752656",
- "user_id": "11"
}
{- "process_id": 8040901857674754000,
- "user_id": 2,
- "role_id": -1,
- "group_id": -1
}
Delete the ProcessSupervisor for the given compoound IDs
You can delete a process supervisor by specifying its compound Id in the body of the request with the following format: process_id/user_id/role_id/group_id
The process definition id and either the user, role and/or group id.
[- "8040901857674754544/11/-1/-1",
- "8040901857674754544/12/-1/-1"
]
{- "message": "Bad request"
}
Finds ProcessConnectorDependencies with pagination params and filters
Mandatory filters: connector_process_id
, connector_name
, connector_version
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "connector_version": "1.0.0",
- "connector_process_id": 4971555129176050000,
- "filename": "bonita-connector-email-impl-1.0.12.jar",
- "connector_name": "email"
}
]
Returns the single ConnectorFailure for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ConnectorFailure to return |
{- "errorMessage": "Error while executing the groovy script",
- "connectorInstanceId": 5,
- "errorStackTrace": "org.bonitasoft.engine.core.connector.exception.SConnectorException: PROCESS_DEFINITION_ID=8030057793979348308 | PROCESS_NAME=Pool1 | PROCESS_VERSION=1.0 | PROCESS_INSTANCE_ID=5 | ROOT_PROCESS_INSTANCE_ID=5 | FLOW_NODE_DEFINITION_ID=-6089366458284481881 | FLOW_NODE_INSTANCE_ID=12 | FLOW_NODE_NAME=Étape1 | CONNECTOR_DEFINITION_IMPLEMENTATION_CLASS_NAME=expression execution connector | CONNECTOR_INSTANCE_ID=5 | org.bonitasoft.engine.connector.exception.SConnectorException: java.util.concurrent.ExecutionException: java.lang.Exception: Error while executing the groovy script\n\tat org.bonitasoft.engine.core.connector.impl.ConnectorServiceImpl.executeConnectorInClassloader(ConnectorServiceImpl.java:332)"
}
Finds ConnectorInstances with pagination params and filters. Retrieve a list of connector instances attached to a process or a flow node.
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "containerType": "flowNode",
- "connectorId": "scripting-groovy-script",
- "id": 3,
- "name": "hello world",
- "activationEvent": "ON_FINISH",
- "state": "TO_BE_EXECUTED",
- "containerId": 15,
- "version": "1.0.0"
}
]
Finds ArchivedConnectorInstances with pagination params and filters
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "containerType": "flowNode",
- "connectorId": "scripting-groovy-script",
- "id": 3,
- "name": "hello world",
- "activationEvent": "ON_FINISH",
- "state": "TO_BE_EXECUTED",
- "containerId": 15,
- "version": "1.0.0",
- "archivedDate": "string"
}
]
Finds FlowNodes with pagination params and filters
name
, displayName
, state
, processDefinitionId
, parentProcessInstanceId
, parentActivityInstanceId
(if the retrieved flow nodes are activities, order by parent activity id), rootProcessInstanceId
, lastUpdateDate
name
, state
, processId
, parentProcessInstanceId
, rootProcessInstanceId
, last_update_date
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "displayDescription"": "",
- "executedBySubstitute"": 0,
- "processId"": 7596769292810274000,
- "parentCaseId"": 1,
- "state"": "failed",
- "rootContainerId"": 1,
- "type"": "USER_TASK",
- "assigned_id"": null,
- "assigned_date"": "",
- "id"": "77456",
- "executedBy"": 0,
- "caseId"": 1,
- "priority"": "normal",
- "actorId"": 4,
- "description"": "",
- "name"": "Step1",
- "reached_state_date"": "2014-12-10 08:59:47.884",
- "rootCaseId"": 1,
- "displayName"": "Step1",
- "dueDate"": "2014-12-10 09:59:47.855",
- "last_update_date"": "2014-12-10 08:59:47.884"
}
]
Returns the single FlowNode for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the FlowNode to return |
{- "displayDescription"": "",
- "executedBySubstitute"": 0,
- "processId"": 7596769292810274000,
- "parentCaseId"": 1,
- "state"": "failed",
- "rootContainerId"": 1,
- "type"": "USER_TASK",
- "assigned_id"": null,
- "assigned_date"": "",
- "id"": "77456",
- "executedBy"": 0,
- "caseId"": 1,
- "priority"": "normal",
- "actorId"": 4,
- "description"": "",
- "name"": "Step1",
- "reached_state_date"": "2014-12-10 08:59:47.884",
- "rootCaseId"": 1,
- "displayName"": "Step1",
- "dueDate"": "2014-12-10 09:59:47.855",
- "last_update_date"": "2014-12-10 08:59:47.884"
}
Replay the flow node for the given ID.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the FlowNode to return |
Replay the flow node.
state | string state of the FlowNode |
{- "state": "replay"
}
{- "message": "Bad request"
}
Finds ArchivedFlowNodes with pagination params and filters
name
, displayName
, state
, type
, isTerminal
, processId
, caseId
, archivedDate
name
, displayName
, state
, stateId
, kind
, terminal
, processDefinitionId
, parentProcessInstanceId
, rootProcessInstanceId
, parentActivityInstanceId
, archivedDate
, reachedStateDate
, sourceObjectId
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "displayDescription"": "",
- "executedBySubstitute"": 0,
- "processId"": 7596769292810274000,
- "parentCaseId"": 1,
- "state"": "failed",
- "rootContainerId"": 1,
- "type"": "USER_TASK",
- "assigned_id"": null,
- "assigned_date"": "",
- "id"": "77456",
- "executedBy"": 0,
- "caseId"": 1,
- "priority"": "normal",
- "actorId"": 4,
- "description"": "",
- "name"": "Step1",
- "reached_state_date"": "2014-12-10 08:59:47.884",
- "rootCaseId"": 1,
- "displayName"": "Step1",
- "dueDate"": "2014-12-10 09:59:47.855",
- "last_update_date"": "2014-12-10 08:59:47.884",
- "sourceObjectId": "string",
- "archivedDate": "string"
}
]
Returns the single ArchivedFlowNode for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ArchivedFlowNode to return |
{- "displayDescription"": "",
- "executedBySubstitute"": 0,
- "processId"": 7596769292810274000,
- "parentCaseId"": 1,
- "state"": "failed",
- "rootContainerId"": 1,
- "type"": "USER_TASK",
- "assigned_id"": null,
- "assigned_date"": "",
- "id"": "77456",
- "executedBy"": 0,
- "caseId"": 1,
- "priority"": "normal",
- "actorId"": 4,
- "description"": "",
- "name"": "Step1",
- "reached_state_date"": "2014-12-10 08:59:47.884",
- "rootCaseId"": 1,
- "displayName"": "Step1",
- "dueDate"": "2014-12-10 09:59:47.855",
- "last_update_date"": "2014-12-10 08:59:47.884",
- "sourceObjectId": "string",
- "archivedDate": "string"
}
Finds TimerEventTriggers with pagination params and filters
id
displayName
displayName
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
caseId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ the process instance id |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": 4015,
- "id_string": "4015",
- "eventInstanceId": 2,
- "eventInstanceId_string": "2",
- "executionDate": 1413980484194,
- "eventInstanceName": "Timer1"
}
]
Returns the single TimerEventTrigger for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the TimerEventTrigger to return |
{- "id": 4015,
- "id_string": "4015",
- "eventInstanceId": 2,
- "eventInstanceId_string": "2",
- "executionDate": 1413980484194,
- "eventInstanceName": "Timer1"
}
Update the TimerEventTrigger for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the TimerEventTrigger to return |
a long value with attribute name "executionDate"
executionDate | integer <int64> executionDate of the TimerEventTrigger |
{- "executionDate": 1433980484194
}
{- "executionDate": 1433980484194
}
Use this resource to send BPM message events. Message events are caught by processes using catch message event
flow nodes (Start, intermediate, boundary or receive tasks).
A Message event
messageName | string the message name |
targetProcess | string the target process name |
targetFlowNode | string the target FlowNode name |
object the message content | |
object <= 5 items the message correlations |
{- "messageName": "string",
- "targetProcess": "string",
- "targetFlowNode": "string",
- "messageContent": {
- "property1": {
- "value": "string",
- "type": "java.lang.String"
}, - "property2": {
- "value": "string",
- "type": "java.lang.String"
}
}, - "correlations": {
- "property1": {
- "value": "string",
- "type": "java.lang.String"
}, - "property2": {
- "value": "string",
- "type": "java.lang.String"
}
}
}
{- "message": "Bad request"
}
Since 2022.1
Use this resource to broadcast BPM signal events. Signal events are caught by processes using catch signal event
flow nodes (Start, intermediate or boundary).
A Signal event
name | string the signal name |
{- "name": "string"
}
{- "message": "Bad request"
}
Finds CustomUserDefinitions. There are no filters, and no search terms. All the definitions are returned.
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
[- {
- "id": 101,
- "name": "skill",
- "description": "Team player"
}
]
Create the CustomUserDefinition
Partial CustomUserDefinition description
name | string definition name |
description | string definition description |
{- "name": "skill",
- "description": "Team player"
}
{- "id": 101,
- "name": "skill",
- "description": "Team player"
}
Returns the single CustomUserDefinition for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the CustomUserDefinition to return |
{- "id": 101,
- "name": "skill",
- "description": "Team player"
}
Delete the single CustomUserDefinition for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the CustomUserDefinition to delete |
{- "message": "Bad request"
}
Finds CustomUserValues with pagination params and filters
You can filter on userId
, value
, definitionId
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
[- {
- "userId": "string",
- "value": "string",
- "definitionId": "string"
}
]
Update the CustomUserValue for the given ID
userId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ User ID |
definitionId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ definition ID |
Custom user defition Value
value | string new value to set |
{- "value": "My new value"
}
{- "message": "Bad request"
}
Finds CustomUsers with pagination params and filters
The filter userId
is mandatory
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
[- {
- "userId": "string",
- "value": "string",
- "definitionId": {
- "id": 101,
- "name": "skill",
- "description": "Team player"
}
}
]
Finds ProfessionalContactData with pagination params and filters
id
displayName
displayName
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": 4,
- "fax_number": "484-302-0766",
- "building": "70",
- "phone_number": "484-302-5766",
- "website": "",
- "zipcode": "19108",
- "state": "PA",
- "city": "Philadelphia",
- "country": "United States",
- "mobile_number": "",
- "address": "Renwick Drive",
- "email": "walter.bates@acme.com",
- "room": ""
}
]
Create the ProfessionalContactData
Partial ProfessionalContactData description including the user ID
id required | string user ID |
fax_number | string fax number |
building | string building |
phone_number | string phone number |
website | string website |
zipcode | string zipcode |
state | string state |
city | string city |
country | string country |
mobile_number | string mobile phone number |
address | string address |
room | string room |
string |
{- "id": "4",
- "fax_number": "484-302-0766",
- "building": "70",
- "phone_number": "484-302-5766",
- "zipcode": "19108",
- "state": "PA",
- "city": "Philadelphia",
- "country": "United States",
- "address": "Renwick Drive",
- "email": "walter.bates@acme.com"
}
{- "id": 4,
- "fax_number": "484-302-0766",
- "building": "70",
- "phone_number": "484-302-5766",
- "website": "",
- "zipcode": "19108",
- "state": "PA",
- "city": "Philadelphia",
- "country": "United States",
- "mobile_number": "",
- "address": "Renwick Drive",
- "email": "walter.bates@acme.com",
- "room": ""
}
Returns the single ProfessionalContactData for the given ID
userId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ User ID of the ProfessionalContactData to return |
{- "id": 4,
- "fax_number": "484-302-0766",
- "building": "70",
- "phone_number": "484-302-5766",
- "website": "",
- "zipcode": "19108",
- "state": "PA",
- "city": "Philadelphia",
- "country": "United States",
- "mobile_number": "",
- "address": "Renwick Drive",
- "email": "walter.bates@acme.com",
- "room": ""
}
Update the ProfessionalContactData for the given ID
userId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ User ID of the ProfessionalContactData to update |
Partial ProfessionalContactData description including the user ID
id required | string user ID |
fax_number | string fax number |
building | string building |
phone_number | string phone number |
website | string website |
zipcode | string zipcode |
state | string state |
city | string city |
country | string country |
mobile_number | string mobile phone number |
address | string address |
room | string room |
string |
{- "id": "4",
- "fax_number": "484-302-0766",
- "building": "70",
- "phone_number": "484-302-5766",
- "zipcode": "19108",
- "state": "PA",
- "city": "Philadelphia",
- "country": "United States",
- "address": "Renwick Drive",
- "email": "walter.bates@acme.com"
}
{- "message": "Bad request"
}
Returns the single PersonalContactData for the given ID
userId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ User ID of the PersonalContactData to return |
{- "id": 4,
- "fax_number": "484-302-0766",
- "building": "70",
- "phone_number": "484-302-5766",
- "website": "",
- "zipcode": "19108",
- "state": "PA",
- "city": "Philadelphia",
- "country": "United States",
- "mobile_number": "",
- "address": "Renwick Drive",
- "email": "walter.bates@acme.com",
- "room": ""
}
Update the PersonalContactData for the given ID
userId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ User ID of the PersonalContactData to update |
Partial PersonalContactData description including the user ID
id required | string user ID |
fax_number | string fax number |
building | string building |
phone_number | string phone number |
website | string website |
zipcode | string zipcode |
state | string state |
city | string city |
country | string country |
mobile_number | string mobile phone number |
address | string address |
room | string room |
string |
{- "id": "4",
- "fax_number": "484-302-0766",
- "building": "70",
- "phone_number": "484-302-5766",
- "zipcode": "19108",
- "state": "PA",
- "city": "Philadelphia",
- "country": "United States",
- "address": "Renwick Drive",
- "email": "walter.bates@acme.com"
}
{- "message": "Bad request"
}
The group a user belongs to. Groups have a hierarchy (subgroups can be created inside a group).
Finds Groups with pagination params and filters.
id
,name
,displayName
name
,displayName
,parent_path
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": 3,
- "creation_date": "2014-12-02 11:33:48.501",
- "created_by_user_id": -1,
- "icon": "",
- "parent_path": "/acme",
- "description": "This group represents the finance department of the ACME organization",
- "name": "finance",
- "path": "/acme/finance",
- "parent_group_id": 1,
- "displayName": "Finance",
- "last_update_date": "2014-12-02 11:33:48.501"
}
]
Create the Group
Partial Group description
name required | string name |
displayName | string display name |
parent_group_id | string the id of the parent group of this group (empty if the group has no parent) |
description | string description |
icon | string icon path |
{- "icon": "",
- "name": "HR",
- "displayName": "Human Resources",
- "description": "Human resources department"
}
{- "id": 3,
- "creation_date": "2014-12-02 11:33:48.501",
- "created_by_user_id": -1,
- "icon": "",
- "parent_path": "/acme",
- "description": "This group represents the finance department of the ACME organization",
- "name": "finance",
- "path": "/acme/finance",
- "parent_group_id": 1,
- "displayName": "Finance",
- "last_update_date": "2014-12-02 11:33:48.501"
}
Returns the single Group for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Group to return |
{- "id": 3,
- "creation_date": "2014-12-02 11:33:48.501",
- "created_by_user_id": -1,
- "icon": "",
- "parent_path": "/acme",
- "description": "This group represents the finance department of the ACME organization",
- "name": "finance",
- "path": "/acme/finance",
- "parent_group_id": 1,
- "displayName": "Finance",
- "last_update_date": "2014-12-02 11:33:48.501"
}
Update the Group for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Group to return |
Partial Group description
name required | string name |
displayName | string display name |
parent_group_id | string the id of the parent group of this group (empty if the group has no parent) |
description | string description |
icon | string icon path |
{- "name": "HR",
- "displayName": "Humman resources"
}
{- "message": "Bad request"
}
Delete the single Group for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Group to delete |
{- "message": "Bad request"
}
Manage membership of users. There is a membership when a user belongs to a group and a role. Use this resource to add, search, and delete memberships.
Finds Memberships with pagination params and filters
Filter user_id
is mandatory
You can order with the values: ROLE_NAME_ASC
,ROLE_NAME_DESC
, GROUP_NAME_ASC
,GROUP_NAME_DESC
, ASSIGNED_DATE_ASC
, ASSIGNED_DATE_DESC
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "assigned_date": "2014-12-02 17:57:09.315",
- "role_id"": 4,
- "assigned_by_user_id": 12,
- "group_id": 5,
- "user_id": 125
}
]
Create the Membership
Partial Membership description
role_id required | string id of the role of this membership |
group_id required | string id of the group of this membership |
user_id required | string id of the user in this membership |
{- "user_id": "4",
- "group_id": "5",
- "role_id": "1"
}
{- "assigned_date": "2014-12-02 17:57:09.315",
- "role_id"": 4,
- "assigned_by_user_id": 12,
- "group_id": 5,
- "user_id": 125
}
Delete a membership of a user using the group id and role id.
userId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ User ID of the Membership to delete |
groupId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Group ID of the Membership to delete |
roleId required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ Role ID of the Membership to delete |
{- "message": "Bad request"
}
Finds Roles with pagination params and filters
id
, name
and displayName
name
and displayName
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "icon": "",
- "name": "manager",
- "displayName": "department manager",
- "description": "manager of the department",
- "creation_date": "2014-12-01 18:51:54.791",
- "created_by_user_id": 4,
- "last_update_date": "2014-12-01 18:51:54.791"
}
]
Create the Role
Partial Role description
name required | string name |
displayName | string display name |
description | string description |
icon | string icon path |
{- "icon": "",
- "name": "manager",
- "displayName": "department manager",
- "description": "manager of the department"
}
{- "icon": "",
- "name": "manager",
- "displayName": "department manager",
- "description": "manager of the department",
- "creation_date": "2014-12-01 18:51:54.791",
- "created_by_user_id": 4,
- "last_update_date": "2014-12-01 18:51:54.791"
}
Returns the single Role for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Role to return |
{- "icon": "",
- "name": "manager",
- "displayName": "department manager",
- "description": "manager of the department",
- "creation_date": "2014-12-01 18:51:54.791",
- "created_by_user_id": 4,
- "last_update_date": "2014-12-01 18:51:54.791"
}
Update the Role for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Role to return |
Partial Role description
name required | string name |
displayName | string display name |
description | string description |
icon | string icon path |
{- "name": "string",
- "displayName": "string",
- "description": "string",
- "icon": "string"
}
{- "message": "Bad request"
}
Delete the single Role for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Role to delete |
{- "message": "Bad request"
}
Finds Users with pagination params and filters
id
displayName
displayName
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "string",
- "enabled": "string",
- "userName": "string",
- "firstname": "string",
- "lastname": "string",
- "password": "pa$$word",
- "icon": "string",
- "title": "string",
- "job_title": "string",
- "manager_id": "string",
- "last_connection": "string",
- "created_by_user_id": "string",
- "creation_date": "string",
- "last_update_date": "string"
}
]
Create the User
Partial User description
userName required | string user name |
password required | string <password> user password |
password_confirm required | string <password> user password confirmation |
firstname required | string user last name |
lastname required | string user last name |
enabled required | string true|false if the user is enabled or not |
icon | string bonita icon path (ie. /default/icon_user.png) |
title | string user title |
job_title | string user job title |
manager_id | string user manager id |
{- "userName": "New.User",
- "password": "bpm",
- "password_confirm": "bpm",
- "icon": "",
- "firstname": "New",
- "lastname": "User",
- "title": "Mr",
- "job_title": "Human resources benefits",
- "manager_id": "3",
- "enabled": "true"
}
{- "id": "string",
- "enabled": "string",
- "userName": "string",
- "firstname": "string",
- "lastname": "string",
- "password": "pa$$word",
- "icon": "string",
- "title": "string",
- "job_title": "string",
- "manager_id": "string",
- "last_connection": "string",
- "created_by_user_id": "string",
- "creation_date": "string",
- "last_update_date": "string"
}
Returns the single User for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the User to return |
{- "id": "string",
- "enabled": "string",
- "userName": "string",
- "firstname": "string",
- "lastname": "string",
- "password": "pa$$word",
- "icon": "string",
- "title": "string",
- "job_title": "string",
- "manager_id": "string",
- "last_connection": "string",
- "created_by_user_id": "string",
- "creation_date": "string",
- "last_update_date": "string"
}
Update the User for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the User to return |
Partial User description
enabled | string if "true", user will be activated. |
userName | string user name |
firstname | string user last name |
lastname | string user last name |
password | string <password> user password |
icon | string bonita icon path (ie. /default/icon_user.png) |
title | string user title |
job_title | string user job title |
manager_id | string user manager id |
{- "enabled": "string",
- "userName": "string",
- "firstname": "string",
- "lastname": "string",
- "password": "pa$$word",
- "icon": "string",
- "title": "string",
- "job_title": "string",
- "manager_id": "string"
}
{- "message": "Bad request"
}
Delete the single User for the given ID.
Use this method with caution: some artifacts like applications, process instances or users may present display problems in the Bonita Portal if the referenced user was deleted. Note that you can disable a user instead of deleting it. To do so, use the UPDATE method and set the attribute 'enabled' to false
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the User to delete |
{- "message": "Bad request"
}
A call to the /loginservice
will generates a set-cookie header in the response.
The JSESSIONID
cookie must be transfered with each subsequent calls. (If the REST API is used in an application running in a web browser, this is handled automatically by the web browser just like any cookies).
Additional protection agains CSRF attacks is enabled by default for all fresh installations This security relies on X-Bonita-API-Token
information.
The X-Bonita-API-Token
value can be found in the cookie named: X-Bonita-API-Token
.
All the subsequence REST API calls performing changes in the system using DELETE, POST, or PUT HTTP methods must contain the HTTP header below:
X-Bonita-API-Token: example-dummy-not-be-used-value
username required | string the username |
password required | string <password> the password |
tenant | string the user tenant |
redirect | string Default: "false" "true" or "false". "false" indicates that the service should not redirect to Bonita Portal (after a successful login) or to the login page (after a login failure). |
redirectURL | string or null Default: "" the URL of the page to be displayed after login |
# Generate cookie file curl -v -c saved_cookies.txt \ --url 'http://localhost:8080/bonita/loginservice' \ --header 'Content-Type: application/x-www-form-urlencoded' --data-urlencode 'username=install' \ --data-urlencode 'password=install' \ --data-urlencode 'redirect=false' \ --data-urlencode 'redirectURL=' # Reuse the cookie file and set the `X-Bonita-API-Token` header curl -b saved_cookies.txt -X GET \ -- header 'X-Bonita-API-Token: <token>' \ --url 'http://localhost:8080/bonita/API/bpm/process?c=100&p=0'
{- "message": "Bad request"
}
Logout the current user from the system
redirect | string <= 5 characters ^(?:tru|fals)e$ Example: redirect=false Setting the redirect parameter to false indicates that the service should not redirect to the login page after logging out. |
curl -b saved_cookies.txt -X GET --url 'http://localhost:8080/bonita/logoutservice?redirect=false'
{- "message": "Bad request"
}
The username and password are in bonita-platform-community-custom.properties
file.
username | string the username |
password | string <password> the password |
redirect | string "true" or "false". "false" indicates that the service should not redirect to Bonita Portal (after a successful login) or to the login page (after a login failure). |
username=install&password=install&redirect=false
{- "message": "Bad request"
}
The Platform API resources require a platform session. In order to get one, log in as the platform administrator using the platform login service.
The username and password are in bonita-platform-community-custom.properties
file.
username | string the username |
password | string <password> the password |
redirect | string "true" or "false". "false" indicates that the service should not redirect to Bonita Portal (after a successful login) or to the login page (after a login failure). |
username=install&password=install&redirect=false
{- "message": "Bad request"
}
Returns the current Platform
{- "createdBy": "platformAdmin",
- "created": "2014-12-04 15:46:46.065",
- "initialVersion": "6.4.0",
- "state": "STARTED",
- "previousVersion": "",
- "version": "6.4.0"
}
Start or stop the current node, that is, start or stop all services of the current JVM.
Start or stop all services of the current JVM.
state | string Enum: "start" "stop" Platform state |
{- "state": "stop"
}
{- "message": "Bad request"
}
Handle the tenants (Enterprise editions only). This requires a platform session. Log in using the platform login service.
Finds Tenants with pagination params and filters
id
displayName
displayName
Warning: Since Bonita 7.12, multi-tenancy is deprecated
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": 1,
- "creation": "2014-12-04 15:46:46.256",
- "icon": "/default.png",
- "username": "",
- "description": "Default tenant",
- "name": "default",
- "state": "ACTIVATED",
- "password": ""
}
]
Create the Tenant.
Warning: Since Bonita 7.12, multi-tenancy is deprecated. Creating new tenants is strongly discouraged.
Partial Tenant description
name | string the name of the tenant |
description | string the description |
username | string the username |
password | string <password> the password |
{- "name": "MyTenant",
- "description": "My tenant",
- "username": "john",
- "password": "bpm"
}
{- "id": 1,
- "creation": "2014-12-04 15:46:46.256",
- "icon": "/default.png",
- "username": "",
- "description": "Default tenant",
- "name": "default",
- "state": "ACTIVATED",
- "password": ""
}
Returns the single Tenant for the given ID Warning: Since Bonita 7.12, multi-tenancy is deprecated
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Tenant to return |
{- "id": 1,
- "creation": "2014-12-04 15:46:46.256",
- "icon": "/default.png",
- "username": "",
- "description": "Default tenant",
- "name": "default",
- "state": "ACTIVATED",
- "password": ""
}
Update a Tenant
Warning: Since Bonita 7.12, multi-tenancy is deprecated
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Tenant to update. In Subscription edition, it is mandatory; not in Community edition, as there is only one tenant |
Partial Tenant description
name | string the name of the tenant |
description | string the description |
username | string the username |
password | string <password> the password |
icon | string the path of the icon |
state | string Enum: "ACTIVATED" "DEACTIVATED" the tenant state |
{- "name": "MyTenant",
- "description": "My new tenant description",
- "username": "john",
- "password": "bpm",
- "icon": "/default.png",
- "state": "ACTIVATED"
}
{- "message": "Bad request"
}
Delete the single Tenant for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Tenant to delete |
{- "message": "Bad request"
}
Handle the license information. This requires a platform session. Log in using the platform login service. This Web REST API is available in Enterprise editions only, since version 7.11.
Returns the current platform License.
This requires a platform session. Log in using the platform login service.
Warning: Since Bonita 10.2 (2024.3), this API is deprecated: use the API GET /system/information
instead.
{- "licenseStartDate": "string",
- "duration": "string",
- "licenseExpirationDate": "string",
- "numberOfCPUCores": "string",
- "edition": "string",
- "licenseMode": "string",
- "requestKey": "string",
- "subscriptionStartPeriod": "string",
- "subscriptionEndPeriod": "string",
- "caseCounterLimit": 0,
- "caseCounter": 0
}
Returns license information for the current server. Requires to be logged in as a tenant technical administrator.
The same information can be retrieved as a user having simply the Admin profile through the API GET /system/information
.
{- "owner": "string",
- "edition": "string",
- "nb_cpu_cores": "string",
- "expirationDate": 0
}
Handle the platform information. This Web REST API is available since version 10.2 (2024.3). Most of the information returned is only for Subscription editions.
Returns system information details of the platform. Requires to be logged in as a user having the Admin profile.
curl -b saved_cookies.txt -X GET --url 'http://localhost:8080/bonita/API/system/information'
{- "licenseStartDate": "string",
- "duration": "string",
- "licenseExpirationDate": "string",
- "numberOfCPUCores": "string",
- "edition": "string",
- "subscriptionType": "string",
- "licenseMode": "string",
- "managedAppsLimit": 0,
- "licensee": "string",
- "contactInfo": "string",
- "expirationDate": 0,
- "activeFeatures": "string",
- "requestKey": "string",
- "subscriptionStartPeriod": "string",
- "subscriptionEndPeriod": "string",
- "caseCounterLimit": 0,
- "caseCounter": 0
}
Use the page resource to access custom pages, UI Designer pages, layouts or forms and REST API extensions.
Upload Page
Warning: as of 9.0.0, uploading a page using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
Finds Pages with pagination params and filters
displayName
,description
createdBy
,contentType
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "string",
- "creationDate": "string",
- "createdBy": "string",
- "isProvided": true,
- "description": "string",
- "contentName": "string",
- "displayName": "string",
- "updatedBy": "string",
- "lastUpdateDate": "string",
- "urlToken": "string"
}
]
Upload the page content using the portal/pageUpload
. This returns a temporary file name that can be used as input for this operation.
Warning: as of 9.0.0, creating a page using this API is deprecated.
Zip name as named in the temp folder after upload
pageZip | string Zip name as named in the temp folder after upload |
{- "pageZip": "tmp_4338264789005487499.zip:new-bonita-angular-dashboard.zip"
}
{- "id": "string",
- "creationDate": "string",
- "createdBy": "string",
- "isProvided": true,
- "description": "string",
- "contentName": "string",
- "displayName": "string",
- "updatedBy": "string",
- "lastUpdateDate": "string",
- "urlToken": "string"
}
Returns the single Page for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Page to return |
{- "id": "string",
- "creationDate": "string",
- "createdBy": "string",
- "isProvided": true,
- "description": "string",
- "contentName": "string",
- "displayName": "string",
- "updatedBy": "string",
- "lastUpdateDate": "string",
- "urlToken": "string"
}
Use the PUT method to update an existing custom page. To update a custom page, upload the new page content using the pageUpload servlet, which returns a temporary file name, and then call this API with the temporary file name.
Warning: as of 9.0.0, updating a page using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Page to return |
Partial Page description
pageZip | string pageZip as named in the temp folder after upload |
{- "pageZip": "tmp_4338264789005487499.zip:new-bonita-angular-dashboard.zip"
}
{- "message": "Bad request"
}
Delete the single Page for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Page to delete |
{- "message": "Bad request"
}
Finds Profiles with pagination params and filters
name
name
,hasNavigation
name
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
o | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ Example: o=myProp%20ASC can order on attributes |
[- {
- "id": 101,
- "creationDate": "2014-12-04 16:29:23.434",
- "icon": "/profiles/profileDefault.png",
- "createdBy": 1,
- "description": "This is my custom profile",
- "name": "MyCustomProfile",
- "is_default": false,
- "lastUpdateDate": "2014-12-04 16:29:23.434",
- "updatedBy": 1
}
]
Create the Profile
Warning: as of 9.0.0, creating profiles using this API is deprecated.
Partial Profile description
description | string a description of the profile |
name | string profile name |
{- "name": "MyCustomProfile",
- "description": "This is my custom profile"
}
{- "id": 101,
- "creationDate": "2014-12-04 16:29:23.434",
- "icon": "/profiles/profileDefault.png",
- "createdBy": 1,
- "description": "This is my custom profile",
- "name": "MyCustomProfile",
- "is_default": false,
- "lastUpdateDate": "2014-12-04 16:29:23.434",
- "updatedBy": 1
}
Returns the single Profile for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Profile to return |
{- "id": 101,
- "creationDate": "2014-12-04 16:29:23.434",
- "icon": "/profiles/profileDefault.png",
- "createdBy": 1,
- "description": "This is my custom profile",
- "name": "MyCustomProfile",
- "is_default": false,
- "lastUpdateDate": "2014-12-04 16:29:23.434",
- "updatedBy": 1
}
Update the Profile for the given ID
Warning: as of 9.0.0, updating a profile using this API is deprecated.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Profile to return |
Partial Profile description
description | string description of the Profile |
displayName | string display name of the Profile |
{- "displayName": "My app",
- "description": "My application description"
}
{- "message": "Bad request"
}
Delete the single Profile for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the Profile to delete |
{- "message": "Bad request"
}
Upload profiles
Warning: as of 9.0.0, uploading profiles using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
Import profiles
Warning: as of 9.0.0, importing profiles using this service is deprecated.
profilesDataUpload | string Uploaded file |
importPolicy | string Import policy |
{- "message": "Bad request"
}
Finds ProfileEntries with pagination params and filters
name
page
,name
and parent_id
Warning: Since Bonita 7.13, ProfileEntry is deprecated
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
s | string <= 250 characters ^[A-Za-z0-9%]{0,250}$ can search on attributes |
[- {
- "id": "string",
- "icon": "string",
- "index": "string",
- "profile_id": "string",
- "page": "string",
- "description": "string",
- "name": "string",
- "type": "string",
- "isCustom": true,
- "parent_id": "string"
}
]
Create the ProfileEntry Warning: Since Bonita 7.13, ProfileEntry is deprecated
Partial ProfileEntry description
profile_id | string id of the profile that contains this profileEntry |
page | string pageToken (menu name or menu item name) used in a portal menu to identify the page associated with the profileEntry |
description | string description |
name | string name of the profileEntry |
type | string link (if menu item) | folder (if menu) |
isCustom | boolean true | false |
parent_id | string id or parent profileEntry if in a folder |
{- "page": "tasklistingadmin",
- "parent_id": "0",
- "name": "Test menu",
- "profile_id": "102",
- "type": "link",
- "isCustom": false
}
{- "id": "string",
- "icon": "string",
- "index": "string",
- "profile_id": "string",
- "page": "string",
- "description": "string",
- "name": "string",
- "type": "string",
- "isCustom": true,
- "parent_id": "string"
}
Returns the single ProfileEntry for the given ID Warning: Since Bonita 7.13, ProfileEntry is deprecated
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProfileEntry to return |
{- "id": "string",
- "icon": "string",
- "index": "string",
- "profile_id": "string",
- "page": "string",
- "description": "string",
- "name": "string",
- "type": "string",
- "isCustom": true,
- "parent_id": "string"
}
Update the ProfileEntry for the given ID Warning: Since Bonita 7.13, ProfileEntry is deprecated
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProfileEntry to return |
Partial ProfileEntry description
profile_id | string id of the profile that contains this profileEntry |
page | string pageToken (menu name or menu item name) used in a portal menu to identify the page associated with the profileEntry |
description | string description |
name | string name of the profileEntry |
type | string link (if menu item) | folder (if menu) |
isCustom | boolean true | false |
parent_id | string id or parent profileEntry if in a folder |
{- "page": "tasklistingadmin",
- "parent_id": "0",
- "name": "Test menu",
- "profile_id": "102",
- "type": "link",
- "isCustom": false
}
{- "message": "Bad request"
}
Delete the single ProfileEntry for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProfileEntry to delete |
{- "message": "Bad request"
}
Finds ProfileMembers with pagination params and filters
Filter member_type
is mandatory
You can filter on profile_id
, user_id
, role_id
and group_id
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
[- {
- "id": 204,
- "profile_id": 2,
- "role_id": -1,
- "group_id": -1,
- "user_id": 101
}
]
Create the ProfileMember
Partial ProfileMember description
profile_id | string id of the profile for this mapping |
role_id | string id of role, or -1 if the member type is not role |
group_id | string id of group, or -1 if the member type is not group |
user_id | string id of user, or -1 if the member type is not user |
member_type | string Enum: "USER" "ROLE" "GROUP" member type |
{- "profile_id": "2",
- "member_type": "USER",
- "user_id": "101"
}
{- "id": 204,
- "profile_id": 2,
- "role_id": -1,
- "group_id": -1,
- "user_id": 101
}
Returns the single ProfileMember for the given ID
id required | string ID of the ProfileMember to return |
{- "id": 204,
- "profile_id": 2,
- "role_id": -1,
- "group_id": -1,
- "user_id": 101
}
Delete the single ProfileMember for the given ID
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the ProfileMember to delete |
{- "message": "Bad request"
}
Create the Theme Warning: Since Bonita 7.13, theme management is deprecated
Partial Theme description
type | string Enum: "portal" "mobile" theme type |
zipFilePathportal | string tmp zip file Path as uploaded to portal |
{- "type": "portal",
- "zipFilePathportal": "tmp_1939634566964075173.zip"
}
{- "message": "Bad request"
}
Restore the default theme Warning: Since Bonita 7.13, theme management is deprecated
Partial Theme description
type | string Enum: "portal" "mobile" theme type |
{- "type": "portal"
}
{- "message": "Bad request"
}
Upload application
Warning: as of 9.0.0, uploading a living application using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
Upload BDM Access Control
Warning: as of 9.0.0, uploading a BDM Access Control using the portal is deprecated.
file | string <binary> |
tmp_accessControlFileToUpload.xml
Upload a bar file
Warning: as of 9.0.0, uploading a bar file using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
Upload Page
Warning: as of 9.0.0, uploading a page using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
Upload file.
NOTE: If this file is a BDM zip, to do this, your tenant services need to be paused. In Enterprise editions, if you have an access control file installed on your tenant, you need to delete it before installing or updating your BDM.
file | string <binary> |
{- "message": "Bad request"
}
Upload profiles
Warning: as of 9.0.0, uploading profiles using the portal is deprecated.
file | string <binary> |
{- "message": "Bad request"
}
List the available I18nlocales with pagination params and filters
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
[- {
- "name": "English",
- "locale": "en"
}
]
List the available I18ntranslations with pagination params and filters Returns all translations of the product. If a locale is specified in the filter, that translation for that locale are returned. If no locale is specified, the translations in English are returned.
You can filter on locale
p required | integer <int32> >= 0 Default: 0 Example: p=0 index of the page to display |
c required | integer <int32> >= 1 Default: 20 Example: c=10 maximum number of elements to retrieve |
f | Array of strings[^[A-Za-z0-9%]{0,250}$] Example: f=abc%3d123 can filter on attributes with the format f={filter_name}={filter_value} with the name/value pair as url encoded string. |
[- {
- "value": "Gehen Sie dazu zum %profilelink%.",
- "key": "To do so, go to %profilelink%."
}
]
Returns session information for the current user
curl -b saved_cookies.txt -X GET --url 'http://localhost:8080/bonita/API/system/session/unusedId'
{- "user_id": -1,
- "user_name": "install",
- "session_id": "501670672784361704",
- "conf": "[\"F2A1B8E895F82077F59E4F11D001FC5823BC629E\",\"CEEE6B727AB3EA8834DB0A732A1D8E8B230EE368\",\"53A5CA40F466070283D58B8069C98F36A6D4142C\",\"CA34A74DEF742742DAF395904D87FB1CC5EEF78B\",\"1E49E265B8708F2B474226C9F6211A427E2ADC02\",\"691A18FC27888346B838C65BF73858673D85DF4A\",\"835E3A67C0516F6F5178468E3A9CCC7FE8F3AF52\",\"74CD60A3CD84EEE4E13C17197508DAFEA2927F9A\",\"98B3E3369C0724F4CCD784EF257EA7E0AE7BDCB2\"]",
- "is_technical_user": true,
- "is_guest_user": false,
- "version": "7.11.1",
- "copyright": "Bonitasoft © 2020"
}
Returns maintenance details of the platform
curl -b saved_cookies.txt -X GET --url 'http://localhost:8080/bonita/API/system/maintenance'
{- "maintenanceState": "DISABLED",
- "maintenanceMessage": "maintenance msg",
- "maintenanceMessageActive": true
}
Update maintenance details
Maintenance details; One or all attributes can be updated
maintenanceState | string Enum: "ENABLED" "DISABLED" maintenance state |
maintenanceMessage | string maintenance message |
maintenanceMessageActive | boolean is maintenance message active |
{- "maintenanceState": "DISABLED",
- "maintenanceMessage": "maintenance msg",
- "maintenanceMessageActive": true
}
{- "maintenanceState": "DISABLED",
- "maintenanceMessage": "maintenance msg",
- "maintenanceMessageActive": true
}
Pause and resume tenant services in order to do maintenance on a tenant.
Warning: since Bonita 9.0.0, /API/system/tenant API resource is deprecated. Use /API/system/maintenance instead to retrieve the maintenance state.
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the tenant |
{- "id": 1,
- "paused": false
}
Pause or resume the current tenant.
Warning: since Bonita 9.0.0, /API/system/tenant API resource is deprecated. Use /API/system/maintenance instead to enable the maintenance mode (same behavior as pausing the tenant).
id required | string <= 250 characters ^[A-Za-z0-9\_\-\.]{0,250}$ ID of the tenant |
Partial SystemTenant description
paused | string wether the system tenant should be paused or not |
{- "paused": true
}
{- "message": "Bad request"
}
Create REST API extensions to use third party systems (databases, web services, Bonita Engine, etc) data in forms and pages.
REST API extensions can be used to query business data, Bonita Engine APIs, or an external information system (such as a database, web service, LDAP directory...). They also help to keep a clean separation between the front-end (forms, pages, and interfaces visible to users) and the back-end (processes).
Supports any type of files, used to upload a file before submitting a process or task form with a document in its contract.
Supports any type of files, used to upload a file before submitting a process or task form with a document in its contract
file | string <binary> |
{- "message": "Bad request"
}