Skip to content

Cancel and replay requests

Cancellation and replay are actions on request resources. Neither action deletes or mutates completed attempt history.

POST https://api.stormedo.com/requests/{request_id}/cancel
Terminal window
curl --request POST \
'https://api.stormedo.com/requests/req_33uZSQsVaf8aZjDuzkuAq/cancel' \
--header "Authorization: Bearer $STORMEDO_TOKEN"

An accepted durable cancellation returns 202 Accepted:

{
"success": true,
"data": {
"id": "req_33uZSQsVaf8aZjDuzkuAq",
"status": "cancellation_requested"
},
"error": null,
"meta": null,
"request_id": "95c07a5c-3d44-4b89-84a6-c5a71313bff2"
}

If the request is already cancelled, the endpoint returns 200 OK with status: "cancelled".

Cancellation stops a scheduled wait or later retry after the durable workflow observes the signal. An HTTP attempt already in flight may still finish. Requests that already succeeded or failed return 409 Conflict.

POST https://api.stormedo.com/requests/{request_id}/replay

Replay accepts an optional Idempotency-Key header containing 1 to 255 bytes.

Terminal window
curl --request POST \
'https://api.stormedo.com/requests/req_33uZSQsVaf8aZjDuzkuAq/replay' \
--header "Authorization: Bearer $STORMEDO_TOKEN"

Stormedo returns 202 Accepted with a new request:

{
"success": true,
"data": {
"id": "req_45vATRtWbg9bAkEv0lvBr",
"project_id": "prj_2Z5mQe7cB9kP4sV8xH1nD",
"replayed_from_request_id": "req_33uZSQsVaf8aZjDuzkuAq",
"status": "queued",
"scheduled_at": null,
"created_at": "2026-08-28T11:15:30Z"
},
"error": null,
"meta": null,
"request_id": "67d18b7c-5f3e-4a58-b748-40b555c8d9a1"
}

Replay copies the destination, method, headers, body, content type, retry configuration, timeout, queue, and metadata. It does not copy the original delivery time or recurring schedule ownership. The new request begins immediately with a fresh attempt budget.

Only completed or cancelled requests can be replayed. Active requests return 409 Conflict.

Status When it occurs
401 The project API key is missing or invalid.
404 The request does not exist in the API key project.
409 Cancellation targets a completed request, replay targets an active request, or an idempotency key conflicts.
422 A replayed stored definition no longer satisfies current delivery validation.
429 Replay would exceed the workspace monthly request allowance.
502 or 503 Stormedo could not durably accept the action.