Zum Inhalt springen

Intentos REST API Referenz

Die Intentos REST API: Basis URL, Anmeldung mit API Schlüsseln, Endpunkte zur Bilderzeugung, Anfrage und Antwortformate, Fehler und Credit Kosten. Die technische Dokumentation ist auf Englisch.

Generate images

POST/api/v1/images

Generate one to four images from a prompt. Deducts credits (see Credit costs) and saves each result to your generation history.

Body

json — json
{
"prompt": "a neon dragon over Tokyo", // required
"model": "nano-banana", // optional, default nano-banana
"ratio": "16:9", // 1:1 | 16:9 | 9:16 | 4:5 | 3:2 | 2:3
"count": 1, // 1 to 4
"image_urls": [] // required for edit models
}

Response

json — json
{
"images": [{ "url": "https://…​.jpg", "id": "uuid" }],
"model": "nano-banana",
"credits_spent": 6,
"credits_remaining": 994
}

Edit models (nano-banana-edit, flux-kontext-pro) require at least one URL in image_urls.

Generate video

POST/api/v1/videos

Video generation is asynchronous. Submitting returns a job id and a poll URL; the credits are charged up front and automatically refunded if the render fails.

Body

json — json
{
"prompt": "a drone shot over a neon city at night", // required
"model": "kling-2.5-turbo", // kling-3-pro, seedance-2.0, veo-3, wan-pro, ltx-2.3-fast, …
"ratio": "9:16",
"duration": 5,
"image_url": "https://…​.jpg", // optional first frame (image-to-video)
"image_mode": "first-frame"
}

Response (202)

json — json
{ "id": "uuid", "status": "pending", "credits_spent": 28, "poll": "/api/v1/videos/uuid" }
GET/api/v1/videos/{id}

Poll every few seconds until status is done (with a url) or error.

bash — bash
curl https://intentos.eu/api/v1/videos/uuid -H "Authorization: Bearer sk_live_…"
# { "id": "uuid", "status": "done", "url": "https://…​.mp4" }

Upscale & remove background

POST/api/v1/upscale

4× upscale an image. Cost: 5 credits. Body: { "image_url": "https://…" } → { "url", "credits_spent", "credits_remaining" }.

POST/api/v1/remove-bg

Remove the background (transparent PNG). Cost: 3 credits. Same body and response shape as upscale.

Text to speech

POST/api/v1/voice

Synthesize speech with your own ElevenLabs voice. Because it uses your own key (configure it in Settings), it does not spend IntentOS credits. Returns audio/mpeg.

bash — bash
curl -X POST https://intentos.eu/api/v1/voice \
-H "Authorization: Bearer sk_live_…" -H "Content-Type: application/json" \
-d '{ "text": "Hello from IntentOS" }' --output speech.mp3

Get credits

GET/api/v1/credits

Returns your current balance and plan.

json — json
{ "credits": 992, "plan": "pro", "credit_value_eur": 0.05 }

List generations

GET/api/v1/generations?type=image&limit=20

Lists your recent generations, newest first. type is image (default) or video; limit is 1 to 100.

json — json
{
"type": "image",
"generations": [
{ "id": "uuid", "prompt": "…", "model": "nano-banana",
"ratio": "1:1", "url": "https://…​.jpg", "created_at": "…" }
]
}

Create a Meta campaign

POST/api/v1/meta-ads/campaigns

Creates one campaign with 1 to 10 ad sets and one ad per image on your connected Meta ad account. Everything is created paused and rolled back if any step fails. Each ad set may name the saved ad it is based on with source_saved_ad_id (optional). The hook, angle, formats and advertiser of that saved ad are then stored with every created ad as its launch record.

json — json
{
"name": "Autumn launch",
"objective": "OUTCOME_TRAFFIC",
"ad_sets": [{
"name": "DE broad",
"daily_budget": 20,
"countries": ["DE"],
"link": "https://example.com",
"message": "Your ad text",
"images": ["https://example.com/ad.jpg"],
"source_saved_ad_id": "uuid of a saved ad (optional)"
}]
}

Skills marketplace

GET/api/v1/skills?q=ads&category=ads&sort=popular&limit=20

Search published, reviewed skills. sort is newest (default), popular or name. Categories: image video ads carousels shorts branding research voice automation other.

GET/api/v1/skills/:slug

Returns one skill with its full instructions and a ready-to-save file (SKILL.md with frontmatter). Counts as an install for your account.

json — json
{
"slug": "product-ad-set",
"name": "Product ad set",
"version": "1.0.0",
"creator": "IntentOS",
"instructions": "# What this skill does…",
"filename": "product-ad-set/SKILL.md",
"file": "---
name: product-ad-set
…"
}