REST API
The automation-friendly surface: generate and revise on-brand content, render images/video, publish to X, schedule posts, and score results. Every endpoint below is POST except where noted, requires an X-API-Key header (see Authentication), and resolves your business by name.
Credits
API calls draw Zolt Credits from the same balance as the app — there is no separate API meter. Calls that generate content are billed; calls that only move data around (scheduling, publishing, uploading, reading results) are free. For a carousel or presentation, /api/v1/generate returns the slide plan (the image-generation prompts and captions listed under Asset types), not finished images — render those separately with /api/v1/render-image.
If your balance can't cover a call, it returns 402. Your spend, including which business used what, is on your Credit usage page.
Resolving business and board
Most endpoints take a business name and an optional board name. Names are matched case-insensitively against a normalized slug (lowercased, non-letters/digits collapsed to -), so "Acme Co." matches a business named acme-co. If board is omitted, your business's default board is used (or its first board, if none is marked default).
If your API key is unscoped, business must still name a business your key belongs to — a business that resolves to a different business than your key's own returns 403. A business/board that doesn't resolve at all returns 404.
Asset types and fields
asset_type accepts video, image, carousel, presentation, or landing_page — matched by prefix and case-insensitively, so a value like "Video – Short Form" from a spreadsheet dropdown still resolves to video. Each asset type generates a fixed set of string fields:
| asset_type | Fields |
|---|---|
| video | hook, script_copy, caption_tiktok, caption_ig, caption_fb, yt_title, yt_description, yt_tags |
| image | hook, image_generation_prompt, caption_ig, caption_fb, caption_x (≤280), caption_linkedin, caption_threads (≤500), pinterest_title (≤100), pinterest_description (≤500), pinterest_board |
| carousel | hook, slide_prompts (5 newline-separated image prompts), caption_ig, caption_fb, caption_x (≤280), caption_linkedin, caption_threads (≤500) |
| presentation | hook, slide_content (newline-separated "Title — body" slides), caption_linkedin, caption_x (≤280) |
| landing_page | headline, subheadline, body_sections, cta_copy, seo_meta_description (≤160) |
Idea
Generate
Revise
Content engines
Score
Score a stored generation
Publish to X
Render image
Render video
Render video status
Schedule
Upload a video for Zolt to post
Upload media
Questions, or found something undocumented? Contact support.