Skip to content

FSM

GET/api/v1/fsm/definitions
GET
/api/v1/fsm/definitions

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

q?string

Full-text search over this list's searchable fields.

Length1 <= length <= 200
sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: state_count, updated_at, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/api/v1/fsm/definitions"
{  "definitions": [    {      "created_at": "2019-08-24T14:15:22Z",      "created_by": "string",      "initial_state": "string",      "name": "string",      "state_count": 0,      "updated_at": "2019-08-24T14:15:22Z",      "version": 0    }  ],  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  }}
GET/api/v1/fsm/definitions/{fsm_name}
GET
/api/v1/fsm/definitions/{fsm_name}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Query Parameters

format?string

Output format. Use mermaid to render the definition as a Mermaid diagram.

Response Body

application/json

curl -X GET "https://example.com/api/v1/fsm/definitions/string"
{  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "description": "string",  "initial_state": "string",  "name": "string",  "states": {    "property1": {      "allows": [        "string"      ],      "metadata": null,      "timeout": null    },    "property2": {      "allows": [        "string"      ],      "metadata": null,      "timeout": null    }  },  "updated_at": "2019-08-24T14:15:22Z",  "version": 0}
POST/api/v1/fsm/definitions/{fsm_name}
POST
/api/v1/fsm/definitions/{fsm_name}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/fsm/definitions/string" \  -H "Content-Type: application/json" \  -d '{    "initial_state": "string",    "states": {      "property1": {        "allows": [          "string"        ]      },      "property2": {        "allows": [          "string"        ]      }    }  }'
{  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "description": "string",  "initial_state": "string",  "name": "string",  "states": {    "property1": {      "allows": [        "string"      ],      "metadata": null,      "timeout": null    },    "property2": {      "allows": [        "string"      ],      "metadata": null,      "timeout": null    }  },  "updated_at": "2019-08-24T14:15:22Z",  "version": 0}
DELETE/api/v1/fsm/definitions/{fsm_name}
DELETE
/api/v1/fsm/definitions/{fsm_name}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Response Body

curl -X DELETE "https://example.com/api/v1/fsm/definitions/string"
Empty
POST/api/v1/fsm/definitions/{fsm_name}/bulk-transition
POST
/api/v1/fsm/definitions/{fsm_name}/bulk-transition

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/fsm/definitions/string/bulk-transition" \  -H "Content-Type: application/json" \  -d '{    "entity_ids": [      "string"    ],    "to": "string"  }'
{  "failed": 0,  "results": [    {      "entity_id": "string",      "error": "string",      "from": "string",      "success": true,      "to": "string"    }  ],  "successful": 0,  "total": 0}
POST/api/v1/fsm/definitions/{fsm_name}/bulk-transition-items
POST
/api/v1/fsm/definitions/{fsm_name}/bulk-transition-items

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/fsm/definitions/string/bulk-transition-items" \  -H "Content-Type: application/json" \  -d '{    "transitions": [      {        "entity_id": "string",        "to": "string"      }    ]  }'
{  "failed": 0,  "results": [    {      "entity_id": "string",      "error": "string",      "from": "string",      "success": true,      "to": "string"    }  ],  "successful": 0,  "total": 0}
GET/api/v1/fsm/definitions/{fsm_name}/dead-letter
GET
/api/v1/fsm/definitions/{fsm_name}/dead-letter

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Query Parameters

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

Response Body

application/json

curl -X GET "https://example.com/api/v1/fsm/definitions/string/dead-letter"
{  "entries": [    {      "entity_id": "string",      "error": "string",      "failed_at": 0,      "from_state": "string",      "fsm_name": "string",      "retries": 0,      "to_state": "string",      "version": 0    }  ],  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  }}
GET/api/v1/fsm/definitions/{fsm_name}/entities
GET
/api/v1/fsm/definitions/{fsm_name}/entities

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Query Parameters

filter?

Conditions as filter[][]=. Conditions on different fields all apply. in (any of) and all (every one of, on fields holding several values) take a comma-separated list (\, for a literal comma). exists takes true or false. Datetimes are RFC 3339, now, or a time before now such as -30m, -6h or -7d.

sort?string

Comma-separated sort keys, - for descending, at most 1. Keys: version, transition_count, updated_at, created_at. Default: -created_at.

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

page?integer

A 1-based page number, for jumping. Cannot be combined with cursor.

Range1 <= value
total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/api/v1/fsm/definitions/string/entities"
{  "entities": [    {      "created_at": "2019-08-24T14:15:22Z",      "created_by": "string",      "current_state": "string",      "entity_id": "string",      "transition_count": 0,      "updated_at": "2019-08-24T14:15:22Z",      "version": 0    }  ],  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  }}
GET/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}
GET
/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

entity_id*string

Entity ID

Response Body

application/json

curl -X GET "https://example.com/api/v1/fsm/definitions/string/entities/string"
{  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "current_state": "string",  "entity_id": "string",  "updated_at": "2019-08-24T14:15:22Z",  "version": 0}
POST/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}
POST
/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

entity_id*string

Entity ID

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/fsm/definitions/string/entities/string" \  -H "Content-Type: application/json" \  -d '{    "to": "string"  }'
{  "entity_id": "string",  "error": "string",  "from": "string",  "fsm_name": "string",  "message": "string",  "success": true,  "to": "string",  "transition_id": "string"}
DELETE/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}
DELETE
/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

entity_id*string

Entity ID

Response Body

curl -X DELETE "https://example.com/api/v1/fsm/definitions/string/entities/string"
Empty
GET/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}/history
GET
/api/v1/fsm/definitions/{fsm_name}/entities/{entity_id}/history

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

entity_id*string

Entity ID

Query Parameters

limit?integer

Rows per page, 1 to 100 (default 25).

Range1 <= value <= 100
cursor?string

The page.next_cursor of the previous page. Cannot be combined with page.

total?boolean

Set to true to include the number of matching rows in page.total.

Response Body

application/json

curl -X GET "https://example.com/api/v1/fsm/definitions/string/entities/string/history"
{  "events": [    {      "actor": "string",      "context": null,      "entity_id": "string",      "from": "string",      "timestamp": "2019-08-24T14:15:22Z",      "to": "string",      "transition_id": "string",      "version": 0    }  ],  "page": {    "has_more": true,    "next_cursor": "string",    "page": 0,    "total": 0  }}
GET/api/v1/fsm/definitions/{fsm_name}/metrics
GET
/api/v1/fsm/definitions/{fsm_name}/metrics

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

fsm_name*string

FSM definition name

Response Body

application/json

curl -X GET "https://example.com/api/v1/fsm/definitions/string/metrics"
{  "dead_letter_count": 0,  "entities_by_state": {    "property1": 0,    "property2": 0  },  "total_entities": 0,  "transitions_last_24h": 0,  "transitions_last_hour": 0}