bria/image-edit-relight, served by Comfy Router from Bria.
Quick start
Create a key in your Comfy workspace and export it asCOMFY_API_KEY. The Python and TypeScript snippets use the Comfy SDKs (pip install comfy-sdk, npm install @comfyorg/sdk); the cURL snippet is the same call over raw HTTP.
Model ID: bria/image-edit-relight
Endpoint: POST https://api.comfy.org/v2/models/bria/image-edit-relight
- Wait for the result
- Queue and collect later
Schema
Input
string
required
The image to edit. Supported input types are Base64-encoded string or URL pointing to a publicly accessible image file. Accepted formats JPEG, JPG, PNG, WEBP.
string
The light direction, one of “front”, “side”, “bottom”, or “top-down”.
string
required
The lighting atmosphere to apply, one of “midday”, “blue hour light”, “low-angle sunlight”, “sunrise light”, “spotlight on subject, keep background settings”, “overcast light”, “soft overcast daylight lighting”, “cloud-filtered lighting”, “fog-diffused lighting”, “moonlight lighting”, “starlight lighting nighttime”, “soft bokeh lighting”, or “harsh studio lighting keep background setting”.
GET /v2/models/bria/image-edit-relight/openapi.json, the same document it validates a call against before the request reaches the provider.
Output
object
Error object (only present when status is ERROR)
integer
Error code.
string
Additional error details.
string
Error message.
string
Unique identifier for the request.
object
Result object (only present when status is COMPLETED)
string
URL of the generated/edited image.
string
Original prompt.
string
Refined version of the prompt, or null on a COMPLETED generation Bria did not refine. Nullable because the key is PRESENT carrying null rather than omitted; observed live on bria/image-edit-gen-fill.
integer
Seed used for generation.
string
The detailed JSON structured prompt.
string
URL of the generated video.
string
Current status of the request.Possible values:
IN_PROGRESS, COMPLETED, ERROR, UNKNOWNExamples
Input
Output
Before you ship
The SDKs create anIdempotency-Key and reuse it for automatic retries. For manual retries, reuse the original key. Router can hold the connection for up to 10 minutes.
When a request fails, Router sends an X-Comfy-Error-Type response header explaining why. A 422 means Router rejected the input before calling the provider, and a 413 means the request body was larger than Router accepts. Download generated assets promptly because result URLs can expire.
Any size limit named in a field description above is the provider’s own bound on that field, quoted from the provider’s specification. Router applies a separate cap to the whole request body, which base64-encoded media counts against: see request body size.
Headers
Authentication, idempotency, request IDs, error buckets, retry pacing, spend limits.
Using the Router API
Model discovery, validation errors, retries, and billing.
Limitations
What Router does not do today, and what to use instead.