Prompt
When a new product is published in our Shopify store, draft a Threads post with the product name, a one-line description, the price, and the product URL. Send it to the REST API with networks ["threads"] and mode submit. How to do it
- Mint a Threads agent key In https://app.socialhandoff.com, open Connections, connect your Threads account, then create an agent key scoped to Threads with draft permission only. Copy the key when it is shown; only its hash is stored.
- Choose the trigger app Pick the trigger: a new blog item, a Notion page, a spreadsheet row, a calendar event, or anything else Zapier watches.
- Add a Webhooks by Zapier POST Send JSON to https://app.socialhandoff.com/v1/posts with an Authorization: Bearer header. Map body from the trigger, set networks to ["threads"], and mode to "submit".
- Test and turn on Run the test step, open the approval inbox, and check the draft. Then turn the Zap on. Every run creates a pending post, never a live one.
Example draft
New in the shop: the Field Notebook, 120 pages of dot grid in a waxed canvas cover that gets better as it wears in. $24, made in small batches. example.com/shop/field-notebook
Gotchas
- Threads fetches images and video from your instance at signed, expiring URLs, so you do not need a separate public media host. The API itself must be reachable over public HTTPS; an instance that only runs on localhost cannot publish media to Threads.
- Keep each Threads post within 500 characters, and remember that Threads counts emoji by their UTF-8 bytes, so a few emoji use more of the limit than they appear to. The per-network length guardrail flags longer drafts before they reach the inbox.
- A draft too long for one post can go out as a reply-chain thread, with each part published as a reply to the one before. Every part has its own 500-character limit, and a carousel of 2 to 20 images or videos can lead the chain.
- Zapier can replay a step on errors. Send an idempotencyKey built from the trigger record's id so a replay returns the same Threads draft instead of a second one.
- Character limit: 500 characters per post. Emoji count as their UTF-8 bytes, so an emoji can use up to 4 characters of the limit.
- Links: Up to 5 links per post. Threads generates a preview for the first one.
- Carousels: 2 to 20 images or videos in one carousel post.
- Image files: JPEG or PNG, up to 8 MB. Threads fetches each file from a URL at publish time.
Frequently asked questions
Is there a native Zapier app?
Not today. Use Webhooks by Zapier to call the REST API. It needs one POST step and a bearer header.
Can one Zapier run draft for Threads and Bluesky together?
Yes. Put both in networks. Each network gets its own target, checked against its own length rule, and you approve them in one card.
How do I connect Threads?
Open Connections in https://app.socialhandoff.com and sign in with your Threads account through the operator's own Meta developer app. Until Meta's app review approves that app, only its listed testers can publish.