FLUX 3 API polling: the Reasoning status and Sume job statuses

FLUX 3 Image polls through Pending, Reasoning, Generating and Ready, and stops on four terminal states. Map them to Sume's queued to completed statuses.

4 min readSume
All posts

FLUX 3 Image adds a Reasoning status to its poll loop: keep polling while status is Pending, Reasoning or Generating, read result.sample at Ready, and stop on Error, Request Moderated, Content Moderated or Task not found. Sume's job status is a fixed list, queued, processing, completed, failed and canceled, so the two sets need a small mapping.

BFL facts are from its FLUX 3 Image reference; Sume facts from errors and credits and generation admission, read 2026-10-01.

What should I do with Reasoning?

Treat it as in progress. The reference lists it with Pending and Generating as the states to keep polling through, and does not say how long it lasts. If your current loop only knows Pending and Generating, an unknown status could be read as a failure; make your loop continue on any status that is not a terminal one.

The reference adds that polling errors may use HTTP 503 with a regular JSON body, so inspect status before treating a 503 as fatal.

How do the two status sets map?

Poll states in the BFL reference and the Sume status vocabulary, read 2026-10-01.
FLUX 3 Image statusMeaningClosest Sume status
PendingKeep pollingqueued
ReasoningKeep pollingprocessing
GeneratingKeep pollingprocessing
ReadyDownload result.samplecompleted
ErrorStopfailed
Request Moderated / Content ModeratedStopfailed (read the error)
Task not foundStop404 not_found

What does Sume say about queued?

The docs are direct: do not treat queued as failure. Store the job_id, poll status with backoff, and fetch the result only when the job reports result_ready: true or status: completed. Job status values are queued, processing, completed, failed and canceled. The mapping above is a reading aid, not a documented equivalence; Sume's moderation outcomes are covered in moderation reasons on Sume.

When does Sume return a job at all?

Only when the work outlasts the wait or you ask for it. POST /v1/images blocks for up to 30 seconds and returns 200; otherwise, or with mode: "async", it returns 202 with the job envelope. Check the status code, not the body shape. See 202 Accepted vs 200 OK and the Image API.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume