Bonitasoft Process Instance API

ProcessInstance

Operations 7

DELETE /API/bpm/case Delete the ProcessInstance by batch #
GET /API/bpm/case Finds ProcessInstances #
POST /API/bpm/case Create the ProcessInstance #
DELETE /API/bpm/case/{id} Delete the ProcessInstance by ID #
GET /API/bpm/case/{id} Finds the ProcessInstance by ID #
PUT /API/bpm/case/{id} Update the ProcessInstance by ID #
GET /API/bpm/case/{id}/context Finds the Context by ProcessInstance ID #

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.
All 92 tools →

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

bonitasoft-com-processinstance-api-openapi.yml Raw ↑
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: '![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.

        '
      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