Flowable CMMN API
REST API for the CMMN case engine supporting case definitions, case instances, plan items, milestones, and case variables for adaptive, event-driven case management scenarios.
REST API for the CMMN case engine supporting case definitions, case instances, plan items, milestones, and case variables for adaptive, event-driven case management scenarios.
openapi: 3.0.0
info:
description: "# flowable / flowəb(ə)l /\r\n\r\n- a compact and highly efficient\
\ workflow and Business Process Management (BPM) platform for developers, system\
\ admins and business users.\r\n- a lightning fast, tried and tested BPMN 2 process\
\ engine written in Java. It is Apache 2.0 licensed open source, with a committed\
\ community.\r\n- can run embedded in a Java application, or as a service on a\
\ server, a cluster, and in the cloud. It integrates perfectly with Spring. With\
\ a rich Java and REST API, it is the ideal engine for orchestrating human or\
\ system activities."
version: v1
title: Flowable CMMN REST API
contact:
name: Flowable
url: http://www.flowable.org/
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
tags:
- name: CMMN Deployment
- name: Case Definitions
- name: Case Instance Identity Links
- name: Case Instance Variables
- name: Case Instances
- name: Cmmn Deployment
- name: Cmmn Engine
- name: CmmnDeployment
- name: Deployment
- name: Event subscriptions
- name: History
- name: History Case
- name: History Milestone
- name: History PlanItem
- name: History Process
- name: History Task
- name: Jobs
- name: Manage History Case Instances
- name: Plan Item Instance
- name: Plan Item Instance Variables
- name: Plan Item Instances
- name: Query
- name: Runtime
- name: Task Identity Links
- name: Task Variables
- name: Tasks
paths:
/cmmn-history/historic-case-instances:
get:
tags:
- History Case
summary: List of historic case instances
description: ''
operationId: listHistoricCaseInstances
parameters:
- name: caseInstanceId
in: query
description: An id of the historic case instance.
required: false
schema:
type: string
- name: caseInstanceIds
in: query
description: Only return historic case instances with the given comma-separated
ids.
required: false
schema:
type: string
- name: caseDefinitionKey
in: query
description: The case definition key of the historic case instance.
required: false
schema:
type: string
- name: caseDefinitionKeyLike
in: query
description: Only return historic case instances like the given case definition
key.
required: false
schema:
type: string
- name: caseDefinitionKeyLikeIgnoreCase
in: query
description: Only return historic case instances like the given case definition
key, ignoring case.
required: false
schema:
type: string
- name: caseDefinitionId
in: query
description: The case definition id of the historic case instance.
required: false
schema:
type: string
- name: caseDefinitionCategory
in: query
description: Only return historic case instances with the given case definition
category.
required: false
schema:
type: string
- name: caseDefinitionCategoryLike
in: query
description: Only return historic case instances like the given case definition
category.
required: false
schema:
type: string
- name: caseDefinitionCategoryLikeIgnoreCase
in: query
description: Only return historic case instances like the given case definition
category, ignoring case.
required: false
schema:
type: string
- name: caseDefinitionName
in: query
description: Only return historic case instances with the given case definition
name.
required: false
schema:
type: string
- name: caseDefinitionNameLike
in: query
description: Only return historic case instances like the given case definition
name.
required: false
schema:
type: string
- name: caseDefinitionNameLikeIgnoreCase
in: query
description: Only return historic case instances like the given case definition
name, ignoring case.
required: false
schema:
type: string
- name: name
in: query
description: Only return historic case instances with the given name.
required: false
schema:
type: string
- name: nameLike
in: query
description: Only return historic case instances like the given name.
required: false
schema:
type: string
- name: nameLikeIgnoreCase
in: query
description: Only return historic case instances like the given name ignoring
case.
required: false
schema:
type: string
- name: rootScopeId
in: query
description: Only return case instances which have the given root scope id
(that can be a process or case instance ID).
required: false
schema:
type: string
- name: parentScopeId
in: query
description: Only return case instances which have the given parent scope
id (that can be a process or case instance ID).
required: false
schema:
type: string
- name: businessKey
in: query
description: The business key of the historic case instance.
required: false
schema:
type: string
- name: businessKeyLike
in: query
description: Only return historic case instances like the given business key.
required: false
schema:
type: string
- name: businessKeyLikeIgnoreCase
in: query
description: Only return historic case instances like the given business key,
ignoring case.
required: false
schema:
type: string
- name: businessStatus
in: query
description: The business status of the historic case instance.
required: false
schema:
type: string
- name: businessStatusLike
in: query
description: Only return historic case instances like the given business status.
required: false
schema:
type: string
- name: businessStatusLikeIgnoreCase
in: query
description: Only return historic case instances like the given business status,
ignoring case.
required: false
schema:
type: string
- name: involvedUser
in: query
description: An involved user of the historic case instance.
required: false
schema:
type: string
- name: finished
in: query
description: Indication if the historic case instance is finished.
required: false
schema:
type: boolean
- name: finishedAfter
in: query
description: Return only historic case instances that were finished after
this date.
required: false
schema:
type: string
format: date-time
- name: finishedBefore
in: query
description: Return only historic case instances that were finished before
this date.
required: false
schema:
type: string
format: date-time
- name: startedAfter
in: query
description: Return only historic case instances that were started after this
date.
required: false
schema:
type: string
format: date-time
- name: startedBefore
in: query
description: Return only historic case instances that were started before
this date.
required: false
schema:
type: string
format: date-time
- name: startedBy
in: query
description: Return only historic case instances that were started by this
user.
required: false
schema:
type: string
- name: state
in: query
description: Only return historic case instances with the given state.
required: false
schema:
type: string
- name: callbackId
in: query
description: Only return historic case instances which have the given callback
id.
required: false
schema:
type: string
- name: callbackType
in: query
description: Only return historic case instances which have the given callback
type.
required: false
schema:
type: string
- name: parentCaseInstanceId
in: query
description: Only return historic case instances which have the given parent
case instance id.
required: false
schema:
type: string
- name: referenceId
in: query
description: Only return historic case instances which have the given reference
id.
required: false
schema:
type: string
- name: referenceType
in: query
description: Only return historic case instances which have the given reference
type.
required: false
schema:
type: string
- name: lastReactivatedBy
in: query
description: Only return historic case instances last reactived by the given
user.
required: false
schema:
type: string
- name: lastReactivatedBefore
in: query
description: Only return historic case instances last reactivated before the
given date.
required: false
schema:
type: string
format: date-time
- name: lastReactivatedAfter
in: query
description: Only return historic case instances last reactivated after the
given date.
required: false
schema:
type: string
format: date-time
- name: activePlanItemDefinitionId
in: query
description: Only return historic case instances that have an active plan
item instance with the given plan item definition id.
required: false
schema:
type: string
- name: includeCaseVariables
in: query
description: An indication if the historic case instance variables should
be returned as well.
required: false
schema:
type: boolean
- name: includeCaseVariablesName
in: query
description: Indication to include case variables with the given names in
the result.
required: false
schema:
type: string
- name: tenantId
in: query
description: Only return instances with the given tenant id.
required: false
schema:
type: string
- name: tenantIdLike
in: query
description: Only return instances like the given tenant id.
required: false
schema:
type: string
- name: tenantIdLikeIgnoreCase
in: query
description: Only return instances like the given tenant id, ignoring case.
required: false
schema:
type: string
- name: withoutTenantId
in: query
description: 'If true, only returns instances without a tenantId set. If false,
the withoutTenantId parameter is ignored.
'
required: false
schema:
type: boolean
- name: withoutCaseInstanceParentId
in: query
description: 'If true, only returns instances without a parent set. If false,
the withoutCaseInstanceParentId parameter is ignored.
'
required: false
schema:
type: boolean
- name: withoutCaseInstanceCallbackId
in: query
description: 'If true, only returns instances without a callbackId set. If
false, the withoutCaseInstanceCallbackId parameter is ignored.
'
required: false
schema:
type: boolean
responses:
'200':
description: Indicates that historic case instances could be queried.
content:
application/json:
schema:
$ref: '#/components/schemas/DataResponseHistoricCaseInstanceResponse'
'400':
description: Indicates an parameter was passed in the wrong format. The
status-message contains additional information.
security:
- basicAuth: []
/cmmn-history/historic-case-instances/delete:
post:
tags:
- Manage History Case Instances
summary: Post action request to delete a bulk of historic case instances
description: ''
operationId: bulkDeleteHistoricCaseInstances
requestBody:
$ref: '#/components/requestBodies/BulkDeleteInstancesRestActionRequest'
responses:
'204':
description: Indicates the bulk of historic case instances was found and
deleted. Response body is left empty intentionally.
'404':
description: Indicates at least one requested case instance was not found.
security:
- basicAuth: []
/cmmn-history/historic-case-instances/{caseInstanceId}:
get:
tags:
- History Case
summary: Get a historic case instance
description: ''
operationId: getHistoricCaseInstance
parameters:
- name: caseInstanceId
in: path
required: true
schema:
type: string
responses:
'200':
description: Indicates that the historic process instances could be found.
content:
application/json:
schema:
$ref: '#/components/schemas/HistoricCaseInstanceResponse'
'404':
description: Indicates that the historic process instances could not be
found.
security:
- basicAuth: []
delete:
tags:
- History Case
summary: ' Delete a historic case instance'
description: ''
operationId: deleteHistoricCaseInstance
parameters:
- name: caseInstanceId
in: path
required: true
schema:
type: string
responses:
'204':
description: Indicates that the historic process instance was deleted.
'404':
description: Indicates that the historic process instance could not be found.
security:
- basicAuth: []
/cmmn-history/historic-case-instances/{caseInstanceId}/identitylinks:
get:
tags:
- History Case
summary: List identity links of a historic case instance
description: ''
operationId: listHistoricCaseInstanceIdentityLinks
parameters:
- name: caseInstanceId
in: path
required: true
schema:
type: string
responses:
'200':
description: Indicates request was successful and the identity links are
returned
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/HistoricIdentityLinkResponse'
'404':
description: Indicates the process instance could not be found..
security:
- basicAuth: []
/cmmn-history/historic-case-instances/{caseInstanceId}/migrate:
post:
tags:
- History Case
summary: Migrate historic case instance
description: ''
operationId: migrateHistoricCaseInstance
parameters:
- name: caseInstanceId
in: path
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/migrateHistoricCaseInstanceBody'
responses:
'200':
description: Indicates the historiccase instance was found and migration
was executed.
'404':
description: Indicates the requested historic case instance was not found.
security:
- basicAuth: []
/cmmn-history/historic-case-instances/{caseInstanceId}/stage-overview:
get:
tags:
- History Case
summary: Get a stage overview of historic case instance
description: ''
operationId: getHistoricStageOverview
parameters:
- name: caseInstanceId
in: path
required: true
schema:
type: string
responses:
'200':
description: Indicates that the historic case instance was found.
'204':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/StageResponse'
'404':
description: Indicates that the historic case instance could not be found.
security:
- basicAuth: []
/cmmn-history/historic-case-instances/{caseInstanceId}/variables/{variableName}/data:
get:
tags:
- History Process
summary: Get the binary data for a historic case instance variable
description: The response body contains the binary value of the variable. When
the variable is of type binary, the content-type of the response is set to
application/octet-stream, regardless of the content of the variable or the
request accept-type header. In case of serializable, application/x-java-serialized-object
is used as content-type.
operationId: getHistoricCaseInstanceVariableData
parameters:
- name: caseInstanceId
in: path
required: true
schema:
type: string
- name: variableName
in: path
required: true
schema:
type: string
responses:
'200':
description: Indicates the case instance was found and the requested variable
data is returned.
content:
'*/*':
schema:
type: array
items:
type: string
format: byte
'404':
description: Indicates the requested case instance was not found or the
process instance does not have a variable with the given name or the variable
does not have a binary stream available. Status message provides additional
information.
security:
- basicAuth: []
/cmmn-history/historic-milestone-instances:
get:
tags:
- History Milestone
summary: List of historic milestone instances
description: ''
operationId: listHistoricMilestoneInstances
parameters:
- name: milestoneId
in: query
description: An id of the historic milestone instance.
required: false
schema:
type: string
- name: milestoneName
in: query
description: The name of the historic milestone instance
required: false
schema:
type: string
- name: caseInstanceId
in: query
description: The id of the case instance containing the milestone.
required: false
schema:
type: string
- name: caseDefinitionId
in: query
description: The id of the definition of the case where the milestone is defined.
required: false
schema:
type: string
- name: reachedBefore
in: query
description: Return only historic milestone instances that were reached before
this date.
required: false
schema:
type: string
- name: reachedAfter
in: query
description: Return only historic milestone instances that were reached after
this date.
required: false
schema:
type: string
responses:
'200':
description: Indicates that historic milestone instances could be queried.
content:
application/json:
schema:
$ref: '#/components/schemas/DataResponseHistoricMilestoneInstanceResponse'
'400':
description: Indicates an parameter was passed in the wrong format. The
status-message contains additional information.
security:
- basicAuth: []
/cmmn-history/historic-milestone-instances/{milestoneInstanceId}:
get:
tags:
- History Milestone
summary: Get a historic milestone instance by id
description: ''
operationId: getHistoricMilestoneInstanceById
parameters:
- name: milestoneInstanceId
in: path
required: true
schema:
type: string
responses:
'200':
description: Indicates that the historic milestone instances could be found.
content:
application/json:
schema:
$ref: '#/components/schemas/HistoricMilestoneInstanceResponse'
'404':
description: Indicates that the historic milestone instances could not be
found.
security:
- basicAuth: []
/cmmn-history/historic-planitem-instances:
get:
tags:
- History PlanItem
summary: List of historic plan item instances
description: ''
operationId: listHistoricPlanItemInstances
parameters:
- name: planItemInstanceId
in: query
description: The id of the historic planItem instance.
required: false
schema:
type: string
- name: planItemInstanceName
in: query
description: The name of the historic planItem instance.
required: false
schema:
type: string
- name: planItemInstanceState
in: query
description: The state of the historic planItem instance.
required: false
schema:
type: string
- name: caseDefinitionId
in: query
description: The id of the definition of the case were the historic planItem
instance is defined.
required: false
schema:
type: string
- name: caseInstanceId
in: query
description: The id of the case instance were the historic planItem instance
existed.
required: false
schema:
type: string
- name: caseInstanceIds
in: query
description: The ids of the case instances were the historic planItem instance
existed.
required: false
schema:
type: string
- name: stageInstanceId
in: query
description: The id of the stage were the historic planItem instance was contained.
required: false
schema:
type: string
- name: elementId
in: query
description: The id of the planItem model of the historic planItem instance.
required: false
schema:
type: string
- name: planItemDefinitionId
in: query
description: The id of the planItem model definition of the historic planItem
instance.
required: false
schema:
type: string
- name: planItemDefinitionType
in: query
description: The type of planItem of the historic planItem instance.
required: false
schema:
type: string
- name: createdBefore
in: query
description: Return only historic planItem instances that were created before
this date.
required: false
schema:
type: date-time
- name: createdAfter
in: query
description: Return only historic planItem instances that were created after
this date.
required: false
schema:
type: date-time
- name: lastAvailableBefore
in: query
description: Return only historic planItem instances that were last in available
before this date.
required: false
schema:
type: date-time
- name: lastAvailableAfter
in: query
description: Return only historic planItem instances that were last in available
state after this date.
required: false
schema:
type: date-time
- name: lastEnabledBefore
in: query
description: Return only historic planItem instances that were last in enabled
state before this date.
required: false
schema:
type: date-time
- name: lastEnabledAfter
in: query
description: Return only historic planItem instances that were last in enabled
state after this date.
required: false
schema:
type: date-time
- name: lastDisabledBefore
in: query
description: Return only historic planItem instances that were last in disable
state before this date.
required: false
schema:
type: date-time
- name: lastDisabledAfter
in: query
description: Return only historic planItem instances that were last in disabled
state after this date.
required: false
schema:
type: date-time
- name: lastStartedBefore
in: query
description: Return only historic planItem instances that were last in active
state before this date.
required: false
schema:
type: date-time
- name: lastStartedAfter
in: query
description: Return only historic planItem instances that were last in active
state after this date.
required: false
schema:
type: date-time
- name: lastSuspendedBefore
in: query
description: Return only historic planItem instances that were last in suspended
state before this date.
required: false
schema:
type: date-time
- name: lastSuspendedAfter
in: query
description: Return only historic planItem instances that were last in suspended
state after this date.
required: false
schema:
type: date-time
- name: completedBefore
in: query
description: Return only historic planItem instances that were completed before
this date.
required: false
schema:
type: date-time
- name: completedAfter
in: query
description: Return only historic planItem instances that were completed after
this date.
required: false
schema:
type: date-time
- name: terminatedBefore
in: query
description: Return only historic planItem instances that were terminated
before this date.
required: false
schema:
type: date-time
- name: terminatedAfter
in: query
description: Return only historic planItem instances that were terminated
after this date.
required: false
schema:
type: date-time
- name: occurredBefore
in: query
description: Return only historic planItem instances that occurred before
this date.
required: false
schema:
type: date-time
- name: occurredAfter
in: query
description: Return only historic planItem instances that occurred after after
this date.
required: false
schema:
type: date-time
- name: exitBefore
in: query
description: Return only historic planItem instances that exit before this
date.
required: false
schema:
type: date-time
- name: exitAfter
in: query
description: Return only historic planItem instances that exit after this
date.
required: false
schema:
type: date-time
format: date-time
- name: endedBefore
in: query
description: Return only historic planItem instances that ended before this
date.
required: false
schema:
type: date-time
format: date-time
- name: endedAfter
in: query
description: Return only historic planItem instances that ended after this
date.
required: false
schema:
type: date-time
format: date-time
- name: startUserId
in: query
description: Return only historic planItem instances that were started by
this user.
required: false
schema:
type: string
format: date-time
- name: referenceId
in: query
description: The id of process that was referenced by this historic planItem
instance.
required: false
schema:
type: string
- name: referenceType
in: query
description: The type of reference to the process referenced by this historic
planItem instance.
required: false
schema:
type: string
- name: tenantId
in: query
description: Only return instances with the given tenantId.
required: false
schema:
type: string
- name: withoutTenantId
in: query
description: 'If true, only returns instances without a tenantId set. If false,
the withoutTenantId parameter is ignored.
'
required: false
schema:
type: boolean
responses:
'200':
description: Indicates that historic planItem instances could be queried.
content:
application/json:
schema:
$ref: '#/components/schemas/DataResponseHistoricPlanItemInstanceResponse'
'400':
description: Indicates an parameter was passed in the wrong format. The
status-message contains additional information.
security:
- basicAuth: []
/cmmn-history/historic-planitem-instances/{planItemInstanceId}:
get:
tags:
- History PlanItem
summary: Get a historic plan item instance
description: ''
operationId: getHistoricPlanItemInstance
parameters:
- name: planItemInstanceId
in: path
required: true
schema:
type: string
responses:
'200':
description: Indicates that the historic plan item instances could be found.
content:
application/json:
schema:
$ref: '#/components/schemas/HistoricPlanItemInstanceResponse'
'404':
description: Indicates that the historic plan item instances could not be
found.
security:
- basicAuth: []
/cmmn-history/historic-task-instances:
get:
tags:
- History Task
summary: List historic task instances
description: ''
operationId: listHistoricTaskInstances
parameters:
- name: taskId
in: query
description: An id of the historic task instance.
required: false
schema:
type: string
- name: caseInstanceId
in: query
description: The case instance id of the historic task instance.
required: false
schema:
type: string
- name: caseInstanceIdWithChildren
in: query
description: Selects the historic task instance of a case instance and its
children.
required: false
schema:
type: string
- name: caseDefinitionId
in: query
description: The case definition id of the historic task instance.
required: false
schema:
type: string
- name: propagatedStageInstanceId
in: query
description: Only return tasks which have the given id as propagated stage
instance id
required: false
schema:
type: string
- name: withoutScopeId
in: query
description: If true, only returns historic task instances without a scope
id set. If false, the withoutScopeId parameter is ignored.
required: false
schema:
type: boolean
- name: taskDefinitionKey
in: query
description: The task definition key for tasks part of a process
required: false
schema:
type: string
- name: taskName
in: query
description: The task name of the historic task instance.
required: false
schema:
type: string
# --- truncated at 32 KB (328 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/flowable/refs/heads/main/openapi/flowable-cmmn-openapi.yml