Create carousel
create_carouselWrites and draws an Instagram carousel about a topic, then saves it as a draft post. COSTS CREDITS: the slide copy, plus each picture when pictures are on (the boldPhoto style always has pictures). Slide text is set in real type from the brand's fonts, so it is spelled exactly as written. The draft is never published or scheduled here: schedule it with schedule_post, or publish it with publish_post, after the user approves. Pass a time (localTime with timeZone, or scheduledAt) to place the draft on its day in the plan (draft_scheduled); it still never sends by itself. A small preview of every slide comes back with the result, so you can check each one. A slide listed in overflowSlides has more text than fits, so its copy runs off the slide — tell the user. To redo a carousel, pass the old draft as replacesPostId: the new one takes its day in the plan and the old draft is deleted, so the plan never holds both. possibleDuplicateOf names another planned post within 14 days that opens the same way: ask the user whether both should stay.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | Styled decks only. "tips" teaches and closes on a save; "promo" sells and closes on the brand's offer (its offer line, or the link in bio). Omitted: read from the topic | |
| style | No | A carousel style. Omitted: the style of the brand's latest styled carousel, else clean. "plain" draws the older layouts with no style | |
| topic | Yes | What the carousel is about | |
| caption | No | The post caption; omit to use the one written with the slides | |
| pictures | No | Put pictures on some slides (product photos where they fit, generated otherwise); costs more | |
| timeZone | No | The user's IANA time zone, e.g. America/Edmonton. Needed with localTime; with scheduledAt it only sets the zone scheduledLocal is shown in. The answer's scheduledLocal says how the saved time reads there: check it against what the user asked for | |
| localTime | No | The time as the user's clock shows it, YYYY-MM-DDTHH:MM with no offset (e.g. 2026-11-09T12:00), with timeZone. Preferred over scheduledAt: Simplo works out the UTC offset in force on that date. Not together with scheduledAt | |
| projectId | Yes | Simplo project id (from list_projects) | |
| slideCount | No | ||
| scheduledAt | No | ISO 8601 time with offset: puts the draft on that day in the plan, without scheduling it. localTime with timeZone is safer | |
| replacesPostId | No | A draft this carousel replaces: it takes that draft's day (unless a time is passed) and the old draft is deleted |