Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/bonitasoft-com:bonitasoft-com-processinstance-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Bonitasoft Com Process Instance API
version: 1.0.9
license:
name: GPL-v2.0
url: http://www.gnu.org/licenses/gpl-2.0.txt
x-logo:
url: images/ofelia-logo.svg
backgroundColor: '#19465f'
altText: Bonita API
href: /
description: 'Operations tagged ProcessInstance across 2 of this provider''s published API definitions: bonita-java-client-openapi.yaml, bonita-java-client.yaml. Each path carries the servers of the definition it was published in.'
servers:
- description: Sample url for a local development server.
url: http://localhost:8080/bonita
security:
- bonita_auth: []
bonita_token: []
- bearer_auth: []
tags:
- description: ProcessInstance
name: ProcessInstance
x-displayName: ProcessInstance
paths:
/API/bpm/case:
delete:
description: '!edition !edition
Delete a list of ProcessInstances for the given IDs'
operationId: deleteProcessInstanceByIds
requestBody:
content:
application/json:
schema:
items:
description: ProcessInstance id
type: string
type: array
responses:
'200':
description: OK
'400':
content:
application/json:
example:
message: Bad request
schema:
$ref: '#/components/schemas/Error'
description: Bad request.
'401':
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization information is missing or invalid.
'403':
content:
application/json:
example:
message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
schema:
$ref: '#/components/schemas/Error'
description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
'404':
content:
application/json:
example:
message: Resource not found.
schema:
$ref: '#/components/schemas/Error'
description: The resource for the specified ID was not found.
5XX:
content:
application/json:
example:
message: An unexpected error occured.
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error.
summary: Delete the ProcessInstance by batch
tags:
- ProcessInstance
x-content-type: application/json
x-accepts:
- application/json
get:
description: 'Finds ProcessInstances with pagination params and filters
You can filter on:
* `processDefinitionId`: The process definition ID
* `rootCaseId`: the root process instance ID (since version 10.3 - 2025.1)
* `name`: the process name
* `started_by`: the ID of the user who started the process
* `team_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 time
* `searchIndex1Value`, `searchIndex2Value`, `searchIndex3Value`, `searchIndex4Value`, `searchIndex5Value`: the value of the corresponding search index (since version 10.3 - 2025.1)'
operationId: searchProcessInstances
parameters:
- description: index of the page to display
example: '0'
explode: true
in: query
name: p
required: true
schema:
default: 0
format: int32
minimum: 0
type: integer
style: form
- description: maximum number of elements to retrieve
example: '10'
explode: true
in: query
name: c
required: true
schema:
default: 20
format: int32
minimum: 1
type: integer
style: form
- description: can filter on attributes with the format f={filter\_name}={filter\_value} with the name/value pair as url encoded string.
example: abc%3d123
explode: true
in: query
name: f
required: false
schema:
items:
maxLength: 250
pattern: ^[A-Za-z0-9%]{0,250}$
type: string
type: array
style: form
- description: can order on attributes
example: myProp%20ASC
explode: true
in: query
name: o
required: false
schema:
maxLength: 250
pattern: ^[A-Za-z0-9%]{0,250}$
type: string
style: form
responses:
'200':
content:
application/json:
schema:
items:
$ref: '#/components/schemas/ProcessInstance'
type: array
description: 'Success '
headers:
Content-Range:
description: The total number of matching items
explode: false
schema:
format: int64
type: integer
style: simple
'400':
content:
application/json:
example:
message: Bad request
schema:
$ref: '#/components/schemas/Error'
description: Bad request.
'401':
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization information is missing or invalid.
'403':
content:
application/json:
example:
message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
schema:
$ref: '#/components/schemas/Error'
description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
5XX:
content:
application/json:
example:
message: An unexpected error occured.
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error.
summary: Finds ProcessInstances
tags:
- ProcessInstance
x-accepts:
- application/json
post:
description: '!edition !edition
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.'
operationId: createProcessInstance
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProcessInstanceCreateRequest'
description: '**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.
'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ProcessInstance'
description: 'Success '
'400':
content:
application/json:
example:
message: Bad request
schema:
$ref: '#/components/schemas/Error'
description: Bad request.
'401':
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization information is missing or invalid.
'403':
content:
application/json:
example:
message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
schema:
$ref: '#/components/schemas/Error'
description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
'429':
content:
application/json:
example:
message: Error occurred when starting process 5524355418393634511. Case creation limit reached.
exception: org.bonitasoft.web.toolkit.client.common.exception.api.APITooManyRequestException
schema:
$ref: '#/components/schemas/createProcessInstance_429_response'
description: Case creation limit reached (Community 2024.3+ only)
headers:
Retry-After:
description: Date when case counter will be refilled
explode: false
schema:
format: date-time
type: string
style: simple
5XX:
content:
application/json:
example:
message: An unexpected error occured.
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error.
summary: Create the ProcessInstance
tags:
- ProcessInstance
x-codegen-request-body-name: body
x-content-type: application/json
x-accepts:
- application/json
servers:
- description: Sample url for a local development server.
url: http://localhost:8080/bonita
/API/bpm/case/{id}:
delete:
description: Delete the single ProcessInstance for the given ID
operationId: deleteProcessInstanceById
parameters:
- description: ID of the ProcessInstance to delete
explode: false
in: path
name: id
required: true
schema:
maxLength: 250
pattern: ^[A-Za-z0-9\_\-\.]{0,250}$
type: string
style: simple
responses:
'200':
description: OK
'400':
content:
application/json:
example:
message: Bad request
schema:
$ref: '#/components/schemas/Error'
description: Bad request.
'401':
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization information is missing or invalid.
'403':
content:
application/json:
example:
message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
schema:
$ref: '#/components/schemas/Error'
description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
'404':
content:
application/json:
example:
message: Resource not found.
schema:
$ref: '#/components/schemas/Error'
description: The resource for the specified ID was not found.
5XX:
content:
application/json:
example:
message: An unexpected error occured.
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error.
summary: Delete the ProcessInstance by ID
tags:
- ProcessInstance
x-accepts:
- application/json
get:
description: Returns the single ProcessInstance for the given ID
operationId: getProcessInstanceById
parameters:
- description: ID of the ProcessInstance to return
explode: false
in: path
name: id
required: true
schema:
maxLength: 250
pattern: ^[A-Za-z0-9\_\-\.]{0,250}$
type: string
style: simple
- description: Count of related resources
explode: true
in: query
name: n
required: false
schema:
enum:
- activeFlowNodes
- failedFlowNodes
type: string
style: form
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ProcessInstance'
description: 'Success '
'400':
content:
application/json:
example:
message: Bad request
schema:
$ref: '#/components/schemas/Error'
description: Bad request.
'401':
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization information is missing or invalid.
'403':
content:
application/json:
example:
message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
schema:
$ref: '#/components/schemas/Error'
description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
'404':
content:
application/json:
example:
message: Resource not found.
schema:
$ref: '#/components/schemas/Error'
description: The resource for the specified ID was not found.
5XX:
content:
application/json:
example:
message: An unexpected error occured.
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error.
summary: Finds the ProcessInstance by ID
tags:
- ProcessInstance
x-accepts:
- application/json
put:
description: Only the state of a ProcessInstance (with the given ID) can be updated in order to cancel it (since version 10.3 - 2025.1).
operationId: updateProcessInstanceById
parameters:
- description: ID of the ProcessInstance to update
explode: false
in: path
name: id
required: true
schema:
maxLength: 250
pattern: ^[A-Za-z0-9\_\-\.]{0,250}$
type: string
style: simple
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProcessInstanceUpdateRequest'
description: Cancel the ProcessInstance.
required: true
responses:
'200':
description: OK
'400':
content:
application/json:
example:
message: Bad request
schema:
$ref: '#/components/schemas/Error'
description: Bad request.
'401':
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization information is missing or invalid.
'403':
content:
application/json:
example:
message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
schema:
$ref: '#/components/schemas/Error'
description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
'404':
content:
application/json:
example:
message: Resource not found.
schema:
$ref: '#/components/schemas/Error'
description: The resource for the specified ID was not found.
5XX:
content:
application/json:
example:
message: An unexpected error occured.
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error.
summary: Update the ProcessInstance by ID
tags:
- ProcessInstance
x-content-type: application/json
x-accepts:
- application/json
servers:
- description: Sample url for a local development server.
url: http://localhost:8080/bonita
/API/bpm/case/{id}/context:
get:
description: Returns the Context for the given ProcessInstance ID
operationId: getContextByProcessInstanceId
parameters:
- description: ID of the ProcessInstance that has the Context to return
explode: false
in: path
name: id
required: true
schema:
maxLength: 250
pattern: ^[A-Za-z0-9\_\-\.]{0,250}$
type: string
style: simple
responses:
'200':
content:
application/json:
example:
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
schema:
additionalProperties: true
type: object
description: 'Success '
'400':
content:
application/json:
example:
message: Bad request
schema:
$ref: '#/components/schemas/Error'
description: Bad request.
'401':
content:
application/json:
example:
message: Unauthorized
schema:
$ref: '#/components/schemas/Error'
description: Authorization information is missing or invalid.
'403':
content:
application/json:
example:
message: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
schema:
$ref: '#/components/schemas/Error'
description: Forbidden, The request contained valid data and was understood by the server, but the server is refusing action.
'404':
content:
application/json:
example:
message: Resource not found.
schema:
$ref: '#/components/schemas/Error'
description: The resource for the specified ID was not found.
5XX:
content:
application/json:
example:
message: An unexpected error occured.
schema:
$ref: '#/components/schemas/Error'
description: Unexpected error.
summary: Finds the Context by ProcessInstance ID
tags:
- ProcessInstance
x-accepts:
- application/json
servers:
- description: Sample url for a local development server.
url: http://localhost:8080/bonita
components:
schemas:
ProcessInstance:
description: ProcessInstance (Case) is an instance of a process. When you start a process, it creates a process instances.
example:
id: 1
end_date": ''
failedFlowNodes": 9
startedBySubstitute": 345
start": 2014-11-27 17:55:00.906000
activeFlowNodes": '9'
state": started
rootCaseId": '1'
callerId": '-1'
started_by": 989
processDefinitionId": '5777042023671752656'
last_update_date": 2014-11-27 17:55:00.906000
searchIndex1Label: mySearchIndex1Label
searchIndex2Label: mySearchIndex2Label
searchIndex3Label: mySearchIndex3Label
searchIndex4Label: mySearchIndex4Label
searchIndex5Label: mySearchIndex5Label
searchIndex1Value: mySearchIndex1Value
searchIndex2Value: mySearchIndex2Value
searchIndex3Value: mySearchIndex3Value
searchIndex4Value: mySearchIndex4Value
searchIndex5Value: mySearchIndex5Value
properties:
id:
description: the identifier of the ProcessInstance (Case)
type: string
end_date:
description: the date set when the process instance is closed
type: string
failedFlowNodes:
description: count of failed flow nodes if parameter n=failedFlowNodes is given
type: string
startedBySubstitute:
description: the identifier of the substitute user (as Process manager or Administrator) who started the process. It can be also the substitute user if d=startedBySubstitute is given.
type: string
start:
description: the starting date of the case
type: string
activeFlowNodes:
description: count of active flow nodes if parameter n=activeFlowNodes is given
type: string
state:
description: 'state: an enum that represent the state of the process instances'
enum:
- initializing
- started
- suspended
- cancelled
- aborted
- completing
- completed
- error
- aborting
type: string
rootCaseId:
description: the identifier of the container of the case
type: string
started_by:
description: the identifier of the user who started the case
type: string
processDefinitionId:
description: the identifier of the process related of the case
type: string
last_update_date:
description: the date of the last update done on the case
type: string
searchIndex1Label:
description: the 1st search index label (from 6.5, in Subscription editions only)
type: string
searchIndex2Label:
description: the 2nd search index label (from 6.5, in Subscription editions only)
type: string
searchIndex3Label:
description: the 3rd search index label (from 6.5, in Subscription editions only)
type: string
searchIndex4Label:
description: the 4th search index label (from 6.5, in Subscription editions only)
type: string
searchIndex5Label:
description: the 5th search index label (from 6.5, in Subscription editions only)
type: string
searchIndex1Value:
description: the 1st search index value (from 6.5, in Subscription editions only)
type: string
searchIndex2Value:
description: the 2nd search index value (from 6.5, in Subscription editions only)
type: string
searchIndex3Value:
description: the 3rd search index value (from 6.5, in Subscription editions only)
type: string
searchIndex4Value:
description: the 4th search index value (from 6.5, in Subscription editions only)
type: string
searchIndex5Value:
description: the 5th search index value (from 6.5, in Subscription editions only)
type: string
callerId:
description: the identifier of the BPM entity who started the process. E.g. the call activity instance Id if it was started by a call activity or -1 if it was started by a user (since version 10.3 - 2025.1)
type: string
type: object
createProcessInstance_429_response:
example:
exception: exception
message: message
properties:
message:
description: The error message
type: string
exception:
description: The exception type
type: string
type: object
ProcessInstanceUpdateRequest:
example:
state: cancelled
properties:
state:
description: 'state of the ProcessInstance (the only supported value is: cancelled)'
type: string
type: object
ProcessInstanceCreateRequest:
example:
processDefinitionId: '5777042023671752656'
variables:
- name: stringVariable
value: aValue
- name: dateVariable
value: 349246800000
- name: numericVariable
value: 55
properties:
processDefinitionId:
description: the process definition Id
type: string
variables:
description: process variables initial values
items:
$ref: '#/components/schemas/ProcessVariable'
type: array
type: object
Error:
additionalProperties: true
example:
exception: exception
explanations:
- explanations
- explanations
message: message
properties:
message:
description: The error message
type: string
exception:
description: The exception type
type: string
explanations:
description: Further details on the error
items:
type: string
type: array
type: object
ProcessVariable:
additionalProperties:
type: object
properties:
name:
description: variable name
type: string
type: object
securitySchemes:
bonita_auth:
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.
'
in: cookie
name: JSESSIONID
type: apiKey
bonita_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.
'
in: header
name: X-Bonita-API-Token
type: apiKey
bearer_auth:
description: '
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.
'
scheme: bearer
type: http
x-refined-from:
- bonita-java-client-openapi.yaml
- bonita-java-client.yaml
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