Flowable · Schema
Flowable IDM API Schemas
JSON Schema definitions extracted from the Flowable IDM OpenAPI specification
BPMBusiness Process ManagementWorkflowBPMNCMMNDMNProcess AutomationCase ManagementOpen SourceREST API
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Flowable IDM API Schemas",
"description": "JSON Schema definitions extracted from the Flowable IDM OpenAPI specification",
"definitions": {
"AccessTokenResponse": {
"type": "object",
"required": [
"creationTime",
"id",
"name"
],
"properties": {
"id": {
"type": "string",
"description": "The id of the token"
},
"userId": {
"type": "string",
"description": "The id of the user that the token belongs to"
},
"tenantId": {
"type": "string",
"description": "The id of the tenant that the token belongs to"
},
"name": {
"type": "string",
"description": "The name of the token"
},
"description": {
"type": "string",
"description": "The description of the token"
},
"creationTime": {
"type": "string",
"description": "The creation time of the token in ISO 8601 format"
},
"expirationTime": {
"type": "string",
"description": "The expiry time of the token in ISO 8601 format"
}
},
"description": "Response for an access token"
},
"AddGroupPrivilegeRequest": {
"type": "object",
"properties": {
"groupId": {
"type": "string"
}
}
},
"AddUserPrivilegeRequest": {
"type": "object",
"properties": {
"userId": {
"type": "string"
}
}
},
"Application": {
"type": "object",
"required": [
"id",
"name",
"type"
],
"properties": {
"id": {
"type": "string",
"description": "The id of the application"
},
"name": {
"type": "string",
"description": "The name of the application"
},
"type": {
"type": "string",
"description": "The type of the application"
},
"url": {
"type": "string",
"description": "The public URL of the application"
}
},
"description": "The applications that the user has access to"
},
"BasicPrivilegeResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
}
},
"ChangeUserLanguageRequest": {
"type": "object",
"properties": {
"newLanguage": {
"type": "string"
}
}
},
"ChangeUserPasswordRequest": {
"type": "object",
"properties": {
"password": {
"type": "string"
},
"repeatPassword": {
"type": "string"
}
}
},
"ChangeUserThemeRequest": {
"type": "object",
"properties": {
"newTheme": {
"type": "string"
}
}
},
"ContactFilterResponse": {
"type": "object",
"required": [
"defaultFilter",
"id"
],
"properties": {
"id": {
"type": "string",
"description": "The id of the filter"
},
"labelKey": {
"type": "string",
"description": "The key for the label of filter"
},
"defaultLabelName": {
"type": "string",
"description": "The default name of the filter label"
},
"defaultFilter": {
"type": "boolean",
"description": "Flag indicating whether this filter is a default one"
}
},
"description": "The response for the contact filters"
},
"CreateAccessTokenRequest": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the token"
},
"description": {
"type": "string",
"description": "The description of the token"
},
"validFor": {
"type": "string",
"description": "A positive ISO 8601 duration for which the token should be valid for. Mutually exclusive with validFor"
},
"validUntil": {
"type": "string",
"description": "The ISO 8601 date until the token should be valid. Mutually exclusive with validFor"
}
},
"description": "Request for creating an access token for a user"
},
"CreateAccessTokenResponse": {
"type": "object",
"required": [
"creationTime",
"id",
"name",
"value"
],
"properties": {
"id": {
"type": "string",
"description": "The id of the token"
},
"userId": {
"type": "string",
"description": "The id of the user that the token belongs to"
},
"tenantId": {
"type": "string",
"description": "The id of the tenant that the token belongs to"
},
"name": {
"type": "string",
"description": "The name of the token"
},
"description": {
"type": "string",
"description": "The description of the token"
},
"creationTime": {
"type": "string",
"description": "The creation time of the token in ISO 8601 format"
},
"expirationTime": {
"type": "string",
"description": "The expiry time of the token in ISO 8601 format"
},
"value": {
"type": "string",
"description": "The value of the token. This is only visible when the token is created. Afterwards it cannot be retrieved."
}
},
"description": "Response for a newly created access token"
},
"CreateUserRequest": {
"type": "object",
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
},
"displayName": {
"type": "string"
},
"loginName": {
"type": "string"
},
"email": {
"type": "string"
},
"password": {
"type": "string"
},
"repeatPassword": {
"type": "string"
},
"type": {
"type": "string"
},
"subType": {
"type": "string"
},
"userDefinitionId": {
"type": "string"
},
"userDefinitionKey": {
"type": "string"
},
"state": {
"type": "string"
},
"subState": {
"type": "string"
},
"avatarId": {
"type": "string"
},
"presence": {
"type": "string"
},
"language": {
"type": "string"
},
"theme": {
"type": "string"
},
"tenantId": {
"type": "string"
},
"identityInfo": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EngineRestVariable"
}
},
"groups": {
"type": "array",
"items": {
"type": "string"
}
},
"returnIdentityInfo": {
"type": "boolean"
}
}
},
"CurrentUserResponse": {
"type": "object",
"required": [
"creationTime",
"id",
"state"
],
"properties": {
"id": {
"type": "string",
"example": "john.doe",
"description": "The id of the user"
},
"firstName": {
"type": "string",
"example": "John",
"description": "The first name if the user"
},
"lastName": {
"type": "string",
"example": "Doe",
"description": "The last name of the user"
},
"displayName": {
"type": "string",
"example": "John Doe",
"description": "The display name of the user"
},
"email": {
"type": "string",
"example": "[email protected]",
"description": "The email of the user"
},
"tenantId": {
"type": "string",
"description": "The tenant id of the user"
},
"avatarId": {
"type": "string",
"example": "CON-111-11-11",
"description": "The optional avatar if of the user."
},
"type": {
"type": "string",
"example": "default",
"description": "The optional type of the user"
},
"subType": {
"type": "string",
"description": "The optional subType of the user"
},
"state": {
"type": "string",
"example": "ACTIVE",
"description": "The state of the user"
},
"subState": {
"type": "string",
"example": "INITIALIZING",
"description": "The optional sub state of the user"
},
"presence": {
"type": "string",
"example": "available",
"description": "The optional presence state of the user. Known states: available, away, offline, out-of-office, snoozed"
},
"language": {
"type": "string",
"example": "en",
"description": "The optional language for the user"
},
"theme": {
"type": "string",
"example": "flowable",
"description": "The optional theme for the user"
},
"userDefinitionId": {
"type": "string",
"description": "The id of the user definition linked with this user"
},
"userDefinitionKey": {
"type": "string",
"description": "The key of the user definition linked with this user"
},
"userDefinitionName": {
"type": "string",
"description": "The name of the user definition linked with this user"
},
"creatorId": {
"type": "string",
"description": "The id of the user that created this user"
},
"creationTime": {
"type": "string",
"description": "The ISO8601 creation time of this user"
},
"updaterId": {
"type": "string",
"description": "The id of the user that last updated this user"
},
"updateTime": {
"type": "string",
"description": "The ISO8601 last update time of this user"
},
"groups": {
"type": "array",
"description": "Collection of all groups the user has a membership of",
"items": {
"$ref": "#/components/schemas/GroupResponse"
}
},
"identityInfo": {
"type": "array",
"description": "Collection of all identity infos for the user",
"items": {
"$ref": "#/components/schemas/EngineRestVariable"
}
},
"translations": {
"type": "object",
"description": "Map of translations for the user info",
"additionalProperties": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"allowedTabs": {
"type": "array",
"description": "The allowed tabs for the user",
"uniqueItems": true,
"items": {
"type": "string"
}
},
"allowedFeatures": {
"type": "array",
"description": "The allowed features for the current user",
"uniqueItems": true,
"items": {
"type": "string"
}
},
"memberGroups": {
"type": "array",
"description": "The member groups for the current user",
"uniqueItems": true,
"items": {
"type": "string"
}
},
"adminType": {
"type": "string",
"description": "The type of the admin user, if this user is an admin",
"enum": [
"superAdmin",
"tenantAdmin"
]
},
"themeConfiguration": {
"$ref": "#/components/schemas/CurrentUserThemeConfiguration"
},
"originalAuthentication": {
"$ref": "#/components/schemas/OriginalAuthentication"
},
"availableApplications": {
"type": "object",
"description": "The available applications for the current user",
"additionalProperties": {
"$ref": "#/components/schemas/Application"
}
}
},
"description": "The response for a current user"
},
"CurrentUserThemeConfiguration": {
"type": "object",
"required": [
"name",
"options"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the theme"
},
"options": {
"type": "object",
"description": "The options of the theme",
"additionalProperties": {
"type": "string"
}
}
},
"description": "The response for the current user theme configuration"
},
"DataResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"DataResponseAccessTokenResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AccessTokenResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"DataResponseGroupResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/GroupResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"DataResponsePlatformUserResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PlatformUserResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"DataResponsePrivilegeResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PrivilegeResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"DataResponseTenantResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TenantResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"DataResponseUserAccountResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserAccountResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"DataResponseUserDefinitionResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserDefinitionResponse"
}
},
"total": {
"type": "integer",
"format": "int64"
},
"start": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"size": {
"type": "integer",
"format": "int32"
}
}
},
"EngineInfoResponse": {
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "default"
},
"resourceUrl": {
"type": "string",
"example": "file://flowable/flowable.cfg.xml"
},
"exception": {
"type": "string",
"example": "null"
},
"version": {
"type": "string",
"example": "6.3.1"
}
}
},
"EngineRestVariable": {
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "myVariable",
"description": "Name of the variable"
},
"type": {
"type": "string",
"example": "string",
"description": "Type of the variable."
},
"value": {
"type": "object",
"example": "test",
"description": "Value of the variable."
},
"valueUrl": {
"type": "string",
"example": "http://...."
}
}
},
"FileSystem": {
"type": "object",
"properties": {
"open": {
"type": "boolean"
},
"readOnly": {
"type": "boolean"
},
"separator": {
"type": "string"
},
"rootDirectories": {
"$ref": "#/components/schemas/IterablePath"
},
"fileStores": {
"$ref": "#/components/schemas/IterableFileStore"
},
"userPrincipalLookupService": {
"$ref": "#/components/schemas/UserPrincipalLookupService"
}
}
},
"GroupQueryRequest": {
"type": "object",
"properties": {
"start": {
"type": "integer",
"format": "int32"
},
"size": {
"type": "integer",
"format": "int32"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
},
"id": {
"type": "string",
"description": "Only return groups with the given id."
},
"ids": {
"type": "array",
"description": "Only return groups with the given ids.",
"items": {
"type": "string"
}
},
"key": {
"type": "string",
"description": "Only return groups with the given key."
},
"keys": {
"type": "array",
"description": "Only return groups with the given keys.",
"items": {
"type": "string"
}
},
"name": {
"type": "string",
"description": "Only return groups with the given name."
},
"nameLike": {
"type": "string",
"description": "Only return groups with a name like the given value."
},
"nameLikeIgnoreCase": {
"type": "string",
"description": "Only return groups with a name like the given value ignoring case."
},
"type": {
"type": "string",
"description": "Only return groups with a name like the given type."
},
"member": {
"type": "string",
"description": "Only return groups which have a member with the given username."
},
"members": {
"type": "array",
"description": "Only return groups which have members with the given usernames.",
"items": {
"type": "string"
}
},
"includeIdentityInfo": {
"type": "boolean",
"description": "Include the group identity info in the response."
},
"tenantId": {
"type": "string",
"description": "Only return groups with the given tenant ID."
}
},
"description": "Request that is used for querying groups."
},
"GroupRequest": {
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "testgroup"
},
"url": {
"type": "string",
"example": "http://localhost:8182/groups/groupId"
},
"name": {
"type": "string",
"example": "Test group"
},
"type": {
"type": "string",
"example": "Test type"
},
"key": {
"type": "string",
"example": "testgroup"
},
"tenantId": {
"type": "string",
"example": "testtenant"
},
"users": {
"type": "array",
"items": {
"type": "string"
}
},
"privileges": {
"type": "array",
"items": {
"type": "string"
}
},
"identityInfo": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EngineRestVariable"
}
},
"returnIdentityInfo": {
"type": "boolean"
},
"nameChanged": {
"type": "boolean"
},
"typeChanged": {
"type": "boolean"
}
}
},
"GroupResponse": {
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "testgroup"
},
"url": {
"type": "string",
"example": "http://localhost:8182/groups/groupId"
},
"name": {
"type": "string",
"example": "Test group"
},
"type": {
"type": "string",
"example": "Test type"
},
"key": {
"type": "string",
"example": "testgroup"
},
"tenantId": {
"type": "string",
"example": "testtenant"
},
"users": {
"type": "array",
"description": "Collection of all users that have a membership with the group",
"items": {
"$ref": "#/components/schemas/UserResponse"
}
},
"privileges": {
"type": "array",
"description": "Collection of all privileges for this group",
"items": {
"$ref": "#/components/schemas/BasicPrivilegeResponse"
}
},
"identityInfo": {
"type": "array",
"description": "Collection of all identity infos for the group",
"items": {
"$ref": "#/components/schemas/EngineRestVariable"
}
}
}
},
"InputStream": {
"type": "object"
},
"Iterable": {
"type": "object"
},
"IterableFileStore": {
"type": "object"
},
"IterablePath": {
"type": "object"
},
"JsonNode": {
"type": "object",
"properties": {
"nodeType": {
"type": "string",
"enum": [
"ARRAY",
"BINARY",
"BOOLEAN",
"MISSING",
"NULL",
"NUMBER",
"OBJECT",
"POJO",
"STRING"
]
},
"array": {
"type": "boolean"
},
"": {
"type": "boolean"
},
"float": {
"type": "boolean"
},
"number": {
"type": "boolean"
},
"valueNode": {
"type": "boolean"
},
"missingNode": {
"type": "boolean"
},
"object": {
"type": "boolean"
},
"short": {
"type": "boolean"
},
"double": {
"type": "boolean"
},
"bigDecimal": {
"type": "boolean"
},
"bigInteger": {
"type": "boolean"
},
"textual": {
"type": "boolean"
},
"boolean": {
"type": "boolean"
},
"binary": {
"type": "boolean"
},
"int": {
"type": "boolean"
},
"pojo": {
"type": "boolean"
},
"long": {
"type": "boolean"
},
"containerNode": {
"type": "boolean"
},
"integralNumber": {
"type": "boolean"
},
"floatingPointNumber": {
"type": "boolean"
}
}
},
"MembershipRequest": {
"type": "object",
"properties": {
"userId": {
"type": "string",
"example": "kermit"
}
}
},
"MembershipResponse": {
"type": "object",
"properties": {
"userId": {
"type": "string",
"example": "kermit"
},
"url": {
"type": "string",
"example": "http://localhost:8182/groups/sales/members/userId"
},
"groupId": {
"type": "string",
"example": "sales"
}
}
},
"OriginalAuthentication": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "The id of the user doing the impersonation"
}
},
"description": "The original authentication for a current user."
},
"Page": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object"
}
},
"size": {
"type": "integer",
"format": "int32"
},
"start": {
"type": "integer",
"format": "int32"
},
"total": {
"type": "integer",
"format": "int64"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
}
}
},
"PagePlatformUserResponse": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PlatformUserResponse"
}
},
"size": {
"type": "integer",
"format": "int32"
},
"start": {
"type": "integer",
"format": "int32"
},
"total": {
"type": "integer",
"format": "int64"
},
"sort": {
"type": "string"
},
"order": {
"type": "string"
}
}
},
"Path": {
"type": "object",
"properties": {
"absolute": {
"type": "boolean"
},
"parent": {
"$ref": "#/components/schemas/Path"
},
"root": {
"$ref": "#/components/schemas/Path"
},
"fileName": {
"$ref": "#/components/schemas/Path"
},
"fileSystem": {
"$ref": "#/components/schemas/FileSystem"
},
"nameCount": {
"type": "integer",
"format": "int32"
}
}
},
"PlatformUserResponse": {
"type": "object",
"required": [
"creationTime",
"id",
"state"
],
"properties": {
"id": {
"type": "string",
"example": "john.doe",
"description": "The id of the user"
},
"firstName": {
"type": "string",
"example": "John",
"description": "The first name if the user"
},
"lastName": {
"type": "string",
"example": "Doe",
"description": "The last name of the user"
},
"displayName": {
"type": "string",
"example": "John Doe",
"description": "The display name of the user"
},
"email": {
"type": "string",
"example": "[email protected]",
"description": "The email of the user"
},
"tenantId": {
"type": "string",
"description": "The tenant id of the user"
},
"avatarId": {
"type": "string",
"example": "CON-111-11-11",
"description": "The optional avatar if of the user."
},
"type": {
"type": "string",
"example": "default",
"description": "The optional type of the user"
},
"subType": {
"type": "string",
"description": "The optional subType of the user"
},
"state": {
"type": "string",
"example": "ACTIVE",
"description": "The state of the user"
},
"subState": {
"type": "string",
"example": "INITIALIZING",
"description": "The optional sub state of the user"
},
"presence": {
"type": "string",
"example": "available",
"description": "The optional presence state of the user. Known states: available, away, offline, out-of-office, snoozed"
},
"language": {
"type": "string",
"example": "en",
"description": "The optional language for the user"
},
"theme": {
"type": "string",
"example": "flowable",
"description": "The optional theme for the user"
},
"userDefinitionId": {
"type": "string",
"description": "The id of the user definition linked with this user"
},
"userDefinitionKey": {
"type": "string",
"description": "The key of the user definition linked with this user"
},
"userDefinitionName": {
"type": "string",
"description": "The name of the user definition linked with this user"
},
"creatorId": {
"type": "string",
"description": "The id of the user that created this user"
},
"creationTime": {
"type": "string",
"description": "The ISO8601 creation time of this user"
},
"updaterId": {
"type": "string",
"description": "The id of the user that last updated this user"
},
"updateTime": {
"type": "string",
"description": "The ISO8601 last update time of this user"
},
"groups": {
"type": "array",
"description": "Collection of all groups the user has a membership of",
"items": {
"$ref": "#/components/schemas/GroupResponse"
}
},
"identityInfo": {
"type": "array",
"descript
# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/flowable/refs/heads/main/json-schema/flowable-idm-schema.json