Snapchat AI Clips (photo to 5-second video) vs a fixed Sume prompt
Snap's AI Clips turn one photo into a five-second video with a closed prompt, for Lens+ users. Rebuild it outside Snapchat: fixed prompt, POST /v1/videos.

To rebuild the AI Clips idea outside Snapchat, keep one fixed prompt in your code, pass the user's photo through the frame_images field of POST /v1/videos, and ask for a duration of 5 seconds. Snap's AI Clips are closed on purpose, and a fixed prompt template gives you the same shape: the creator sets the direction, the user only supplies the photo.
Snap's newsroom post (read 2026-10-04), dated March 24, 2026, says AI Clips turn a single photo into a five-second video inside Lens Studio's GenAI Suite and are available to Snapchat Lens+ subscribers. It stresses they are closed-prompt experiences, not open-ended text-to-video tools. Developers enrolled in Lens+ Payouts can earn from published AI Clips.
What does AI Clips fix, and what do you control on an API?
The table lines up what Snap states with the matching Sume request fields from the Videos API page.
| Trait | Snap AI Clips | Sume POST /v1/videos |
|---|---|---|
| Input | One photo from Snap or Camera Roll | frame_images for image-to-video |
| Length | Five seconds | duration in seconds; seedance-2.5 accepts 4 to 30 |
| Prompt | Closed, set by the developer | Your own server-side prompt string |
| Audience | Lens+ subscribers | Any API caller |
| Billing | Not shown on the page | Provider list price times 1.25, reserved on submit |
How do I send a closed-prompt request?
A minimal body needs only model and prompt. Optional fields include duration, resolution, aspect_ratio, generate_audio and frame_images. The request below fixes the prompt and the length, and leaves the photo out so the snippet stays runnable; add frame_images as described on the Videos API page when you wire up your upload step.
The call returns 202 with a job id. Once the job completes, the poll response carries usage.cost, which is the billable amount, and you download the file from GET /v1/videos/{jobId}/content.
import os, requests
PROMPT = "Slow cinematic push-in, soft golden light, gentle wind in the hair."
resp = requests.post(
"https://api.sume.com/v1/videos",
headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"},
json={
"model": "seedance-2.5",
"prompt": PROMPT,
"duration": 5,
"resolution": "720p",
"aspect_ratio": "9:16",
},
timeout=60,
)
print(resp.status_code, resp.json())Which Sume models fit a five-second clip?
Several video models accept 5 seconds. Seedance 2.5 runs 4 to 30 seconds, Gemini Omni Flash 1.1 runs 3 to 10, and minimax-h3 runs 5 to 15. Each model lists its own supported_aspect_ratios, and GET /v1/videos/models returns per-SKU pricing, so read the price there rather than from a blog post.
Gemini Omni always generates audio and rejects generate_audio set to false. If your closed prompt should stay silent, pick a model where the flag is optional.
What is the catch?
AI Clips live inside Snapchat's audience and payout system, which an API cannot replicate. What you gain is a clip file you can post anywhere, but you take on distribution and any AI-disclosure steps for each platform yourself. The stored post on turning photos into 10-second ads walks through a similar photo-first flow.
Sources
Related posts
More in Use cases
- Snapchat Spotlight ads: 32 MB recommended, 1 GB cap
Snapchat Spotlight ads reportedly run 5 to 60 seconds, up to 1 GB with 32 MB recommended. How to produce a 9:16 clip within that on Sume.
- Sora feature retired: what to tell users and what to flip
Your Sora-powered feature is gone. How to word the message, map Sume job states to UI copy, and flip one backend flag to Sume video without a rewrite.
- Special ad categories: no age targeting, one creative for all
Meta special ad categories drop age, gender and ZIP targeting. Build one broad creative, then queue message variants as Sume bulk runs instead of audiences.
- SB video up to 45 s needs two Sume clips
Amazon Sponsored Brands video can run up to 45 seconds. One Sume seedance-2.5 clip tops out at 30 seconds, so join two clips in Timeline.
Written by Sume