Facebook Pages

Facebook Page scheduling for agencies

Postwoo publishes to Facebook Pages through Meta's Graph API, keeps page tokens out of the database, and reports the insights Meta still supports — no more, no less.

What agencies use it for

  • Text, link and multi-photo posts to many Pages at once
  • Client approvals before anything goes live
  • Page impressions, engagement and fan counts per day
  • Delete a published post from Postwoo when something slips through
Capability matrix

Exactly what Facebook Pages allows

Live from the integration itself. Statuses move from pending verification to supported only after an end-to-end check with approved credentials.

OAuth connectionFacebook Login (no PKCE) + long-lived user token exchange. Needs a Meta app in Live mode with Advanced Access to the pages_* permissions.pending
Account discoveryGET /me/accounts (pages_show_list). Page tokens are fetched per request and never stored.pending
Location discoveryFacebook Pages have no sub-locations; Locations-structured Pages appear as separate Pages.not possible
Publish text postsPOST /{page-id}/feed message (pages_manage_posts + pages_read_engagement, App Review required).pending
Publish a single imagePOST /{page-id}/photos with a public url + caption.pending
Publish multiple imagesUnpublished photos (published=false) attached to one feed post via attached_media — up to 10.pending
Publish videoPOST /{page-id}/videos with file_url is possible through the API; not built yet.planned
Attach a linkPOST /{page-id}/feed link (Facebook renders the preview; custom titles/thumbnails are not allowed for most apps).pending
Call-to-action buttonCall-to-action buttons on organic Page posts are not available through the Graph API for third-party apps.not possible
Native platform schedulingpublished=false + scheduled_publish_time exists (10 min – 75 days ahead); Postwoo schedules itself for now.planned
Delete postsDELETE /{post-id} with the Page token (pages_manage_posts).pending
Edit published postsPOST /{post-id} message is allowed for Page posts; not built yet.planned
Direct media uploadPhotos are fetched by Facebook from a public URL; Postwoo serves uploads from its media storage.not possible
Account-level analyticsGET /{page-id}/insights period=day (read_insights). Several legacy Page metrics were deprecated in 2024; only the surviving ones are requested.pending
Post-level analyticsGET /{post-id}/insights (lifetime) + reactions/comments/shares summaries.pending
Read reviewsPage ratings/recommendations are not exposed to third-party apps through the Graph API.not possible
Reply to reviewsNo review reply surface in the Graph API.not possible
Delete review repliesNo review reply surface in the Graph API.not possible
Real-time webhooksThe inbound handler for Page webhooks (feed, messages) is built and triggers an inbox sync; subscribing each Page (POST /{page-id}/subscribed_apps) is not automated yet, so accounts are polled every 15 minutes.planned
Token & permission healthGET /me/permissions + GET /me/accounts probe.pending
Read business profileBusiness profile management (hours, Q&A, profile photos) is only implemented for Google Business Profile in Postwoo.not possible
Update opening hoursBusiness profile management (hours, Q&A, profile photos) is only implemented for Google Business Profile in Postwoo.not possible
Read questions & answersBusiness profile management (hours, Q&A, profile photos) is only implemented for Google Business Profile in Postwoo.not possible
Answer questionsBusiness profile management (hours, Q&A, profile photos) is only implemented for Google Business Profile in Postwoo.not possible
Upload profile photosBusiness profile management (hours, Q&A, profile photos) is only implemented for Google Business Profile in Postwoo.not possible
Hashtag lookupHashtag lookup uses Instagram's official hashtag search; Postwoo does not implement it for this platform.not possible
Post a first commentAutomatic first comments are only implemented for Instagram in Postwoo.not possible
Read commentsGET /{page-id}/feed with nested comments (25 newest posts) or GET /{post-id}/comments?filter=stream, Page token; pages_read_user_content + pages_read_engagement.pending
Reply to commentsPOST /{comment-id}/comments as the Page (pages_manage_engagement, App Review required).pending
Hide commentsPOST /{comment-id} is_hidden=true|false hides a comment from everyone but its author and friends; DELETE /{comment-id} for the Page's own replies (pages_manage_engagement).pending
Read direct messagesGET /{page-id}/conversations?platform=messenger with the latest 20 messages per conversation (pages_messaging, App Review required).pending
Reply to direct messagesSend API POST /{page-id}/messages messaging_type=RESPONSE — only within 24 hours of the person's last message (standard messaging window); Postwoo refuses later replies.pending
Image alt textW14: alt_text_custom on POST /{page-id}/photos (single photo and each unpublished photo of a multi-photo post). Field from memory, not verified live.pending
Custom video coverPOST /{page-id}/videos accepts a thumb image; it will be sent once Facebook video publishing is built (not yet). Unverified.planned
Limits

Platform limits we enforce before you schedule

The composer checks these for every target so a post is never queued only to fail later.

Text length63206 characters
Images per post10
Videos per post0
Image typesjpeg, png, gif, webp
  • Photos are fetched by Facebook from a public HTTPS URL (JPEG/PNG/GIF/WEBP, ≤10 MB recommended).
  • A link preview is generated by Facebook from the link; it cannot be customised by most apps.
  • When a photo and a link are both present, the link is appended to the caption (the photos endpoint has no link field).
Access

What the platform requires

  • A Meta app (Business type) with Facebook Login for Business configured and the app switched to Live mode.
  • Advanced Access via App Review for: pages_show_list, pages_read_engagement, pages_manage_posts, pages_read_user_content, read_insights and business_management. Until then only app roles (admins/developers/testers) can connect.
  • Social inbox (W5): pages_manage_engagement (reply to / hide comments) and pages_messaging (answer Page messages within the 24-hour window) also need App Review.
  • Business Verification of the Meta Business that owns the app is required before Advanced Access is granted for these permissions.
  • The connecting Facebook user must have a Page role with the CREATE_CONTENT / MANAGE tasks on each Page.
  • Long-lived user tokens expire after ~60 days and Meta provides no refresh token; the human must reconnect. Page tokens are derived per request and are never stored.
  • Platform rate limit: ~200 calls per hour per user per app (Pages API limits scale with Page fan count).

Postwoo handles the app side. You connect with an account that has the right role on the platform.

FAQ

Questions, answered honestly

Does Postwoo support Facebook Groups or personal profiles?

No. Meta's API allows publishing to Pages only, so that is what Postwoo supports.

Can I schedule videos or Reels to Facebook?

Video publishing to Pages is on the roadmap; today Postwoo publishes text, link and photo posts.

What happens when a Facebook connection expires?

Postwoo checks token health hourly, warns you in the feed before posts are affected and makes reconnecting a one-click job.

Other integrations

Google Business ProfileInstagramLinkedInYouTubeTikTokThreadsPinterestBluesky

Ready to woo your clients?

Start free, connect a Google Business Profile, and see real reviews and metrics in the feed within minutes.