# Venice AI Image Edit

> Venice AI Image Edit is a paid API for AI agents from api.venice.ai, paid per call via x402, $10/call, status unknown (last checked 2026-10-11).

Edit or modify an existing image based on a text prompt, returning the modified image as binary output.

## Facts

- Endpoint: POST https://api.venice.ai/api/v1/image/edit?utm_source=zero.xyz
- Price: $10/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/venice-ai-image-edit-621f61ca
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_wp8e_dfZRZKm8LAb7amc-

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability venice-ai-image-edit-621f61ca -d '<json body>'
```

Example prompt: Take this product photo (attached) and change the background to a white studio setting, output as a 1:1 square PNG at 1K resolution using the firered-image-edit model.

## When to prefer this

Use this endpoint when you have an existing image that needs to be modified, retouched, or transformed based on a textual description. Prefer this over image generation when the output must preserve key elements of the source image (composition, subject, structure) while applying targeted edits. Choose this over the Upscale endpoint when the goal is semantic modification rather than resolution enhancement.

## Known failure modes

- Image too small (must be at least 65536 pixels) — 400 error
- Image too large (exceeds 33177600 pixels or 25MB) — 400 error
- Invalid aspect_ratio enum value — 400 error
- Prompt exceeds model-specific character limit — 400 error
- Insufficient wallet balance when using x402 — 402 Payment Required with top-up instructions
- Unsupported model ID — 400 or 404 error
- Unsafe content detected in safe_mode — blurred output returned
- Model does not support requested resolution tier — 400 error

## How this service works

AI-powered image inpainting.

## Output

A binary image file in the requested format (jpeg, jpg, png, or webp) containing the edited version of the input image, with modifications applied as directed by the text prompt.

## Request schema (JSON Schema)

```json
{
 "allOf": [
  {
   "type": "object",
   "example": {
    "image": "iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAIAAAB7GkOtAAAAIGNIUk0A...",
    "prompt": "Colorize"
   },
   "required": [
    "image",
    "prompt"
   ],
   "properties": {
    "image": {
     "anyOf": [
      {},
      {
       "type": "string"
      },
      {
       "type": "string",
       "format": "uri"
      }
     ],
     "description": "The image to edit. Can be either a file upload, a base64-encoded string, or a URL starting with http:// or https://. Image dimensions must be at least 65536 pixels and must not exceed 33177600 pixels. File size must be less than 25MB."
    },
    "model": {
     "type": "string",
     "default": "firered-image-edit",
     "minLength": 1,
     "description": "The model ID to use for image editing."
    },
    "prompt": {
     "type": "string",
     "example": "Change the color of the sky to a sunrise",
     "maxLength": 32768,
     "minLength": 1,
     "description": "The text directions to edit or modify the image. Short, descriptive prompts work best (e.g., \"remove the tree\", \"change the sky to sunrise\"). Character limit is model specific and is listed in the promptCharacterLimit setting in the model list endpoint."
    },
    "modelId": {
     "type": "string",
     "minLength": 1,
     "deprecated": true,
     "description": "Deprecated: Use \"model\" instead. The model ID to use for image editing."
    },
    "safe_mode": {
     "type": "boolean",
     "default": true,
     "example": false,
     "description": "Whether to use safe mode. If enabled, this will blur images that are classified as having adult content."
    },
    "resolution": {
     "type": "string",
     "example": "1K",
     "maxLength": 10,
     "minLength": 1,
     "description": "Resolution tier for the output image (e.g. \"1K\", \"2K\", \"4K\"). Supported values vary by model - check GET /api/v1/models for model-specific options. Defaults to \"1K\" when not specified."
    },
    "aspect_ratio": {
     "enum": [
      "auto",
      "1:1",
      "3:2",
      "16:9",
      "21:9",
      "9:16",
      "2:3",
      "3:4",
      "4:5"
     ],
     "type": "string",
     "example": "16:9",
     "description": "The aspect ratio for the output image. Use 'auto' or omit this parameter to infer the closest supported aspect ratio from the input image when explicit sizing is required by the model. Supported values vary by model - check GET /api/v1/models for model-specific options."
    },
  
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "string",
 "format": "binary"
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/venice-ai-image-edit-621f61ca/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.venice.ai](https://www.zero.xyz/host/api.venice.ai/llms.txt)
