Retry a 503 overload on a paid generation without a double charge

A 503 overload is safe to retry on Sume if you reuse the same idempotency key. Credit is reserved at submit and released if the job fails.

4 min readSume
All posts

Yes. On Sume, retry a 503 with the same Idempotency-Key: the docs say to retry later with the same key unless the error says not to. Paid usage is reserved when a request is accepted and released if the work fails, so a retry is not charged on top of a failed attempt.

OpenAI's Sep 2 changelog says temporary model overload returns a 503 with the server_is_overloaded code and may include Retry-After. This page covers the Sume side, from the generation admission docs, read 2026-09-30.

What does Sume return for a 503?

A 503 with provider_capacity_exceeded or a runtime configuration error means Sume cannot start or dispatch generation work safely. The client behavior column says: retry later with the same idempotency key unless the error says not to retry.

Can a retry bill me twice?

Two mechanisms apply. First, the key: a replay of the same key returns the original job rather than a new one. Second, the money: at submit time Sume reserves the estimated amount; successful completion captures it, and failed jobs and failed queue admission release or refund the reservation where applicable. In Usage, that shows as a state.

Usage states from the Sume docs, read 2026-09-30.
StateMeaning in the docs
reservedEstimated usage was reserved before provider execution.
capturedBillable usage was captured after successful completion.
refundedReserved usage was released after failure or cancellation before capture.

When does reusing a key go wrong?

Only when the payload differs. The same key on a different operation or payload returns 409 idempotency_conflict, and the docs say to reuse keys only for exact retries. If you want to change the prompt, use a new key. More in idempotency keys for AI video APIs.

How should I retry?

Store the key with the request, wait (use retry-after when present), and resend the identical body with the identical key. Then check Usage for the job id: one reserved or captured row for the job means one charge. For the broader failure picture see do failed AI video jobs cost money and 429 versus 503.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume