Workflow API
This article and the rest of the API documentation in this section are written for a technical audience — integrators and developers connecting external systems to Tickiti. Familiarity with HTTP, REST, JSON and bearer-token authentication is assumed.
The Workflow API exposes the Workflow admin screens — queues, resolution categories, interventions, escalations and business hours. Every endpoint runs as the token’s owner and is gated by the workflow ability plus the owner’s admin role, and (for some features) the same plan entitlement the UI requires. (FAQs are managed through the Templates API; the intervention runtime contract is the Interventions technical reference.)
Abilities and conventions
workflow:read— read endpoints.workflow:write— create / update / delete. Write implies read.
All endpoints are POST and JSON. Resolution categories require the resolution tracking plan feature, interventions the interventions feature, and escalations/business hours the escalations feature — a call without the entitlement is rejected, just as the screen is hidden in the UI.
Endpoints
| Method & path | Ability | Purpose |
|---|---|---|
| POST /api/v1/workflow/queues | workflow:read | List queues (with ticket counts) |
| POST /api/v1/workflow/queues/create | workflow:write | Create a queue |
| POST /api/v1/workflow/queues/update | workflow:write | Update a queue by queue_id |
| POST /api/v1/workflow/queues/delete | workflow:write | Delete a queue (blocked if built-in / in use) |
| POST /api/v1/workflow/queues/move | workflow:write | Move tickets between queues |
| POST /api/v1/workflow/resolution-categories | workflow:read | List resolution categories |
| POST /api/v1/workflow/resolution-categories/create | workflow:write | Create a category |
| POST /api/v1/workflow/resolution-categories/update | workflow:write | Update a category by id |
| POST /api/v1/workflow/resolution-categories/delete | workflow:write | Delete a category (blocked if in use) |
| POST /api/v1/workflow/resolution-categories/reorder | workflow:write | Reorder categories (ids) |
| POST /api/v1/workflow/interventions | workflow:read | List interventions (never returns remote tokens) |
| POST /api/v1/workflow/interventions/create | workflow:write | Create an intervention (+ fields) |
| POST /api/v1/workflow/interventions/update | workflow:write | Update an intervention by intervention_id |
| POST /api/v1/workflow/interventions/delete | workflow:write | Delete an intervention |
| POST /api/v1/workflow/interventions/generate-token | workflow:write | Mint a remote bearer token (returned once) |
| POST /api/v1/workflow/escalations | workflow:read | List escalations + business hours |
| POST /api/v1/workflow/escalations/create | workflow:write | Create an escalation |
| POST /api/v1/workflow/escalations/update | workflow:write | Update an escalation by id |
| POST /api/v1/workflow/escalations/delete | workflow:write | Delete an escalation by id |
| POST /api/v1/workflow/business-hours/update | workflow:write | Update business hours |