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
/api/v1/imagesGenerate 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
/api/v1/videosVideo 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" }
/api/v1/videos/{id}Poll every few seconds until status is done (with a url) or error.
bash — bashcurl https://intentos.eu/api/v1/videos/uuid -H "Authorization: Bearer sk_live_…"# { "id": "uuid", "status": "done", "url": "https://….mp4" }
Upscale & remove background
/api/v1/upscale4× upscale an image. Cost: 5 credits. Body: { "image_url": "https://…" } → { "url", "credits_spent", "credits_remaining" }.
/api/v1/remove-bgRemove the background (transparent PNG). Cost: 3 credits. Same body and response shape as upscale.
Text to speech
/api/v1/voiceSynthesize 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 — bashcurl -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
/api/v1/creditsReturns your current balance and plan.
json — json{ "credits": 992, "plan": "pro", "credit_value_eur": 0.05 }
List generations
/api/v1/generations?type=image&limit=20Lists 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
/api/v1/meta-ads/campaignsCreates 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
/api/v1/skills?q=ads&category=ads&sort=popular&limit=20Search published, reviewed skills. sort is newest (default), popular or name. Categories: image video ads carousels shorts branding research voice automation other.
/api/v1/skills/:slugReturns 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…"}