REST API (Webhooks by Zapier) · Facebook

Send Facebook Page posts from Zapier to an approval inbox

Zapier already connects to the tools that feed a Facebook Page: a WordPress blog, an Eventbrite listing, a Shopify store. SocialHandoff sits between the Zap and the Page. Webhooks by Zapier creates a Facebook draft, the draft lands in the approval inbox, and someone checks it before it goes out. Text and links post as they are, and photos can be uploaded first when the Zap has them.

Prompt

When a new WordPress post is published, write a Facebook Page post with the title, a 2-sentence summary from the excerpt, and the link. Send it as a Facebook draft.

How to do it

  1. Connect Facebook and mint a key In https://app.socialhandoff.com, open Connections, sign in with Facebook and pick the Pages to connect; each Page becomes its own channel. Then create an agent key named Zapier scoped to Facebook with draft permission.
  2. Set up the trigger Pick the trigger, for example New Post in WordPress, and map the title, excerpt, and URL into the post body.
  3. Import media by URL Add a Webhooks by Zapier Custom Request: POST https://app.socialhandoff.com/v1/media/import with JSON {"url": public https link, "alt": description} for photos (up to 10, each with alt text) or one video. No multipart needed. Keep the id it returns for the next step.
  4. Create the post Add a Webhooks by Zapier Custom Request: POST https://app.socialhandoff.com/v1/posts with a bearer header and JSON body {"body": text, "networks": ["facebook"], "mode": "submit"}, adding "mediaIds" only when photos were uploaded. The post lands in the approval inbox.
  5. Approve for the right Page The card shows which Page the post goes to. Approve on desktop or in the phone swipe stack, and it publishes to that Page at the scheduled time.

Example draft

New on the blog: How we cut our cloud bill by 40% without changing providers.

We looked at every service we pay for, found the 3 that did most of the damage, and fixed them in a week. Here is exactly what we changed.

https://example.com/blog/cloud-bill

Gotchas

  • Only Facebook Pages can be connected, not personal profiles. Every Page you grant at sign-in becomes its own channel, so check which Page the card names before approving.
  • Zapier may retry a failed step. Send an idempotencyKey built from the trigger record's id so a retry returns the same draft instead of a second one.
  • A Page post can carry up to 10 photos or one video, not both. Each photo should have alt text, or the missing-alt-text guardrail flags it.
Facebook
  • Where you can post: Facebook Pages only. The API does not allow posting to personal profiles or to Groups through SocialHandoff.
  • Page access: You need a role on the Page that allows creating content.
  • Photos: One photo with alt text, or up to 10 photos in one post.
  • Video: One video per post.
Facebook post scheduler for Pages, with approval built in

Frequently asked questions

Can one agent post to several Pages?
Yes. Every Page granted at sign-in connects as its own channel, and a key scoped to Facebook can draft for them. Each post names its Page on the approval card.
Is there a native Zapier app?
Not today. Webhooks by Zapier calls the REST API with a bearer header: one JSON request imports the media by URL, another creates the draft.
Why can only testers post at first?
Meta requires App Review and Business Verification before your own developer app can post for people outside its tester list. Until then, add people under App Roles.

Let your agents post. Keep the final say.

Connect your first agent in minutes. Every draft waits in your inbox until you approve it.

14 days free. No card required.

The hosted version is opening soon

Leave your email and we will send one message when hosted accounts open, with your 14-day trial ready. Want it today? Self-host it free from the repo.

Start free trial