Home / Docs / Facebook
Provider
Facebook

Facebook

Publish to Facebook Pages you administer. Postli supports text, image, video, and link posts using the Meta Graph API. Personal profiles cannot be posted to via API and are not supported.

Requirements

Spec

Account type
Facebook Page (admin or editor role)
Auth
Meta OAuth 2.0 (Facebook Login for Business)
Token type
Long-lived Page access token (no fixed expiry while user token is valid)
Post types
Text, image (single or multi), video, link
Text body
Up to 63,206 characters (effectively unlimited)
Image
JPEG, PNG, BMP, TIFF · ≤4 MB · max 30 MB recommended via resumable upload
Video
MP4, MOV · ≤4 GB or 240 minutes
Link preview
Auto-generated by Meta from the first URL in the body
Auto-comments
Supported — Instant, Time, LikeCount conditions

Create your Meta app

Facebook Page publishing is gated on a Meta app you control. The same app covers Instagram-via-Page — you only need to set it up once.

  1. Go to developers.facebook.com/apps and click Create app. Use the Facebook account that admins your Business Manager.
  2. Pick Other as the use case, then Business as the app type, and link your Business portfolio.
  3. Add the Facebook Login for Business product. Under Settings, register the Valid OAuth Redirect URI:
    https://app.usepostli.com/api/integration/meta/callback
  4. In App Review → Permissions and Features, request advanced access for pages_show_list, pages_manage_posts, pages_read_engagement, pages_manage_engagement, pages_read_user_content, and business_management. Add read_insights if you also want Page-level analytics. Provide a screen-recording of the Postli connect flow when submitting.
  5. Switch the app from Development to Live. Posts published in Development mode are visible only to test users.
  6. From App Settings → Basic, copy the App ID and App Secret.
  7. In Postli, open Settings → Integrations → Meta, paste both values, and save.
Already created an app for Instagram? Re-use the same App ID and Secret — both providers share the Meta credential slot in Postli.

OAuth setup

Once credentials are saved, go to Integrations → Facebook → Connect. After Facebook’s OAuth dialog, Postli requests a long-lived user token, then exchanges it for a per-Page token for each Page you select.

Scopes Postli requests:

pages_show_list # list Pages the user manages pages_manage_posts # publish & delete posts pages_read_engagement # reactions, comments, insights pages_manage_engagement # auto-comments & reply pages_read_user_content # read user comments on Page business_management # Business Manager scope public_profile # default identity scope

Post types in detail

Text post

Body up to ~63k characters. Hashtags and @mentions render natively. URLs in the body are auto-unfurled into a link card unless suppressed.

Image post

One or more images (multi-photo posts use the /photos endpoint). For multi-image, the first image becomes the post’s cover in News Feed.

Video post

Single video uploaded with caption. Postli uses Meta’s resumable upload protocol for files larger than 4 MB to avoid timeouts.

Link post

Pure link share — Meta unfurls the destination into a card. Postli’s short links unfurl correctly because the redirect returns a 301 to your destination, which then provides the OG tags Meta scrapes.

Auto-comments

All three condition types are supported. Auto-comments post as the connected Page (not a personal profile).

Rate limits

Meta enforces a rolling app-wide rate limit (200 calls/user/hour). Postli’s queue worker batches and back-offs automatically. For typical merchant volume (<100 posts/day) you will not encounter throttling.

Gotchas & best practices

Webhooks

Postli does not subscribe to Page-level webhooks. Engagement is polled on a schedule.