Last updated: Jul 30, 2026
Status & Lifecycles
Status & Lifecycleslink
Some Infraspeak entities follow defined state machines. Understanding these lifecycles helps you build integrations that correctly track and transition entity states.
Failure (Work Order) Lifecyclelink
Work Orders follow this state progression:
stateDiagram-v2
[*] --> WAITING_APPROVAL
WAITING_APPROVAL --> ARCHIVED : delete
WAITING_APPROVAL --> COMPLETED : decline
WAITING_APPROVAL --> WAITING_RESOLUTION : approve
WAITING_RESOLUTION --> ARCHIVED : delete
WAITING_RESOLUTION --> WAITING_APPROVAL : undo approval
WAITING_RESOLUTION --> IN_RESOLUTION : start
WAITING_APPROVAL --> IN_RESOLUTION : start
IN_RESOLUTION --> ARCHIVED : delete
IN_RESOLUTION --> PAUSED : pause
PAUSED --> ARCHIVED : delete
PAUSED --> IN_RESOLUTION : resume
PAUSED --> COMPLETED : close
IN_RESOLUTION --> COMPLETED : close
COMPLETED --> IN_RESOLUTION : reopen
COMPLETED --> ARCHIVED : delete
Failure Stateslink
| State | Description | Actions Available |
|---|---|---|
WAITING_APPROVAL |
Newly created, pending review | Approve, Decline, Start, Delete |
WAITING_RESOLUTION |
Approved, ready to start | Start, Undo Approval, Delete |
IN_RESOLUTION |
Work in progress | Pause, Close, Delete |
PAUSED |
Work temporarily stopped | Resume, Close, Delete |
COMPLETED |
Work closed/finished | Reopen, Delete |
ARCHIVED |
Deleted record | None |
Filtering by Statelink
# Get all open failures (not closed or archived)
GET /failures/open
# Get all closed failures
GET /failures/closed
# Filter by specific state
GET /failures?s_state=WAITING_RESOLUTION
# Multiple states
GET /failures?s_state_in=WAITING_RESOLUTION,IN_RESOLUTION
Scheduled Work (Planned Job Order) Lifecyclelink
Preventive maintenance tasks follow this state progression:
stateDiagram-v2
[*] --> SCHEDULED
SCHEDULED --> ARCHIVED : cancel
ARCHIVED --> SCHEDULED : undo cancelation
SCHEDULED --> CANCELED : delete
CANCELED --> SCHEDULED : undo deletion
SCHEDULED --> RUNNING : start
RUNNING --> PAUSED : pause
PAUSED --> RUNNING : resume
PAUSED --> COMPLETED : close
RUNNING --> COMPLETED : close
COMPLETED --> RUNNING : reopen
COMPLETED --> COMPLETED_CANCELED : delete
COMPLETED_CANCELED --> COMPLETED : undo deletion
Scheduled Work Stateslink
| State | Description | Actions Available |
|---|---|---|
SCHEDULED |
Scheduled job order | Start, Cancel, Delete |
RUNNING |
Work in progress | Pause, Close |
PAUSED |
Work temporarily stopped | Resume, Close |
COMPLETED |
Work closed/finished | Reopen, Delete |
COMPLETED_CANCELED |
Deleted record | Undo Deletion |
Buy Order Lifecyclelink
Purchase orders follow this flow:
stateDiagram-v2
[*] --> SAVED_AS_DRAFT
SAVED_AS_DRAFT --> CREATED : create
CREATED --> RECEIVED : receive
CREATED --> RECEIVED_PARTIALLY : receive partially
RECEIVED --> CREATED : undo receive
RECEIVED --> CONFIRMED : confirm
RECEIVED_PARTIALLY --> RECEIVED : receive
CONFIRMED --> RECEIVED : undo confirmation
Buy Order Stateslink
| State | Description | Actions Available |
|---|---|---|
SAVED_AS_DRAFT |
Draft order | Create |
CREATED |
Order submitted | Receive, Receive Partially |
RECEIVED_PARTIALLY |
Googs partially received | Receive |
RECEIVED |
All goods received | Confirm, Undo Receive |
CONFIRMED |
Order fulfilled | Undo Confirmation |
Sell Order Lifecyclelink
Sell order follow this flow:
stateDiagram-v2
[*] --> DRAFT
DRAFT --> RUNNING : start
DRAFT --> CANCELLED : cancel
CANCELLED --> DRAFT : undo cancelation
RUNNING --> COMPLETED : complete
RUNNING --> CANCELLED : cancel
COMPLETED --> RUNNING : undo completion
COMPLETED --> COMPLETED_CONFIRMED : confirm
COMPLETED_CONFIRMED --> COMPLETED : undo confirmation
Sell Order Stateslink
| State | Description | Actions Available |
|---|---|---|
DRAFT |
Draft order | Start, Cancel |
RUNNING |
Order being prepared | Complete, Cancel |
CANCELLED |
Order cancelled | Undo Cancelation |
COMPLETED |
Order attended | Confirm, Undo Completion |
COMPLETED_CONFIRMED |
Order fulfilled | Undo Confirmation |
Working with State Timestampslink
State transitions are usually tracked with timestamps. Example from a Work Order:
{
"id": "12345",
"type": "failure",
"attributes": {
"state": "COMPLETED",
"report_date": "2026-06-16 10:30:00",
"approved_date": "2026-06-16 11:00:00",
"started_date": "2026-06-16 14:00:00",
"completed_date": "2026-06-16 16:30:00"
}
}