openapi: 3.2.0 info: license: name: GPL-v2.0 url: http://www.gnu.org/licenses/gpl-2.0.txt version: 1.0.9 title: Bonita Process API description: "

\nDownload OpenAPI specification\nDownload Postman collection\n

\n\n
\n\nThe REST API lets you access the data with HTTP requests; it is useful when implementing rich web forms / pages for a good user experience.\n\nAn open source [java client](https://github.com/bonitasoft/bonita-java-client) is implemented above the HTTP API. It is available on [Maven central](https://search.maven.org/search?q=g:%22org.bonitasoft.web%22%20AND%20a:%22bonita-java-client%22).\n\nIf 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\naccess to all Bonita objects (like processes, tasks, users, connectors etc.), to execute operations on them (create, retrieve, update, delete).\nYou can use these operations to create a workflow with Bonita and integrate it into your application. The Bonita Engine remains responsible for executing\nthe workflow logic (connectors, gateways with conditions, messages, timers etc.) while your application gives access to the workflow.\nUsers can manage processes and tasks, and perform administrative activities.\n\n### API Extensions\n\nYou can create [Rest API Extensions](https://documentation.ofelia.com/bonita/latest/api/rest-api-extensions) to extend the Rest API by adding missing resources (not provided by the Rest API).\nIt 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).\n\n### Create a resource\n\n| Request URL | `http://.../API/{API_name}/{resource_name}/ `|\n|:-|:-|\n| Request Method | POST|\n| Request Payload | an item in JSON|\n| Response | the same item in JSON, containing the values provided in the posted item, completed with default values and identifiers provided by Bonita Engine.|\n\n### Read a resource\n\n| Request URL | `http://.../API/{API_name}/{resource_name}/{id} `|\n|:-|:-|\n| Request Method | GET|\n| Response | an item in JSON|\n\nExample `http://.../API/identity/user/5 `\n\n#### Extend resource response\n\nOn 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.\nThis means that instead of retrieving the ID or a parent or referenced resource, you can retrieve the full object.\n\nFor 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.\nThe supported deploy values for a task include its process (d=processId).\n\nSpecifiy 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`\n\n#### With compound identifier\n\nThe order of the identifier parts for each resource type is given in the table above.\n\n| Request URL | `http://.../API/{API_name}/{resource_name}/{id_part1}/{id_part2} `|\n|:-|:-|\n| Request Method | GET|\n| Response | an item in JSON|\n\nExample `http://.../API/identity/membership/5/12/24 `\n\n### Update a resource\n\n| Request URL | `http://.../API/{API_name}/{resource_name}/{id} `|\n|:-|:-|\n| Request Method | PUT|\n| Request Payload | a map in JSON containing the new values for the attributes you want to change.|\n| Response | the corresponding item in JSON with new values where you requested a modification|\n\nExample `http://.../API/identity/user/5`\n\n#### With compound identifier:\n\nResponse: the corresponding item in JSON with new values where you requested a modification.\n\n| Request URL | `http://.../API/{API_name}/{resource_name}/{id_part1}/{id_part2} `|\n|:-|:-|\n| Request Method | PUT|\n| Request Payload | ` a map in JSON containing the new values for the attributes you want to change `|\n| Response | ` the corresponding item in JSON with new values where you requested a modification`|\n\nExample\n`http://.../API/identity/membership/5/12/24 `\n\n### Delete resources\n\nUse the DELETE request to remove multiple resources.\n\n| Request URL | `http://.../API/{API_name}/{resource_name}/ `|\n|:-|:-|\n| Request Method | DELETE|\n| Request Payload | A list of identifiers in JSON, for example `[\"id1\",\"id2\",\"id3\"]`. Compound identifiers are separated by '/' characters.|\n| Response | `empty `|\n\nExample\n`http://.../API/identity/membership/ `\n\n### Search for a resource\n\nThe required object is specified with a set of filters in the request URL. The URL parameters must be URL-encoded.\n\nResults 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.\nIf you are searching for business data using a custom query, there must be a [count query in the BDM](https://documentation.ofelia.com/bonita/latest/data/define-and-deploy-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).\nFor business data default queries, the count query is defined automatically.\n\nThe available filters are the attributes of the item plus some specific filters defined by each item.\n\n| Request URL | `http://.../API/{API_name}/{resource_name}?p={page}&c={count}&o={order}&s={query}&f={filter_name}={filter_value}&f=... `|\n|:-|:-|\n| Request Method | GET|\n| Response | an array of items in JSON|\n\nExample\n`/API/identity/user?p=0&c=10&o=firstname&s=test&f=manager_id=3`\n\nFor a GET method that retrieves more than one instance of a resource, you can specify the following request parameters:\n\n* p (Mandatory): index of the page to display\n* c (Mandatory): maximum number of elements to retrieve\n* o: order of presentation of values in response: must be either `attributeName ASC` or `attributeName DESC`. The final order parameter value must be URL encoded.\n* f: list of filters, specified as `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.\n The attributes you can filter on are specific to the resource.\n* s: search on name or search indexes. Before Bonita 2024.1, the matching policy depended on the configuration of [word-based search](https://documentation.ofelia.com/bonita/2023.2/api/using-list-and-search-methods#word_based_search).\n For example, if word-based search was enabled, `s=Valid` returned matches containing the string \"valid\" at the start of any word in the attribute value word,\n such as \"Valid address\", \"Not a valid address\", and \"Validated request\" but not \"Invalid request\".\n 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\".\n 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.\n\n### Errors\n\nThe API uses standard HTTP status codes to indicate the success or failure of the API call.\n\nIf you get a `401` response code :\n - make sure that the cookies have been transfered with the call\n - make sure that the cookies transfered are the ones generated during the last sucessfull login call\n - if one of the PUT, DELETE or POST method is used, make sure that the `X-Bonita-API-Token` header is included\n - if the X-Bonita-API-Token header is included, make sure that the value is the same as the one of the cookie generated during the last login\n - Maybe a logout was issued or the session has expired; try to log in again, and re run the request with the new cookies and the new value for the `X-Bonita-API-Token` header.\n" x-logo: url: images/ofelia-logo.svg backgroundColor: '#19465f' altText: Bonita API href: / servers: - url: http://localhost:8080/bonita description: Sample url for a local development server. security: - bonita_auth: [] bonita_token: [] - bearer_auth: [] tags: - name: Process x-displayName: Process description: Deploy and manage process definitions. In addition, you can instantiate a process, which will create a new process instance (case). paths: /API/bpm/process: get: tags: - Process summary: Finds Processes description: 'Finds Processes with pagination params and filters - can order (default is ASC) on `name`, `version`, `deploymentDate`, `deployedBy`, `activationState`, `configurationState`, `processId`, `displayName`, `lastUpdateDate`, `categoryId`, `label` - can search on `name`, `displayName` or `version` - can filter on `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` ' operationId: searchProcesses parameters: - $ref: '#/components/parameters/pageIndex' - $ref: '#/components/parameters/pageCount' - $ref: '#/components/parameters/pageFilter' - $ref: '#/components/parameters/pageOrder' - $ref: '#/components/parameters/pageSearch' responses: '200': description: 'Success ' headers: Content-Range: schema: type: integer format: int64 description: The total number of matching items content: application/json: schema: type: array items: $ref: '#/components/schemas/ProcessDefinition' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' 5XX: $ref: '#/components/responses/ServerError' post: tags: - Process summary: Create the Process deprecated: true description: 'Create the Process. A process resource is created using the content of a .bar file that has previously been uploaded, using the [processUpload servlet](#operation/uploadProcess), to get the process archive path. Warning: as of 9.0.0, creating a process using this API is deprecated. ' operationId: createProcess requestBody: content: application/json: schema: $ref: '#/components/schemas/ProcessCreateRequest' description: Partial Process description required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProcessDefinition' description: 'Success ' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' 5XX: $ref: '#/components/responses/ServerError' x-codegen-request-body-name: body delete: tags: - Process summary: Delete the Process by IDs description: '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.** ' operationId: deleteProcessByIds requestBody: content: application/json: schema: type: array items: type: string example: - '1' - '2' - '3' responses: '200': $ref: '#/components/responses/OK' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' 5XX: $ref: '#/components/responses/ServerError' /API/bpm/process/{id}: get: tags: - Process summary: Finds the Process by ID description: 'Returns the single Process for the given ID ' operationId: getProcessById parameters: - description: ID of the Process to return in: path name: id required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ responses: '200': description: 'Success ' content: application/json: schema: $ref: '#/components/schemas/ProcessDefinition' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' 5XX: $ref: '#/components/responses/ServerError' put: tags: - Process summary: Update the Process by ID deprecated: true description: 'Update the Process for the given ID Warning: as of 9.0.0, updating a process using this API is deprecated. ' operationId: updateProcessById parameters: - description: ID of the Process to return in: path name: id required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ requestBody: content: application/json: schema: $ref: '#/components/schemas/ProcessUpdateRequest' description: Partial Process description required: true responses: '200': $ref: '#/components/responses/OK' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' 5XX: $ref: '#/components/responses/ServerError' delete: tags: - Process summary: Delete the Process by ID description: '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.** ' operationId: deleteProcessById parameters: - description: ID of the Process to delete in: path name: id required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ responses: '200': $ref: '#/components/responses/OK' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' 5XX: $ref: '#/components/responses/ServerError' /API/bpm/process/{id}/design: get: tags: - Process summary: Finds the Process design by ID description: 'Returns the single Process design for the given ID ' operationId: getProcessDesignById parameters: - description: ID of the Process to get the design from in: path name: id required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ responses: '200': description: 'Success ' content: application/json: schema: $ref: '#/components/schemas/DesignProcessDefinition' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' 5XX: $ref: '#/components/responses/ServerError' /API/bpm/process/{id}/contract: get: tags: - Process summary: Finds the Process contract by ID description: 'Returns the process contract for the given ID ' operationId: getProcessContractById parameters: - description: ID of the Process to get the contract from in: path name: id required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ responses: '200': description: 'Success ' content: application/json: schema: $ref: '#/components/schemas/Contract' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' 5XX: $ref: '#/components/responses/ServerError' /API/bpm/process/{id}/instantiation: post: tags: - Process summary: Instanciate the process description: 'Instanciate the process with the provided contract values. ' operationId: instanciateProcess parameters: - name: id description: ID of the process to instanciate in: path required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ requestBody: content: application/json: schema: type: object additionalProperties: true example: ticket_account: CustomerA ticket_description: issue description ticket_subject: Issue 1 description: A JSON object matching process contract. required: true responses: '201': description: Return the created process instance ID content: application/json: schema: $ref: '#/components/schemas/ProcessInstantiationResponse' '400': description: Bad request. content: application/json: schema: allOf: - $ref: '#/components/schemas/Error' example: message: 'USERNAME=walter.bates | Contract is not valid: ' exception: class org.bonitasoft.engine.bpm.contract.ContractViolationException explanations: - Expected input [ticket_account] is missing - Expected input [ticket_description] is missing - Expected input [ticket_subject] is missing '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '429': description: Case creation limit reached (Community 2024.3+ only) headers: Retry-After: schema: type: string format: date-time description: Date when case counter will be refilled content: application/json: schema: type: object properties: code: type: number description: The response status code description: type: string description: The status description reasonPhrase: type: string description: The detail of the reason example: code: 429 description: Unable to start the process with ID 5524355418393634511 reasonPhrase: Case creation limit reached. 5XX: $ref: '#/components/responses/ServerError' x-codegen-request-body-name: body /API/bpm/processName: get: tags: - Process summary: Search process names description: "Searches process deployment information grouped by `(name, displayName)`, returning one entry per\ndistinct name and display name, each carrying the list of its deployed versions.\n\n- can order on `displayName` or `name` (default is `displayName ASC`). A single sort clause is\n applied: a compound order such as `displayName ASC, name DESC` is rejected with a `400`.\n- can search (`s`) on `name` or `displayName`. The term selects which groups are returned; a\n returned group always lists all of its versions allowed by the `activationState` filter.\n- can filter on `activationState` with the value `ENABLED` or `DISABLED`. An unknown value is\n rejected with a `400`; other filter keys are ignored.\n\nThe `Content-Range` header reports the total number of groups, not the number of versions.\n" operationId: searchProcessNames parameters: - $ref: '#/components/parameters/pageIndex' - $ref: '#/components/parameters/pageCount' - $ref: '#/components/parameters/pageFilter' - $ref: '#/components/parameters/pageOrder' - $ref: '#/components/parameters/pageSearch' responses: '200': description: Successful operation headers: Content-Range: schema: type: integer format: int64 description: The total number of matching groups content: application/json: schema: type: array items: $ref: '#/components/schemas/ProcessName' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' 5XX: $ref: '#/components/responses/ServerError' /API/bpm/processConnector/{id}/{connectorImplId}/{connectorImplVersion}: put: tags: - Process summary: Update the Process Connector by Process ID deprecated: true description: '![edition](https://img.shields.io/badge/edition-entreprise-blue) Update the ProcessConnector for the given ID Warning: as of 9.0.0, updating a Process Connector using this API is deprecated. ' operationId: updateProcessConnectorByProcessId parameters: - description: ID of the process to update in: path name: id required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ - description: ID of the Process Connector implementation to update in: path name: connectorImplId required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ - description: Version of the Process Connector implementation to update in: path name: connectorImplVersion required: true schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateProcessConnectorByProcessIdRequest' description: Partial ProcessConnector description required: true responses: '200': $ref: '#/components/responses/OK' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' 5XX: $ref: '#/components/responses/ServerError' /portal/processUpload: post: tags: - Process deprecated: true summary: Upload a bar file description: 'Upload a bar file Warning: as of 9.0.0, uploading a bar file using the portal is deprecated. ' operationId: uploadProcess requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/FileUploadRequest' responses: '200': description: the temporary file name once uploaded on the server content: text/plain: schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9\_\-\.]{0,250}$ example: tmp_11199343585454336281.bar '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' 5XX: $ref: '#/components/responses/ServerError' components: schemas: ContractConstraint: type: object properties: name: description: constraint name type: string expression: description: constraint expression type: string explanation: description: constraint explanation type: string inputNames: type: array items: type: string ProcessDefinition: type: object description: '' properties: id: description: the identifier of the process definition (long) type: string icon: description: icon path type: string displayDescription: description: the human readable activity description type: string deploymentDate: description: the date when the process definition was deployed type: string description: description: the process description type: string activationState: $ref: '#/components/schemas/ActivationState' name: description: the process name type: string deployedBy: description: the id of the user who deployed the process type: string displayName: description: the human readable process description type: string actorinitiatorid: description: the id of the actor that can initiate process instances of the process type: string last_update_date: description: the date when the process definition was last updated type: string configurationState: $ref: '#/components/schemas/ConfigurationState' version: description: the version of the process type: string ContractInput: type: object properties: description: description: input description type: string name: description: input name type: string multiple: description: true if input contains multiple values type: string type: $ref: '#/components/schemas/ContractInputType' inputs: type: array items: $ref: '#/components/schemas/ContractInput' ContractInputType: type: string description: the contract input type (string) enum: - TEXT - BOOLEAN - DATE - INTEGER - DECIMAL - BYTE_ARRAY - FILE - LONG - LOCALDATE - LOCALDATETIME - OFFSETDATETIME ProcessName: type: object description: 'A group of deployed processes that share the same `(name, displayName)` pair, with the list of their deployed versions. Returned by `GET /API/bpm/processName`, which collapses the process deployment information into one entry per distinct name and display name. ' required: - name - displayName - versions properties: name: description: Technical name shared by every version in this group. type: string displayName: description: Human-readable name shared by every version in this group. Defaults to the process technical name when no display name was set at deployment. type: string versions: description: 'Deployed versions of the process sharing this name and display name. When an `activationState` filter is supplied, only the versions in that state are listed. Always contains at least one entry. ' type: array minItems: 1 items: type: string example: name: InvoiceApproval displayName: Invoice Approval versions: - '1.0' - '1.1' - '2.0' ActivationState: description: the state of the process definition (ENABLED or DISABLED) type: string enum: - ENABLED - DISABLED ProcessUpdateRequest: type: object properties: displaydescription: description: description of the Process type: string displayName: description: display name of the Process type: string activationState: $ref: '#/components/schemas/ActivationState' example: displayName: Leave booking process UpdateProcessConnectorByProcessIdRequest: type: object properties: id: description: Id of the process for which to update the connector, combined with connector name and version separated by slashes (x/y/z) type: string implementation: description: Previously uploaded temp file name of the updated version of the connector (returned by the [upload file api](#operation/uploadFile)) type: string example: id: 8491796209115952722/scripting-groovy-script/1.0.1 implementation: tmp_7006630415905915150.zip ConfigurationState: description: the configuration state of the process (UNRESOLVED or RESOLVED) type: string enum: - RESOLVED - UNRESOLVED FlowElementContainerDefinition: type: object description: Allows to access all flow elements (activities, gateways, events and transitions) of a process or sub-process. properties: activities: type: array items: type: object additionalProperties: true transitions: type: array items: type: object additionalProperties: true gatewaysList: type: array items: type: object additionalProperties: true startEvents: type: array items: type: object additionalProperties: true intermediateCatchEvents: type: array items: type: object additionalProperties: true intermediateThrowEvents: type: array items: type: object additionalProperties: true endEvents: type: array items: type: object additionalProperties: true dataDefinitions: type: array items: type: object additionalProperties: true documentDefinitions: type: array items: type: object additionalProperties: true connectors: type: array items: type: object additionalProperties: true businessDataDefinitions: type: array items: type: object additionalProperties: true documentListDefinitions: type: array items: type: object additionalProperties: true ProcessCreateRequest: type: object properties: fileupload: description: the bar file to deploy (previously uploaded in tmp folder) type: string example: fileupload: tmp_4431838172282406107.bar Expression: type: object properties: id: description: the expression id type: string name: description: the expression name type: string content: description: the expression content type: string expressionType: description: the expression type type: string returnType: description: the expression return type type: string interpreter: description: the expression interpreter type: string dependencies: description: the expression dependencies type: array items: $ref: '#/components/schemas/Expression' DesignProcessDefinitionContext: type: object description: The process definition expressions properties: key: type: string expression: $ref: '#/components/schemas/Expression' DesignProcessDefinition: type: object description: Represents the Design Definition of a process. It gives access to process attributes. properties: displayName: description: The process definition display name type: string displayDescription: description: The process definition display description name type: string flowElementContainer: $ref: '#/components/schemas/FlowElementContainerDefinition' parameters: description: The process parameter definitions type: array items: $ref: '#/components/schemas/DesignProcessDefinitionParamater' actorsList: description: The list of process actor definitions type: array items: $ref: '#/components/schemas/ActorDefinition' actorInitiator: $ref: '#/components/schemas/ActorDefinition' stringIndexLabels: description: The process definition labels type: array items: type: string stringIndexValues: description: The process definition expressions type: array items: $ref: '#/components/schemas/Expression' contract: description: the process instantiation contract $ref: '#/components/schemas/Contract' context: description: The process definition expressions type: array items: $ref: '#/components/schemas/DesignProcessDefinitionContext' Contract: type: object properties: constraints: type: array items: $ref: '#/components/schemas/ContractConstraint' inputs: type: array items: $ref: '#/components/schemas/ContractInput' ActorDefinition: type: object description: Actor definition properties: name: description: the actor name type: string description: description: the actor description type: string initiator: description: true, if this actor can start the process type: boolean ProcessInstantiationResponse: type: object properties: caseId: type: string example: caseId: '12345678' FileUploadRequest: type: object description: The file to upload properties: file: type: string format: binary DesignProcessDefinitionParamater: type: object properties: type: description: the parameter type type: string description: description: the parameter description type: string name: description: the parameter name type: string Error: type: object additionalProperties: true properties: message: type: string description: The error message exception: type: string description: The exception type explanations: description: Further details on the error type: array items: type: string responses: ServerError: description: Unexpected error. content: application/json: schema: $ref: '#/components/schemas/Error' example: message: An unexpected error occured. NotFound: description: The resource for the specified ID was not found. content: application/json: schema: $ref: '#/components/schemas/Error' example: message: Resource not found. BadRequest: description: Bad request. content: application/json: schema: $ref: '#/components/schemas/Error' example: message: Bad request OK: description: OK Forbidden: description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action. content: application/json: schema: $ref: '#/components/schemas/Error' example: message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action. Unauthorized: description: Authorization information is missing or invalid. content: application/json: schema: $ref: '#/components/schemas/Error' example: message: Unauthorized parameters: pageIndex: description: index of the page to display explode: true in: query name: p example: '0' required: true schema: type: integer minimum: 0 default: 0 format: int32 style: form pageOrder: description: can order on attributes explode: true in: query name: o required: false schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9%]{0,250}$ style: form example: myProp%20ASC pageFilter: description: can filter on attributes with the format f={filter\_name}={filter\_value} with the name/value pair as url encoded string. explode: true in: query name: f required: false schema: type: array items: type: string maxLength: 250 pattern: ^[A-Za-z0-9%]{0,250}$ style: form example: abc%3d123 pageSearch: description: can search on attributes explode: true in: query name: s required: false schema: type: string maxLength: 250 pattern: ^[A-Za-z0-9%]{0,250}$ style: form pageCount: description: maximum number of elements to retrieve explode: true in: query name: c example: '10' required: true schema: type: integer minimum: 1 default: 20 format: int32 style: form securitySchemes: bonita_auth: name: JSESSIONID description: 'To call the REST API, you must first log on with a user registered in the Engine database. Please refer to the __[Login API](#operation/login)__ operations section. ' type: apiKey in: cookie bonita_token: name: X-Bonita-API-Token description: 'To call the REST API, you must first log on with a user registered in the Engine database. Please refer to the __[Login API](#operation/login)__ operations section. ' type: apiKey in: header bearer_auth: description: '![edition](https://img.shields.io/badge/edition-entreprise-blue) When Bonita runtime is configured for SSO with openID Connect it is possible To call the REST API directly with a Bearer Authorization header containing the access token. ' type: http scheme: bearer x-tagGroups: - name: Authentication tags: - Authentication - PlatformAuthentication - name: Application tags: - Application - ApplicationMenu - ApplicationPage - FormMapping - name: BDM tags: - BDM - BusinessDataQuery - Business Data Operations - BDMAccessControl - DataRetention - name: BPM tags: - Activity - ArchivedActivity - HumanTask - ManualTask - Task - UserTask - ArchivedHumanTask - ArchivedManualTask - ArchivedTask - ArchivedUserTask - ActivityVariable - ArchivedActivityVariable - ProcessInstanceVariable - ArchivedProcessInstanceVariable - ProcessInstanceDocument - ArchivedProcessInstanceDocument - Actor - ActorMember - ProcessInstance - ArchivedProcessInstance - ProcessInstanceInfo - ProcessInstanceComment - ArchivedProcessInstanceComment - Process - Diagram - ProcessInfo - ProcessParameter - ProcessResolutionProblem - ProcessSupervisor - ProcessConnectorDependency - ConnectorFailure - ConnectorInstance - ArchivedConnectorInstance - FlowNode - ArchivedFlowNode - Failure - ArchivedFailure - TimerEventTrigger - Message - Signal - Delegation - name: Custom user info tags: - CustomUserDefinition - CustomUserValue - CustomUser - name: Identity tags: - ProfessionalContactData - Group - Membership - Role - User - Authentication - name: Platform tags: - PlatformAuthentication - Platform - License - Information - name: Portal tags: - Page - Profile - ProfileEntry - ProfileMember - Theme - Upload - name: System tags: - I18nlocale - I18ntranslation - Log - Session - Maintenance - name: Other tags: - RestAPIextensions - name: Upload tags: - FormFileUpload