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-business-data-operations-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: 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 Business Data Operations API
description: '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.'
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: Business Data Operations
x-displayName: Business Data Operations
description: BDM Rest APIs allow to create / update / delete / import in bulk Bonita Business Data.
paths:
/API/bdm/businessData/{businessDataType}:
post:
tags:
- Business Data Operations
summary: Create new Business Data
description: '!edition
Create (Insert) new Business Data.
Obviously, all mandatory fields of the given business data type must be provided in the request body, to ensure data integrity.
Any input fields that are NOT part of the business data type will be simply ignored, and returned in the response,
as an informative list.'
operationId: insertBusinessData
parameters:
- description: The Business Data type to create
in: path
name: businessDataType
required: true
schema:
type: string
maxLength: 250
pattern: ^[A-Za-z0-9\_\-\.]{0,250}$
example: com.company.model.Employee
requestBody:
content:
application/json:
schema:
type: object
example:
firstName: John
lastName: Doe
age: 30
department: Engineering
activity: developer
dateOfBirth: '1977-05-26'
dateOfBirthWithTime: '1977-05-26T01:59:42'
meetingDateAndTimeWithTimezone: '2025-11-29T10:15:30+01:00'
otherDateAndTimeWithTimezone: '2025-11-29T10:15:30Z'
notAValidField: some value that will be ignored
description: 'The flat JSON object representing the fields of the business data to create.
The fields to provide depend on the business data type.
Any nullable field not provided will be left blank.
Any unknown field will be ignored and return in the response, under the name "unknownFields".
String fields must be enclosed in double quotes (`"`), numeric / boolean fields must not. Date fields must be strings in ISO 8601 format (e.g., `2023-10-01T12:00:00Z`).
'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BusinessDataCreationResult'
'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/bdm/businessData/{businessDataType}/import:
post:
tags:
- Business Data Operations
summary: Import Business Data by bulk
description: '!edition
Allows to import business data in bulk by uploading a file containing the data, in CSV format.
Example CSV file content:
```csv
firstName,lastName,department, dptReference, dateOfBirth, dateOfBirthWithTime, meetingDateAndTimeWithTimezone, otherDateAndTimeWithTimezone
"John","Doe","Engineering", 14, "1907-05-26", "1907-05-26T01:59:42", "2025-11-29T10:15:00+01:00", "2025-11-29T10:15:00Z"
"Jane","Smith", "Marketing", 17, "1977-03-24", "1977-03-24T17:40:00", "2025-07-19T09:00:00+01:00", "2025-07-19T09:00:00Z"
```
Field separator can be comma (`,`) or semicolon (`;`). Space characters around the separator will be ignored (trimmed).
The first line of the CSV file is considered as the header, and must contain the field names, with the exact same upper/lower case.
String fields must be enclosed in double quotes (`"`), numeric / boolean fields must not. Date fields must be strings in ISO 8601 format (e.g., `2023-10-01T12:00:00Z`).'
operationId: importBusinessData
parameters:
- description: Business Data Type
in: path
name: businessDataType
required: true
schema:
type: string
maxLength: 250
pattern: ^[A-Za-z0-9\_\-\.]{0,250}$
example: com.company.model.Employee
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
dataset:
type: string
format: binary
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BusinessDataImportResult'
'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/bdm/businessData/{businessDataType}/{persistenceId}:
put:
tags:
- Business Data Operations
summary: Update an existing Business Data
description: '!edition
Update an existing Business Data.
Any input fields that are NOT part of the business data type will be simply ignored, and returned in the response,
as an informative list.'
operationId: updateBusinessData
parameters:
- description: The Business Data type to update
in: path
name: businessDataType
required: true
schema:
type: string
maxLength: 250
pattern: ^[A-Za-z0-9_-.]{0,250}$
example: com.company.model.Employee
- description: Business data ID
in: path
name: persistenceId
required: true
schema:
type: number
example: '1234'
requestBody:
content:
application/json:
schema:
type: object
example:
firstName: John
lastName: Wayne
activity: actor
dateOfBirth: '1907-05-26'
dateOfBirthWithTime: '1907-05-26T01:59:42'
meetingDateAndTimeWithTimezone: '2025-11-29T10:15:30+01:00'
otherDateAndTimeWithTimezone: '2025-11-29T10:15:30Z'
notAValidField: some value that will be ignored
description: 'The flat JSON object representing the fields of the business data to update.
The fields to provide depend on the business data type.
Any field not provided will be left unchanged.
Any unknown field will be ignored and return in the response, under the name "unknownFields".
String fields must be enclosed in double quotes (`"`), numeric / boolean fields must not. Date fields must be strings in ISO 8601 format (e.g., `2023-10-01T12:00:00Z`).
'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/BusinessDataUpdateResult'
'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:
- Business Data Operations
summary: Delete an existing Business Data
description: '!edition
Delete an existing Business Data.'
operationId: deleteBusinessData
parameters:
- description: The Business Data type to delete
in: path
name: businessDataType
required: true
schema:
type: string
maxLength: 250
pattern: ^[A-Za-z0-9\_\-\.]{0,250}$
example: com.company.model.Employee
- description: Business data ID to delete
in: path
name: persistenceId
required: true
schema:
type: number
example: 1234
responses:
'204':
description: The Business Data was successfully deleted
'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'
components:
schemas:
BusinessDataCreationResult:
type: object
description: "An object containing: \n* the ID of the newly created Business Data, under the name of \"newBusinessDataId\"\n* any unknown fields, provided as an array of names, under the name of \"unknownFields\"\n"
properties:
newBusinessDataId:
description: ID of the newly created Business Data
type: number
unknownFields:
description: list of unknown input fields that are not declared in the Business Data type
items:
type: string
type: array
example:
newBusinessDataId: 1988
unknownFields:
- notAValidField
BusinessDataUpdateResult:
type: object
description: "An object containing: \n* any unknown fields, provided as an array of names, under the name of \"unknownFields\"\n"
properties:
unknownFields:
description: list of unknown input fields that are not declared in the Business Data type
items:
type: string
type: array
example:
unknownFields:
- notAValidField
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
BusinessDataImportResult:
type: object
description: "An object containing: \n* the list of IDs of all the newly created Business Data, under the name of \"createdIds\"\n* the list of unknown fields, provided as an array of names, under the name of \"unknownFields\"\n"
properties:
createdIds:
description: List of IDs of the newly created Business Data
items:
type: number
type: array
unknownFields:
description: list of unknown input fields that are not declared in the Business Data type
items:
type: string
type: array
example:
createdIds:
- 198
- 199
unknownFields:
- department
responses:
Unauthorized:
description: Authorization information is missing or invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
message: Unauthorized
BadRequest:
description: Bad request.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
message: Bad request
NotFound:
description: The resource for the specified ID was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
message: Resource not found.
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.
ServerError:
description: Unexpected error.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
message: An unexpected error occured.
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: '
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