Image generation API from an EU company

Generate, edit and combine photos, graphics and diagrams with one HTTPS call, then crop, resize, vectorise or remove the background with the same key. Built and operated in Greece, with servers and storage in France. Image models run with their providers, some outside the EU. Pay per image, in euros.

curl

Terminal window
curl -X POST https://api.depicta.ai/v1/generate/image \
-H "Authorization: Bearer dpct_YOUR_API_KEY" \
-H "Content-Type: application/json" \
--max-time 900 \
-d '{
"prompt": "A cozy coffee shop interior, warm lighting, watercolor style",
"aspect_ratio": "16:9"
}'

Python

import httpx
response = httpx.post(
"https://api.depicta.ai/v1/generate/image",
headers={"Authorization": "Bearer dpct_YOUR_API_KEY"},
json={
"prompt": "A cozy coffee shop interior, warm lighting, watercolor style",
"aspect_ratio": "16:9",
},
timeout=900, # generations can take several minutes
)
data = response.json()
print(data["image_url"])

JavaScript

const response = await fetch("https://api.depicta.ai/v1/generate/image", {
method: "POST",
headers: {
"Authorization": "Bearer dpct_YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
prompt: "A cozy coffee shop interior, warm lighting, watercolor style",
aspect_ratio: "16:9",
}),
});
const data = await response.json();
console.log(data.image_url);

Response

{
"model": "microsoft/mai-image-2.6-flash",
"ai_generated": true,
"formats": {
"png": {
"url": "https://media.depicta.ai/...",
"expires_at": "2026-04-06T16:00:00Z"
}
},
"cost_eur": "0.036000",
"balance_eur": "9.964000"
}

Every successful generate, edit and combine call returns what it cost and what's left in your balance.

Prefer the terminal?

Terminal window
npx depicta@latest image "A sunset over Greek mountains, warm golden light"

The same commands in Python (uvx depicta@latest) and Node (npx depicta@latest). The CLI saves the file and prints the cost and your balance. Commands pipe into each other:

Terminal window
depicta image "A product photo" | depicta process remove-bg - | depicta process resize - --width 512

First run: npx depicta@latest auth login with your API key, or set DEPICTA_API_KEY.

CLI guide →

What the API covers

  • Three kinds of picture

    image for photos and artwork, graphic for logos, icons and images with text, diagram for flowcharts, architecture and charts.

  • Generate, edit, combine

    Describe a new picture, change an existing one in a sentence, or combine 2 to 5 images into one. Some models take fewer.

  • 21 processing operations

    Remove backgrounds, vectorise, crop, resize, convert, optimise and 15 more.

  • Illustrated stories

    Up to 10 scenes with the same characters throughout. A story runs as a job you poll.

  • Your choice of model

    Pass model, or leave it out and Depicta uses your default model, or the recommended one for the task. GET /v1/models and GET /v1/pricing return the current models and live prices.

  • Works with AI assistants

    • Claude Code, through a skill file;
    • Claude on the web and Claude Desktop, through the Depicta connector;
    • Cursor, GitHub Copilot, Windsurf, Cline and other coding assistants, through the Depicta command-line tool;
    • any app, through the API.
Full reference, generated from the OpenAPI spec →

What happens to the images and the data

  • Marked as AI-generated. Every image Depicta generates carries Content Credentials (C2PA), which record that it is AI-generated, and an invisible watermark in each file we deliver, except very plain or transparent images and GIF or SVG files. Check an image for our marks.
  • Short-lived files. Images are delivered through links that expire after one hour, and we delete them shortly afterwards. Photos you upload are deleted within 24 hours.
  • Prompts. We keep your prompts for 12 months, encrypted, to investigate abuse and to answer lawful requests from authorities.
  • Checked first. Before we generate or process an image, we check your prompt and every input image against our Acceptable Use Policy.
  • Where it runs. Depicta is built and operated by 30ohm L.P. in Greece, and our servers and storage are in France. To make an image, we send your prompt and any input images, through OpenRouter, to the AI model provider for the model you use. Some of these providers are outside the EU. The Privacy Policy lists each provider, where it processes data and how long it may keep it.

Processing your users' or clients' data? Our Data Processing Addendum is part of our Terms, with no signature needed.

What we handle, what you handle

Pay per image, in euros

  • Top up from €10 (plus VAT) when you need more. Credits last 12 months from your last top-up.
  • No subscription. Stripe is our merchant of record. It charges the VAT that applies in your country.
See every model's price →

Questions developers ask

Is there an SDK?

There are command-line tools for Python and Node. In your own code, call the REST API directly (JSON over HTTPS with a Bearer key), or generate a client from the OpenAPI spec.

How long does a call take?

It depends on the model. Most generations finish within two minutes and some take up to five; the server limit is 12 minutes. Set a long client timeout (the examples use 900 seconds). Stories run as a job you poll.

Are there rate limits?

Too many requests at once get a 429 with a Retry-After header, and up to 3 stories can run at a time.

Can I use the images in my product?

Yes. We claim no ownership of the images you create, and you may use, change, share and sell them. Two things to know: AI-generated images may not be protected by copyright, and the AI model provider's own terms may also apply. See Terms, section 7.

Do I get invoices for my business?

Yes — contact us for quotes, custom contracts, or formal invoicing, and we'll work out the details.

Get your API key and make your first image

Get an API key