A valid request URL is required to generate request examples{
"id": "<string>",
"status": "pending",
"created_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"status_code": 123,
"result": "<unknown>",
"error": {
"event_id": "<string>",
"type": "<string>",
"is_bifrost_error": true,
"status_code": 123,
"error": {
"type": "<string>",
"code": "<string>",
"message": "<string>",
"param": "<string>",
"event_id": "<string>"
},
"extra_fields": {
"provider": "openai",
"model_requested": "<string>",
"request_type": "<string>"
}
}
}{
"event_id": "<string>",
"type": "<string>",
"is_bifrost_error": true,
"status_code": 123,
"error": {
"type": "<string>",
"code": "<string>",
"message": "<string>",
"param": "<string>",
"event_id": "<string>"
},
"extra_fields": {
"provider": "openai",
"model_requested": "<string>",
"request_type": "<string>"
}
}{
"event_id": "<string>",
"type": "<string>",
"is_bifrost_error": true,
"status_code": 123,
"error": {
"type": "<string>",
"code": "<string>",
"message": "<string>",
"param": "<string>",
"event_id": "<string>"
},
"extra_fields": {
"provider": "openai",
"model_requested": "<string>",
"request_type": "<string>"
}
}Create async image edit
Submits an image edit request for asynchronous execution. Returns a job ID immediately with HTTP 202. Poll the corresponding GET endpoint with the job ID to retrieve the result. Streaming is not supported for async requests.
A valid request URL is required to generate request examples{
"id": "<string>",
"status": "pending",
"created_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"status_code": 123,
"result": "<unknown>",
"error": {
"event_id": "<string>",
"type": "<string>",
"is_bifrost_error": true,
"status_code": 123,
"error": {
"type": "<string>",
"code": "<string>",
"message": "<string>",
"param": "<string>",
"event_id": "<string>"
},
"extra_fields": {
"provider": "openai",
"model_requested": "<string>",
"request_type": "<string>"
}
}
}{
"event_id": "<string>",
"type": "<string>",
"is_bifrost_error": true,
"status_code": 123,
"error": {
"type": "<string>",
"code": "<string>",
"message": "<string>",
"param": "<string>",
"event_id": "<string>"
},
"extra_fields": {
"provider": "openai",
"model_requested": "<string>",
"request_type": "<string>"
}
}{
"event_id": "<string>",
"type": "<string>",
"is_bifrost_error": true,
"status_code": 123,
"error": {
"type": "<string>",
"code": "<string>",
"message": "<string>",
"param": "<string>",
"event_id": "<string>"
},
"extra_fields": {
"provider": "openai",
"model_requested": "<string>",
"request_type": "<string>"
}
}Authorizations
Bearer token authentication. Use your provider API key or Bifrost authentication token.
Virtual keys (prefixed with sk-bf-) can also be passed here.
Headers
Time-to-live in seconds for the job result after completion. Defaults to 3600 (1 hour). After expiry, the job result is automatically cleaned up.
Name of a registered webhook endpoint to notify when this job reaches a terminal
state (completed or failed). The endpoint must already exist and be enabled;
otherwise the submission is rejected with HTTP 400. If the endpoint is not subscribed
to the resulting event, the job still completes normally but no delivery is enqueued.
When omitted, no webhook is sent for the job and results are retrieved by polling.
See the Webhooks management API to register endpoints.
Body
JSON encoding of an image edit. Sources are supplied as an images array, the same nested form
/v1/videos/edits uses for its source video. Unrecognised top-level fields are forwarded to the
provider as extra params with their JSON types intact, which is what a model's nested tuning
object needs (e.g. Runware's settings and providerSettings). To upload the image as a file,
post multipart/form-data instead - see ImageEditMultipartRequest.
Model identifier in format provider/model
Source images. Entries carrying neither a URL nor bytes are dropped; a request left with no usable image is rejected. Providers treat the first image as the primary one (Runware's seed image, Bedrock's style-transfer base), so the order is part of the contract. Only the reference-image models accept more than one; elsewhere images after the first are dropped.
One source image, either as a bare string - the form input_images takes on
/v1/images/generations - or as an object naming which arm it fills. Providers that cannot accept
a given form reject it.
Text prompt describing the edit. Required except for the operation types that are driven
purely by the input image: background_removal, erase_object, upscale, upscale_fast,
mask, segmentation, vectorize and controlnet_preprocess.
Optional base64-encoded mask image for inpainting (transparent areas indicate regions to edit). Dropped for models that declare no mask input.
Type of edit operation. Support varies by provider; unsupported values are dropped and the request runs as a standard edit.
inpainting, outpainting, background_removal, remove_background, remove_bg, erase_object, recolor, search_replace, control_sketch, control_structure, style_guide, style_transfer, upscale, upscale_fast, upscale_creative, upscale_conservative, mask, segmentation, vectorize, controlnet_preprocess, controlnet, preprocess Multiply each dimension by this factor. type: "upscale" only; mutually exclusive with
target_megapixels.
Target output size in megapixels. type: "upscale" only; mutually exclusive with
upscale_factor.
Number of images to generate
1 <= x <= 10Size of the output image
256x256, 512x512, 1024x1024, 1536x1024, 1024x1536, auto Format of the response. data_uri is supported by providers that return an inline
data URI (e.g. Runware).
url, b64_json, data_uri When true, stream the response via Server-Sent Events
Background type for the image
transparent, opaque, auto How closely to follow the original image
low, high Number of partial images to generate when streaming
0 <= x <= 3Quality of the output image
auto, high, medium, low, standard Output image format. svg applies to vectorize operations
png, webp, jpeg, tiff, svg Number of inference steps
Seed for reproducible editing
Compression level (0-100%)
0 <= x <= 100What to avoid in the edit
User identifier for tracking
Fallback models to try if primary model fails
Show child attributes
Show child attributes
Response
Job accepted for processing
Response returned when creating or polling an async job
Unique identifier for the async job
The status of an async job
pending, processing, completed, failed When the job was created
When the job result expires and will be cleaned up
When the job completed (successfully or with failure)
HTTP status code of the completed operation
The result of the completed operation (shape depends on the request type)
Error response from Bifrost
Show child attributes
Show child attributes
Was this page helpful?

