one output07 / 14
Vertical video
A 9:16 clip composed for a tall frame — not a horizontal one cropped down.
apipod-vertical-videoSKILL.md on GitHub
When to use it, and when not to
when to use it
- The target is Reels, TikTok, Shorts or a Story.
- The clip needs to loop cleanly.
- On-screen UI will cover the bottom fifth and the user cannot afford to lose the subject to it.
not for
- apipod-generate-video — Horizontal footage, or the aspect ratio is already settled.
- apipod-short-film — Several shots rather than one looping clip.
procedure
5 skillsWhat the skill does, in order.
- 01
Confirm the surface first
Reels, TikTok, Shorts and Story differ in safe area, and a Story usually wants 15 s or less. The surface fixes both framing and duration.
- 02
Decide about the loop
A loop changes the last frame as much as the first: it should end where it started. Ask before generating, not after.
- 03
Check the model actually has 9:16
Read the aspect_ratio enum in get_model_params. If 9:16 is absent, say which ratios exist and let the user choose — never silently deliver 16:9.
- 04
Compose for the middle third
Bottom ~20% and top ~10% get covered by platform UI. No thin text near the edges — it gets clipped. Vertical pans and push-ins read better than horizontal wipes in a tall frame.
- 05
Quote it — vertical costs more pixels per frame
estimate_cost with the intended duration and resolution, then generate once with aspect_ratio 9:16 and a duration from the model's enum.
try it
Send it from here
example request
Use APIPod to make a 5-second 9:16 Reels clip of latte art being poured — phone-camera feel, subject in the middle third, clear of the UI overlay.
The buttons open a new chat with this prompt prefilled. If APIPod is not connected yet, the prompt tells your assistant to stop and help you connect first. In Claude Code or a terminal, copy the prompt instead.
Not set up yet? Wiring guides for Claude, ChatGPT, Codex and more →
call trace
get_model_params (aspect_ratio: 9:16 ✓ · duration)
→ absent from the enum → say so
estimate_cost (duration: "5", resolution: "1080p")
→ $— · sufficient
generate_video (9:16 · composed for the tall frame)
→ vid_c4f2aa
check_job (every 10 s)
→ completed · 1–5 min
Illustrative: the tools this skill runs, in order, for the request on the left. Prices appear the way estimate_cost returns them live — this page itself quotes nothing.
what it will not do
The rules it holds itself to.
01
This does not cut an existing long video into vertical clips. APIPod generates clips; it does not cut or reframe footage.
02
If the user wants on-screen text, generate it without text and add the text in an editor.
03
One idea per clip. Vertical feeds are watched without sound and without context.