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.
Bearer token authentication. Use your MPilot virtual-key JWT or admin JWT.
Virtual keys (prefixed with sk-bf-) can also be passed here.
In: header
Header Parameters
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.
3600Model identifier in format provider/model
Text prompt describing the edit. Required unless type is background_removal.
Image file to edit. Use field name image for a single file or image[] for multiple files.
binaryOptional mask image for inpainting (transparent areas indicate regions to edit)
binaryType of edit operation
"inpainting" | "outpainting" | "background_removal"Number of images to generate
1 <= value <= 10Size of the output image
"256x256" | "512x512" | "1024x1024" | "1536x1024" | "1024x1536" | "auto"Format of the response
"url""url" | "b64_json"When true, stream the response via Server-Sent Events
falseBackground 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 <= value <= 3Quality of the output image
"auto" | "high" | "medium" | "low" | "standard"Output image format
"png" | "webp" | "jpeg"Number of inference steps
Seed for reproducible editing
Compression level (0-100%)
0 <= value <= 100What to avoid in the edit
User identifier for tracking
Fallback models to try if primary model fails
Response Body
curl -X POST "https://loading/{AI_GATEWAY_URL}/v1/async/images/edits" \ -H "x-bf-async-job-result-ttl: 3600" \ -F model="string" \ -F image="string"{
"id": "string",
"status": "pending",
"expires_at": "2019-08-24T14:15:22Z",
"created_at": "2019-08-24T14:15:22Z",
"completed_at": "2019-08-24T14:15:22Z",
"status_code": 0,
"result": null,
"error": {
"event_id": "string",
"type": "string",
"is_bifrost_error": true,
"status_code": 0,
"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": 0,
"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": 0,
"error": {
"type": "string",
"code": "string",
"message": "string",
"param": "string",
"event_id": "string"
},
"extra_fields": {
"provider": "openai",
"model_requested": "string",
"request_type": "string"
}
}