Returns a stuck or excluded work item to the queue.
The dead-letter escape hatch. A DEAD item has exhausted its attempts, a FAILED one is waiting out a backoff, and an IGNORED one was set aside by a business rule; re-driving any of the three resets its attempt count so it gets a full budget again rather than dying on the next failure, and hastens a sweep so it is picked up now instead of at the next scheduled window. The item returns to the stage it left, exclusions included. Returns 409 when the item is not in a state an operator may act on — notably while a pass still holds its claim.
Authorization
Bearer JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.
In: header
Path Parameters
The trigger identifier.
uuidThe ledger item identifier.
uuidThe tenant identifier
Optional operator note recorded on the transition.
Operator note recorded on the transition (e.g. "PDF re-uploaded by the advisor").
length <= 4000Response Body
curl -X POST "https://api.fruxon.com/v1/tenants/string/triggers/497f6eca-6276-4993-bfeb-53cbbbba6f08/ledger/items/497f6eca-6276-4993-bfeb-53cbbbba6f08:redrive" \ -H "Content-Type: application/json" \ -d '{}'{
"id": "00000000-0000-0000-0000-000000000000",
"ledgerId": "00000000-0000-0000-0000-000000000000",
"itemKey": "string",
"label": "string",
"stageId": "string",
"status": "READY",
"stageAttempts": 0,
"nextAttemptAt": 0,
"lastError": "string",
"admittedAt": 0,
"terminalAt": 0,
"lastExecutionRecordId": "00000000-0000-0000-0000-000000000000",
"batchRunId": "00000000-0000-0000-0000-000000000000",
"batchId": "00000000-0000-0000-0000-000000000000",
"lastBatchId": "00000000-0000-0000-0000-000000000000",
"data": null,
"admittedVia": "API",
"admittedBy": "string",
"admittedByExecutionRecordId": "00000000-0000-0000-0000-000000000000",
"wakeAt": 0,
"waitingFor": "PERSON",
"cost": 0,
"runs": 0
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}{
"type": "string",
"title": "string",
"status": 0,
"detail": "string",
"instance": "string",
"property1": null,
"property2": null
}Deliberately excludes a work item, with a reason.
For genuine business exclusions — "group policy, insured is not an agency client" — which must stay visible and distinct from a failure. The reason is required: an exclusion without one is indistinguishable from a bug six months later, and the recorded reason is the only thing separating IGNORED from DEAD.
Every run one item caused, across all of its stages.
The item's combined execution record: each claim of the item as an attempt — its stage, what the ledger made of it — with the runs it caused, and the whole set as one run tree. It reaches runs the transition log never names: the one running now, one whose lease ran out before it finished, and the sub-tasks and consults a stage agent spawned. Totals are the item's own: its runs and their children, and its share of each batch run it was a member of. Run summaries only. A run's trace is read through its agent, under that agent's own access check.