Carousel Steps Post
Generates a series of 1080×1080 images in the CallAI (Warm Signal) identity. Text is rendered programmatically (Satori), not baked in by the model — no AI typos.
Slides (5)
Edit slide 1
Agent API
Agent API
Public rendering API for coding agents. A machine-readable quick reference is also available at /llms.txt.
Render one PNG slide
- GET
/api/og/instagram-slide→image/png- Required
heading,body- Optional
eyebrow,footer,icon,accent,themeId,index,total
curl -G 'https://instagram.soowa.it/api/og/instagram-slide' \
--data-urlencode 'heading=Call now' \
--data-urlencode 'body=Tell CallAI what needs doing.' \
--data-urlencode 'icon=phone' \
--data-urlencode 'accent=terracotta' \
--data-urlencode 'themeId=warm-signal' \
--output slide.pngRender a series
- POST
/api/instagram/series- Request
application/json:{ format?: "zip" | "json", slides: Slide[] }- Response
application/zipby default, or JSON with base64 PNGs forformat: "json"
curl -X POST 'https://instagram.soowa.it/api/instagram/series' \
-H 'content-type: application/json' \
-d '{"format":"zip","slides":[{"heading":"Call now","body":"Tell CallAI what needs doing.","icon":"phone","accent":"terracotta","themeId":"warm-signal"}]}' \
--output series.zipInput guide
- Icons:
phone, mic, check, mail, calendar, sparkles, plug, arrow. - Accents:
terracottaormint. - Themes:
warm-signal, cream-paper, mint-deep, terracotta-bold, noir, studio-cyan, plum-banner, simple-plum, simple-cream, simple-mint. - Invalid inputs return
400 application/json; rendering failures return500 application/json.
Theme
Layout + palette. Scroll with the arrows, click to apply to the whole series.