Facebook

Facebook Reels API

What changes when publishing a Reel instead of a standard post to a Facebook Page via API.

Quick answer

Meta's dedicated Reels Publishing API is a three-phase flow: video_reels with upload_phase 'start', an upload to the returned URL, and 'finish' with a video_state of DRAFT, SCHEDULED, or PUBLISHED. Through PostGate, a vertical video goes through one POST /api/posts as a standard Page video — Facebook surfaces qualifying vertical video as a Reel on its own; the dedicated endpoint's SCHEDULED draft/review workflow isn't available through PostGate yet.

Meta ships a dedicated Reels Publishing API for Facebook Pages: a three-phase flow — video_reels with upload_phase: "start", an upload to the returned URL, then upload_phase: "finish" with a video_state of DRAFT, SCHEDULED, or PUBLISHED. It exists because Reels have their own spec and their own moderation path, separate from a normal Page video post.

Through PostGate, publishing that same vertical, short-form video to a Page still goes through the one POST /api/posts call — PostGate attaches it as a standard Page video rather than driving Meta's separate video_reels endpoint. In practice Facebook surfaces a qualifying vertical video in the Reels format on its own; if you specifically need the video_state: "SCHEDULED" draft/review workflow that only the dedicated Reels endpoint exposes, that isn't available yet through PostGate.

01

What does Meta's Reels spec actually require?

Meta's Reels publishing guide lists an MP4 file, 9:16 aspect ratio, roughly 3 to 90 seconds long, minimum 540×960px (1080×1920 recommended), 24–60 fps, H.264 or H.265, and AAC audio at 128 kbps or higher. Treat the duration ceiling as a moving target — Meta has adjusted Reels length limits before, and different surfaces (Reels vs. a Page video) don't always agree on the number, so verify against the live docs before hard-coding a cutoff.
02

Publish a vertical video to a Page

Send the video the same way you'd send any single-video post — a public URL is enough. PostGate fetches it, probes its real duration and dimensions, and attaches it to the Page.
Publish a short vertical videoPostGate API
curl -X POST "https://postgate.studio/api/posts?profile_group_id=grp_acme123" \
  -H "Authorization: Bearer $POSTGATE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: reel-launch-001" \
  -d '{
    "post": { "body": "New drop, 20 seconds." },
    "profiles": ["pro_facebook789"],
    "media": ["https://cdn.example.com/reel.mp4"]
  }'
03

Permissions are the same as any Page post

Meta's Reels endpoints require a Page access token with the CREATE_CONTENT capability, sourced from pages_show_list, pages_read_engagement, and pages_manage_posts. Nothing extra beyond what any Facebook Page connection through PostGate already grants — see Facebook Page access token.
04

Do Reels carry their own posting cap?

Separately from general API throttling, Meta caps Reels publishing at 30 API-published Reels per connected Page within any rolling 24-hour window — a spam-prevention limit, not a call-volume one. It stacks on top of the usual Facebook API rate limit, so a burst of scheduled Reels for one Page needs to respect both.

Frequently asked questions

What are the video requirements for Facebook Reels?

Meta’s Reels publishing guide lists an MP4 file, 9:16 aspect ratio, roughly 3 to 90 seconds long, minimum 540×960px (1080×1920 recommended), 24–60 fps, H.264 or H.265, and AAC audio at 128 kbps or higher. Treat the duration ceiling as a moving target — Meta has adjusted Reels length limits before, and different surfaces don’t always agree on the number, so verify against the live docs before hard-coding a cutoff.

Does PostGate use Meta's dedicated video_reels endpoint?

No — PostGate attaches a vertical, short-form video as a standard Page video through the one POST /api/posts call, rather than driving Meta’s separate video_reels endpoint. In practice Facebook surfaces a qualifying vertical video in the Reels format on its own; if you specifically need the video_state: "SCHEDULED" draft/review workflow that only the dedicated Reels endpoint exposes, that isn’t available yet through PostGate.

What permissions do Facebook Reels require?

Meta’s Reels endpoints require a Page access token with the CREATE_CONTENT capability, sourced from pages_show_list, pages_read_engagement, and pages_manage_posts. That is nothing extra beyond what any Facebook Page connection through PostGate already grants.

How many Reels can I publish per Page per day?

Meta caps Reels publishing at 30 API-published Reels per connected Page within any rolling 24-hour window — a spam-prevention limit, not a call-volume one. It stacks on top of the usual Facebook API rate limits, so a burst of scheduled Reels for one Page needs to respect both.

Build it with PostGate

One API for every social platform your customers care about — sandboxed, documented, and ready today.

Start building Read the docs