Image
POST /image
Generate a new image from a prompt, or edit an existing image
POST
Request Body
Text description of the image to generate, or the edit instructions when
operation is "edit". Required unless profile supplies a default prompt."generate" (text-to-image) or "edit" (image-to-image).Gemini image model, e.g.
"gemini-2.5-flash-image" or "gemini-3-pro-image-preview". Defaults to the first active image model in your workspace’s catalog, or the profile default.Named enhancement profile, e.g.
"ultrasound". Applies profile defaults for prompt, operation, and model.Base64-encoded source image (with or without a
data:image/png;base64, prefix). Required for operation: "edit" unless image_url or raw_image_id is given.URL to a source image (PNG, JPEG, WebP, or GIF). Alternative to
image.UUID of a previously uploaded raw image (requires S3 storage) — re-runs enhancement on a stored upload instead of re-uploading.
"gemini" or "aws-nova-canvas". AWS Nova Canvas is only available with profile: "ultrasound".Store raw/processed images in S3. Defaults to
true if STORAGE_PROVIDER=s3 is configured for your workspace, otherwise false.Response
Model used
Resolved prompt actually sent to the model
"generate" or "edit"Base64-encoded PNG. Present when S3 storage isn’t enabled.
Profile used, if any
Present only with S3 storage enabled
Present only with S3 storage enabled
Signed URL to the raw image. Present only with S3 storage enabled
Signed URL to the generated/edited image. Present only with S3 storage enabled
Errors
| Status | Code | Message |
|---|---|---|
| 400 | MISSING_IMAGE_INPUT | Image input required for edit operation. Provide either "image" (base64) or "image_url" |
| 400 | — | Prompt is required |
| 400 | — | Invalid model |
| 401 | — | Invalid API key |
| 402 | INSUFFICIENT_CREDITS | Insufficient credits. Please purchase additional credits to continue. |
| 429 | — | Gemini quota exceeded |
| 500 | — | Failed to generate image: {details} |