Developer docs · Problems

Delivery in flight

HTTP 409 · https://impartire.com/problems/delivery-in-flight

What it means

The same file is already being delivered to the same destination for the same requirement; receipt_id and run_id name that delivery's receipt and run. Wait for the run to end before delivering again; a run parked as an incident stays active, so cancel it if it is stuck.

What to do

Do not deliver again yet. run_id is the run pushing it: poll GET /api/v1/runs/{run_id} (or the receipt, GET /api/v1/delivery-receipts/{receipt_id}) until it ends. A run parked as an incident stays active and keeps blocking; if it is stuck, cancel it (POST /api/v1/runs/{run_id}/signals with cancel, or in the app) and deliver again — a receipt whose run ended never blocks.

Example

Sent as application/problem+json with status 409. detail varies with the request; branch on type.

{
  "type": "https://impartire.com/problems/delivery-in-flight",
  "title": "Delivery in flight",
  "status": 409,
  "detail": "This file is already being delivered to this destination for this requirement (receipt 7d8e9f0a-1b2c-4d3e-8f4a-5b6c7d8e9f0a, run 2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b). Wait for that run to finish; if it is stuck (an incident keeps it active), cancel it, then deliver again.",
  "instance": "/api/v1/delivery-requirements/4c5d6e7f-8a9b-4c0d-8e1f-2a3b4c5d6e7f/deliver",
  "request_id": "01JB8Z5W6Q4N3X2V1T0S9R8P7M",
  "receipt_id": "7d8e9f0a-1b2c-4d3e-8f4a-5b6c7d8e9f0a",
  "run_id": "2e3f4a5b-6c7d-4e8f-9a0b-1c2d3e4f5a6b"
}