Luma Dream Machine API Callback
Version 1.0.0
Server-to-server callback delivered by the Luma Dream Machine API when an asynchronous generation transitions between states. Luma POSTs a JSON document carrying the `Generation` object to a customer-supplied `callback_url` provided at submission time on the generation create endpoints (for example `POST /dream-machine/v1/generations/video`, `/generations/image`, and related modify, reframe, upscale, and audio endpoints). The documented surface, taken from the Luma Labs developer documentation (https://docs.lumalabs.ai/) and the "Callbacks & Credits Balance" changelog entry at https://docs.lumalabs.ai/changelog/callbacks-and-credits-balance, states: - The callback is an HTTP `POST` request. - The request body is the `Generation` object JSON. - All updates are sent over the callback channel (state, video URL, failure reason). - Luma retries delivery 3 times with a 100ms delay and a 5 second request timeout when the receiver does not return HTTP 200. Fields that are not part of the documented callback contract — for example a signed-payload header (no `X-Luma-Signature` is documented at the time of writing), an idempotency key, or a discrete event envelope wrapping the `Generation` object — are intentionally NOT modeled here. The receiver should treat the body as the same `Generation` representation returned by `GET /dream-machine/v1/generations/{id}` and dispatch on the `state` field. For details not covered by this AsyncAPI document (per-field schemas of every request variant, error codes, rate limits, billing), consult the corresponding REST OpenAPI definition at `openapi/luma-ai-openapi.yml` and the live docs at https://docs.lumalabs.ai/.
Channels
Messages
Servers
{callback_url}