API Reference
OpenAI Image Edit
OpenAI Image Edit
Preview guide
Paste into an AI assistant to help with integration. Documentation and examples only; no real credentials.
Updated · Reviewed
Endpoint and authentication
POST https://api.tu-zi.com/v1/images/edits
Transport: multipart
Use an inference API key. Examples contain placeholders; read credentials from environment variables.
Authorization: Bearer YOUR_API_KEY
Minimal request example
{
"model": "YOUR_MODEL",
"prompt": "Add a blue background",
"image": "@input.png"
}
Before running
Replace https://api.tu-zi.com with this site origin (do not append /v1 twice), and YOUR_MODEL with the exact marketplace model ID. Install requests for Python; use Node.js 20+ and save JavaScript as .mjs. WebSocket samples list their own dependencies.
Create an inference key on the site and set API_KEY in the environment; replace YOUR_API_KEY in cURL. Prepare local input.png/input.wav files for upload examples.
Start with a minimal request, then read the result using the response fields below. For async APIs, a returned task ID requires polling; acceptance does not mean generation has finished.
Constraints
This page describes the base protocol. Use the selected model quick start for supported fields, enums, limits and asynchronous behavior. Replace YOUR_MODEL. Form initial values are not upstream defaults. Inspect every item in data[]: url is an image download URL; b64_json is Base64-encoded image bytes to decode and save, not a URL. Handle either form. HTTP 200, empty data[] or text alone does not prove image generation succeeded. Do not send the site API key when downloading result URLs. Save and validate the actual image format/MIME; renaming an extension does not convert an image. image=@input.png is cURL local file-upload syntax. Use files in Python or FormData/Blob in JavaScript; never send @input.png or a local path as a JSON string. Let the client library set the multipart Content-Type and boundary; do not set application/json. Use multiple images, masks, sizes and output formats only when explicitly supported by the selected model.
Body parameters
| Field | Type | Required | Description / constraints |
|---|---|---|---|
| model | string | Yes | Image editing model identifier. |
| image | file | Yes | Original image file to edit. |
| mask | file | No | Optional PNG mask; transparent areas indicate regions to edit. |
| prompt | string | Yes | Image editing instructions. Example: 保留主体,将背景替换为晴朗海滩。 |
| size | string | No | Output image dimensions. Form initial value (not an upstream default): "1024x1024" Values: "1024x1024", "1536x1024", "1024x1536" |
| n | integer | No | Number of images to generate. Form initial value (not an upstream default): 1 Range in this definition: 1 ~ 10 |
Response fields
| Field | Type | Description / constraints |
|---|---|---|
| data[].url | string | Image URL in URL output mode. |
| data[].b64_json | string | Base64 image when that output mode is supported. |
Illustrative response; some endpoints show essential fields only. Optional fields may be absent.
{
"created": 1793491200,
"data": [
{
"url": "https://example.com/result.png"
}
]
}
Errors and retries
Check HTTP status and protocol-specific errors; do not mix error formats across protocols. For 401/403 check credentials and permissions, for 429 back off, and for 5xx check gateway/upstream status. Error bodies may contain error/message/code depending on the protocol.
Use bounded exponential backoff for reads. Do not blindly retry task creation, generation, or key mutations, to avoid duplicate billing or execution.
兔子API