Skip to content

Bpmn Service v1.0.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

BPMN microservice

Base URLs:

Authentication

  • HTTP Authentication, scheme: bearer

WorkflowController

WorkflowController.startWorkflow

Code samples

const inputBody = '{
  "workflowVersion": 0,
  "input": {}
}';
const headers = {
  'Content-Type':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}/execute',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
const fetch = require('node-fetch');
const inputBody = {
  "workflowVersion": 0,
  "input": {}
};
const headers = {
  'Content-Type':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}/execute',
{
  method: 'POST',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST /workflows/{id}/execute

Permissions
CreateWorkflow
2

Body parameter

1
2
3
4
{
  "workflowVersion": 0,
  "input": {}
}

Parameters

Name In Type Required Description
id path string true none
body body ExecuteWorkflowDto false none

Responses

Status Meaning Description Schema
200 OK Workflow instance None

WorkflowController.deleteVersionById

Code samples

const headers = {
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}/version/{version}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
const fetch = require('node-fetch');

const headers = {
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}/version/{version}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

DELETE /workflows/{id}/version/{version}

Permissions
DeleteWorkflow
4

Parameters

Name In Type Required Description
id path string true none
version path number true none

Responses

Status Meaning Description Schema
204 No Content Workflow DELETE success None

WorkflowController.updateById

Code samples

const inputBody = '{
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
}';
const headers = {
  'Content-Type':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
const fetch = require('node-fetch');
const inputBody = {
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
};
const headers = {
  'Content-Type':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}',
{
  method: 'PATCH',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PATCH /workflows/{id}

Permissions
UpdateWorkflow
3

Body parameter

1
2
3
4
5
6
{
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
}

Parameters

Name In Type Required Description
id path string true none
body body WorkflowDtoPartial false none

Responses

Status Meaning Description Schema
204 No Content Workflow PATCH success None

WorkflowController.count

Code samples

const headers = {
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
const fetch = require('node-fetch');

const headers = {
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /workflows/{id}

Permissions
ViewWorkflow
1

Parameters

Name In Type Required Description
id path string true none

Responses

Status Meaning Description Schema
200 OK Workflow Model None

WorkflowController.deleteById

Code samples

const headers = {
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
const fetch = require('node-fetch');

const headers = {
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows/{id}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

DELETE /workflows/{id}

Permissions
DeleteWorkflow
4

Parameters

Name In Type Required Description
id path string true none

Responses

Status Meaning Description Schema
204 No Content Workflow DELETE success None

WorkflowController.create

Code samples

const inputBody = '{
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
const fetch = require('node-fetch');
const inputBody = {
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows',
{
  method: 'POST',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST /workflows

Permissions
CreateWorkflow
2

Body parameter

1
2
3
4
5
6
{
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
}

Parameters

Name In Type Required Description
body body NewWorkflow false none

Example responses

200 Response

{
  "deleted": true,
  "deletedOn": "2019-08-24T14:15:22Z",
  "deletedBy": "string",
  "createdOn": "2019-08-24T14:15:22Z",
  "modifiedOn": "2019-08-24T14:15:22Z",
  "createdBy": "string",
  "modifiedBy": "string",
  "id": "string",
  "workflowVersion": 0,
  "externalIdentifier": "string",
  "name": "string",
  "provider": "string",
  "inputSchema": {},
  "description": "string"
}

Responses

Status Meaning Description Schema
200 OK Workflow model instance Workflow

WorkflowController.find

Code samples

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/workflows',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET /workflows

Permissions
ViewWorkflow
1

Parameters

Name In Type Required Description
filter query workflows.Filter false none

Example responses

200 Response

[
  {
    "deleted": true,
    "deletedOn": "2019-08-24T14:15:22Z",
    "deletedBy": "string",
    "createdOn": "2019-08-24T14:15:22Z",
    "modifiedOn": "2019-08-24T14:15:22Z",
    "createdBy": "string",
    "modifiedBy": "string",
    "id": "string",
    "workflowVersion": 0,
    "externalIdentifier": "string",
    "name": "string",
    "provider": "string",
    "inputSchema": {},
    "description": "string"
  }
]

Responses

Status Meaning Description Schema
200 OK Array of Workflow model instances Inline

Response Schema

Status Code 200

Name Type Required Restrictions Description
anonymous [Workflow] false none none
» Workflow Workflow false none none
»» deleted boolean false none none
»» deletedOn string(date-time)¦null false none none
»» deletedBy string¦null false none none
»» createdOn string(date-time) false none none
»» modifiedOn string(date-time) false none none
»» createdBy string false none none
»» modifiedBy string false none none
»» id string false none none
»» workflowVersion number true none Last deployed workflow version
»» externalIdentifier string true none The key that is used to identify the workflow in the respective workflow engine.
»» name string false none Name of the workflow
»» provider string true none Provider could be the engine that will handle the workflow - camunda, zeebe, etc
»» inputSchema object true none Schema used for validation during workflow execution
»» description string false none Description of the workflow

Schemas

Workflow

{
  "deleted": true,
  "deletedOn": "2019-08-24T14:15:22Z",
  "deletedBy": "string",
  "createdOn": "2019-08-24T14:15:22Z",
  "modifiedOn": "2019-08-24T14:15:22Z",
  "createdBy": "string",
  "modifiedBy": "string",
  "id": "string",
  "workflowVersion": 0,
  "externalIdentifier": "string",
  "name": "string",
  "provider": "string",
  "inputSchema": {},
  "description": "string"
}

Workflow

Properties

Name Type Required Restrictions Description
deleted boolean false none none
deletedOn string(date-time)¦null false none none
deletedBy string¦null false none none
createdOn string(date-time) false none none
modifiedOn string(date-time) false none none
createdBy string false none none
modifiedBy string false none none
id string false none none
workflowVersion number true none Last deployed workflow version
externalIdentifier string true none The key that is used to identify the workflow in the respective workflow engine.
name string false none Name of the workflow
provider string true none Provider could be the engine that will handle the workflow - camunda, zeebe, etc
inputSchema object true none Schema used for validation during workflow execution
description string false none Description of the workflow

NewWorkflow

1
2
3
4
5
6
{
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
}

NewWorkflow

Properties

Name Type Required Restrictions Description
name string true none none
bpmnFile string true none none
inputSchema object true none none
description string false none none

WorkflowDto

1
2
3
4
5
6
{
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
}

WorkflowDto

Properties

Name Type Required Restrictions Description
name string true none none
bpmnFile string true none none
inputSchema object true none none
description string false none none

WorkflowDtoPartial

1
2
3
4
5
6
{
  "name": "string",
  "bpmnFile": "string",
  "inputSchema": {},
  "description": "string"
}

WorkflowDtoPartial

Properties

Name Type Required Restrictions Description
name string false none none
bpmnFile string false none none
inputSchema object false none none
description string false none none

ExecuteWorkflowDto

1
2
3
4
{
  "workflowVersion": 0,
  "input": {}
}

ExecuteWorkflowDto

Properties

Name Type Required Restrictions Description
workflowVersion number false none none
input object true none none

workflows.ScopeFilter

{
  "offset": 0,
  "limit": 100,
  "skip": 0,
  "order": "string",
  "where": {},
  "fields": {},
  "include": [
    {}
  ]
}

workflows.ScopeFilter

Properties

Name Type Required Restrictions Description
offset integer false none none
limit integer false none none
skip integer false none none
order any false none none

oneOf

Name Type Required Restrictions Description
» anonymous string false none none

xor

Name Type Required Restrictions Description
» anonymous [string] false none none

continued

Name Type Required Restrictions Description
where object false none none
fields any false none none

oneOf

Name Type Required Restrictions Description
» anonymous object false none none

xor

Name Type Required Restrictions Description
» anonymous [string] false none none

continued

Name Type Required Restrictions Description
include [object] false none none

workflows.IncludeFilter.Items

{
  "relation": "workflowVersions",
  "scope": {
    "offset": 0,
    "limit": 100,
    "skip": 0,
    "order": "string",
    "where": {},
    "fields": {},
    "include": [
      {}
    ]
  }
}

workflows.IncludeFilter.Items

Properties

Name Type Required Restrictions Description
relation string false none none
scope workflows.ScopeFilter false none none

Enumerated Values

Property Value
relation workflowVersions

workflows.Filter

{
  "offset": 0,
  "limit": 100,
  "skip": 0,
  "order": "string",
  "where": {},
  "fields": {
    "deleted": true,
    "deletedOn": true,
    "deletedBy": true,
    "createdOn": true,
    "modifiedOn": true,
    "createdBy": true,
    "modifiedBy": true,
    "id": true,
    "workflowVersion": true,
    "externalIdentifier": true,
    "name": true,
    "provider": true,
    "inputSchema": true,
    "description": true
  },
  "include": [
    {
      "relation": "workflowVersions",
      "scope": {
        "offset": 0,
        "limit": 100,
        "skip": 0,
        "order": "string",
        "where": {},
        "fields": {},
        "include": [
          {}
        ]
      }
    }
  ]
}

workflows.Filter

Properties

Name Type Required Restrictions Description
offset integer false none none
limit integer false none none
skip integer false none none
order any false none none

oneOf

Name Type Required Restrictions Description
» anonymous string false none none

xor

Name Type Required Restrictions Description
» anonymous [string] false none none

continued

Name Type Required Restrictions Description
where object false none none
fields any false none none

oneOf

Name Type Required Restrictions Description
» anonymous object false none none
»» deleted boolean false none none
»» deletedOn boolean false none none
»» deletedBy boolean false none none
»» createdOn boolean false none none
»» modifiedOn boolean false none none
»» createdBy boolean false none none
»» modifiedBy boolean false none none
»» id boolean false none none
»» workflowVersion boolean false none none
»» externalIdentifier boolean false none none
»» name boolean false none none
»» provider boolean false none none
»» inputSchema boolean false none none
»» description boolean false none none

xor

Name Type Required Restrictions Description
» anonymous [string] false none none

continued

Name Type Required Restrictions Description
include [anyOf] false none none

anyOf

Name Type Required Restrictions Description
» anonymous workflows.IncludeFilter.Items false none none

or

Name Type Required Restrictions Description
» anonymous string false none none