REST API (Webhooks by Zapier) · X

Zapier to X, with a person in the loop

Zapier makes it easy to connect a trigger to a tweet, and just as easy to tweet something you regret. A new row in a spreadsheet, a Shopify product, a Typeform answer: any of them can carry a typo or a test entry. Routing the Zap through SocialHandoff turns each trigger into a draft instead. The Zap still runs on its own, but the last step is a person swiping approve on their phone.

Prompt

(Zapier AI by Zapier step) Turn this new product row into one X post. Use the product name, the one-line benefit, and the price. Friendly, specific, under 200 characters plus the link. Return only the post.

How to do it

  1. Mint a key In Connections, create a Zapier key scoped to X with the draft permission.
  2. Choose the trigger Pick the app that should start the post, for example a new row in Google Sheets or a new item in an RSS feed.
  3. Write the text Use a Formatter step or an AI step with the prompt above to build the post text.
  4. Send it with Webhooks by Zapier Add a Custom Request action: method POST, URL https://app.socialhandoff.com/v1/posts, header Authorization: Bearer plus your key, and a JSON body with body, networks set to x, and mode set to submit.
  5. Test and approve Run the test. A pending post appears in the inbox; approve or reject it.

Example draft

New: the Trail 2 daypack. 18 liters, a laptop sleeve that fits 16 inches, and a back panel that actually breathes. $89 at https://example.com/trail-2

Gotchas

  • Zap tests create real drafts. Reject them in the inbox, or they sit in the queue as pending posts.
  • Weighted counting on X means emoji and some characters count as 2. Zapier's Formatter truncates by plain length, so leave 20 characters of headroom.
  • Per-account daily limits apply to Zaps too. A spreadsheet import that fires 50 times produces 50 drafts, and only the allowed number can publish in a day.
X
  • Character limit: 280 weighted characters for standard accounts. Most CJK characters and many emoji count as 2. Premium accounts can post longer, but SocialHandoff checks against 280.
  • Links: Every URL is wrapped by t.co and counts as 23 characters, whatever its real length.
  • Media per post: Up to 4 images, or 1 GIF, or 1 video.
  • File sizes: Images up to 5 MB, GIFs up to 15 MB, video up to 512 MB (uploaded in chunks).
Schedule tweets and X threads with a human approval step

Frequently asked questions

Do I need a paid Zapier plan?
Webhooks by Zapier is a premium app on Zapier's side. Check Zapier's current plans; nothing on our side requires it.
Can the Zap schedule the tweet for a specific time?
Yes. Include date, time, and timezone in the JSON. The post still waits for approval, then publishes at that slot.

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