ticket.open
Create or collapse-into a ticket — the single ingress for humans and adapters.
Overview
| Property | Value |
|---|---|
| Workflow type | Linear |
| Library | App-tickets |
| Version | 1.0 |
Input Schema
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
organization_uuid | string | Yes | — | Organization that owns the ticket; injected from authenticated context. |
kind | string | Yes | — | Ticket kind. Values: incident, task, info. |
title | string | Yes | — | Short human-readable work title. |
source_type | string | Yes | — | Ticket provenance. Values: lumen_error_group, actor_finding, alert_rule, audit_finding, tool_request, workflow_run, human, api, linear. |
owner_type | string | Yes | — | Principal type. Values: human, actor, agent, platform. |
owner_uuid | string | Yes | — | UUID or stable identifier of the creating principal. |
body | string | No | — | Optional detailed problem statement or work request. |
subject_type | string | No | — | Optional ecosystem object type that the work concerns. |
subject_uuid | string | No | — | Optional public UUID of the subject object. |
source_uuid | string | No | — | Optional public UUID of the source signal or record. |
source_fingerprint | string | No | — | Stable source deduplication key; repeated opens collapse into one ticket. |
priority | string | No | — | Priority. Canonical values: page, priority, routine, deferred. Accepted aliases: urgent->page, high->priority, medium->routine, low->deferred. |
severity | string | No | — | Impact severity. Values: critical, high, medium, low, info. |
assignee_type | string | No | — | Principal type. Values: human, actor, agent, platform. |
assignee_uuid | string | No | — | Optional UUID or stable identifier of the assigned principal. |
labels | list | No | — | Optional labels; repeated values are normalized by persistence. |
extra | json | No | — | Optional source-specific metadata retained with the ticket. |
evidence_refs | list | No | — | Workflow IDs or {workflow_uuid, role} evidence links. |
dispatch | boolean | No | — | When true, best-effort deliver the new assignment after persistence. |
Output Schema
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
ticket_uuid | string | No | — | Public UUID of the created or deduplicated ticket. |
created | boolean | No | — | True when a new ledger row was created; false when deduplicated. |
status | string | No | — | Current canonical ticket lifecycle status. |
occurrence_count | integer | No | — | Number of source occurrences collapsed into this ticket. |
organization_uuid | string | No | — | Input field preserved in workflow state. |
kind | string | No | — | Input field preserved in workflow state. |
title | string | No | — | Input field preserved in workflow state. |
source_type | string | No | — | Input field preserved in workflow state. |
owner_type | string | No | — | Input field preserved in workflow state. |
owner_uuid | string | No | — | Input field preserved in workflow state. |
body | string | No | — | Input field preserved in workflow state. |
subject_type | string | No | — | Input field preserved in workflow state. |
subject_uuid | string | No | — | Input field preserved in workflow state. |
source_uuid | string | No | — | Input field preserved in workflow state. |
source_fingerprint | string | No | — | Input field preserved in workflow state. |
priority | string | No | — | Input field preserved in workflow state. |
severity | string | No | — | Input field preserved in workflow state. |
assignee_type | string | No | — | Input field preserved in workflow state. |
assignee_uuid | string | No | — | Input field preserved in workflow state. |
labels | list | No | — | Input field preserved in workflow state. |
extra | json | No | — | Input field preserved in workflow state. |
evidence_refs | list | No | — | Input field preserved in workflow state. |
dispatch | boolean | No | — | Input field preserved in workflow state. |
failed_at | string | No | — | ISO-8601 timestamp when action_fail recorded the failure |
failure_reason | string | No | — | Human-readable failure reason from action_fail |
failure_type | string | No | — | Engine-stamped failure category |
failed_action | string | No | — | Engine-stamped action that raised |
failed_at_state | string | No | — | Engine-stamped state when the workflow failed |
failed_step | string | No | — | Engine-stamped step name (DAG path) |
failed_layer | string | No | — | Engine-stamped layer index (DAG path) |
error | string | No | — | Engine-stamped exception message |
error_type | string | No | — | Engine-stamped exception class name |
States
| State | Initial | Terminal | Success | Auto-advance | Description |
|---|---|---|---|---|---|
initiated | Yes | No | — | execute | Accepted |
executing | No | No | — | complete | Applying the mutation |
completed | No | Yes | Yes | — | Done |
failed | No | Yes | No | — | Failed |
State Diagram
Transitions
| From | Action | To | Description |
|---|---|---|---|
initiated | execute | executing | Run the mutation |
executing | complete | completed | Finalize |
* (any state) | fail | failed | Catch-all failure |
API Usage
bash
POST /api/workflows/start
Content-Type: application/json
{
"workflow_type": "ticket.open",
"initial_data": {
"organization_uuid": "value",
"kind": "value",
"title": "value",
"source_type": "value"
}
}