content
Adapt existing content for different platforms
Adapt existing content for different platforms › Request Body
contentThe content to adapt. Can be a caption, script, blog excerpt, or any text.
target_platformThe platform to adapt the content for.
source_platformThe platform the content was originally written for. Helps preserve intent.
brand_voiceBrand voice guidelines to maintain during adaptation (e.g. "professional", "playful").
project_id^([0-9a-fA-F]{8}-[0-…Optional project ID to load platform voice overrides from brand profile.
Adapt existing content for different platforms › Responses
Tool executed. isError:true in the body indicates a tool-level error.
isErrorGenerate video content using AI
Generate video content using AI › Request Body
promptVideo prompt — be specific about visual style, camera movement, lighting, and mood. Example: "Aerial drone shot of coastal cliffs at golden hour, slow dolly forward, cinematic 24fps, warm color grading." Vague prompts produce generic results.
modelVideo model, quality ladder best->worst: seedance-2-fast (264cr/8s, S-tier, native audio, top quality/credit) > kling-3 (100cr/5s no-audio, compound prompts, up to 10s) > grok-imagine (30cr/6s, cheapest real model, great image-to-video) > veo3-fast (65cr/8s, Veo 3.1 Fast, native audio) > kling-3-pro (135cr/5s no-audio, up to 15s) > seedance-2 (328cr/8s 720p, premium cinematic, native audio) > veo3-quality (1000cr/8s, Veo 3.1 Quality, hero shots) > wan-2.6 (105cr/5s, fallback) > gemini-omni-video (126cr — pick this ONLY for multi-reference composites/edits, not raw quality). hailuo-02-standard (180cr), seedance-1.5-pro (150cr), kling (170cr/10s no-audio) are legacy/budget fallbacks.
durationVideo duration in seconds. kling: 5 or 10s · kling-3: 5 or 10s · kling-3-pro: 5/10/15s · grok-imagine/hailuo: 6 or 10s · wan-2.6: 5/10/15s · seedance family: 4-15s · veo3-fast/veo3-quality: fixed 8s (duration ignored). Out-of-range values are clamped server-side, never rejected. Defaults to 5 seconds.
aspect_ratioVideo aspect ratio. 16:9 for YouTube/landscape, 9:16 for TikTok/Reels/Shorts, 1:1 for Instagram feed/square. Defaults to 16:9.
enable_audioEnable native audio generation. DEFAULTS TO FALSE (cost control). Cost multiplier when true: kling 2.6 ~2.65x (17->45 cr/sec), kling-3 1.5x (20->30 cr/sec), kling-3-pro ~1.5x (27->40 cr/sec). seedance-2/-fast generate audio natively regardless. 5+ languages.
image_urlStart frame image URL for image-to-video (Kling 3.0 frame control).
end_frame_urlEnd frame image URL (Kling 3.0 only). Enables seamless loop transitions.
project_idProject ID to associate the video with (brand context is auto-injected from the project brand profile). Omit to generate without a project association.
response_formatOptional response format. Defaults to text.
Generate video content using AI › Responses
Tool executed. isError:true in the body indicates a tool-level error.
isErrorGenerate images using AI
Generate images using AI › Request Body
promptText prompt describing the image to generate. Be specific about style, composition, colors, lighting, and subject matter.
modelImage generation model. midjourney for artistic style, imagen4 for photorealistic quality, flux-pro for general purpose, gpt4o-image for creative/illustrated styles.
aspect_ratioAspect ratio. Defaults to 1:1 (square).
image_urlReference image URL for image-to-image generation. Optional for all currently accepted models (none of them require it).
project_idProject ID to associate the generated image with.
response_formatOptional response format. Defaults to text.
Generate images using AI › Responses
Tool executed. isError:true in the body indicates a tool-level error.
isErrorCheck status of async content generation job
Check status of async content generation job › Request Body
job_idThe job ID returned by generate_video or generate_image. This is the asyncJobId or taskId value.
response_formatOptional response format. Defaults to text.
Check status of async content generation job › Responses
Tool executed. isError:true in the body indicates a tool-level error.
isErrorCreate a video storyboard with scenes and shots
Create a video storyboard with scenes and shots › Request Body
conceptThe video concept/idea. Include: hook, key messages, target audience, and desired outcome (e.g., "TikTok ad for VPN app targeting privacy-conscious millennials, hook with shocking stat about data leaks").
platformTarget platform. Determines aspect ratio, duration, and pacing.
brand_contextBrand context JSON from extract_brand. Include colors, voice tone, visual style keywords for consistent branding across frames.
target_durationTarget total duration in seconds. Defaults to 30s for short-form, 60s for YouTube.
num_scenesNumber of scenes. Defaults to 6-8 for short-form.
styleVisual style direction (e.g., "cinematic", "anime", "documentary", "motion graphics").
project_idProject ID for brand-scoped generation and attribution.
response_formatResponse format. Defaults to json for structured storyboard data.
Create a video storyboard with scenes and shots › Responses
Tool executed. isError:true in the body indicates a tool-level error.
isErrorGenerate AI voiceover audio
Generate AI voiceover audio › Request Body
textThe script/text to convert to speech. Not required when resume_task_id is set.
voiceVoice selection. rachel=warm female (default), daniel=British authoritative male, adam=deep confident male, gigi=young playful female, charlotte=sophisticated elegant female.
speedSpeech speed multiplier. 1.0 is normal. Defaults to 1.0.
project_idProject ID to associate the generated voiceover with.
response_formatResponse format. Defaults to text.
resume_task_id2026-07-15 (money-safety fix): pass the task_id from a prior "still generating" response to resume polling the SAME job — this does NOT create a new task and does NOT charge credits again. Use this instead of calling the tool fresh after a timeout: the original job is already charged and still running or refundable; a fresh call would charge a SECOND time for work already paid for.
Generate AI voiceover audio › Responses
Tool executed. isError:true in the body indicates a tool-level error.
isErrorGenerate carousel/slide content
Generate carousel/slide content › Request Body
topicCarousel hook/angle — specific beats general. Example: "5 pricing mistakes that kill SaaS startups" beats "SaaS tips". Include a curiosity gap or strong opinion for better Hook Strength scores.
template_idCarousel template. hormozi-authority: bold typography, one idea per slide, dark backgrounds. educational-series: numbered tips. Default: hormozi-authority.
slide_countNumber of slides (3-10). Default: 7.
aspect_ratioAspect ratio. 1:1 square (default), 4:5 portrait, 9:16 story.
styleVisual style. hormozi: black bg, bold white text, gold accents. Default: hormozi (when using hormozi-authority template).
hookExplicit hook/opener for slide 1. Overrides any hook derived from topic. Keep under 15 words.
hook_familyHook family tag. Persisted with the carousel so downstream analytics can attribute engagement to hook pattern.
cta_textExplicit CTA copy for the final slide.
cta_urlURL promoted on the CTA slide.
toneVoice/tone override. Composes with brand profile voice.
constraintsContent constraints. Example: "No fabricated statistics. Sentence case only."
platformTarget platform. Affects tone and format guardrails.
project_idProject ID to associate the carousel with.
response_formatResponse format. Defaults to json.
Generate carousel/slide content › Responses
Tool executed. isError:true in the body indicates a tool-level error.
isError