About the integration

Social media studio does not have a native Zapier app yet. You can still connect the two with Webhooks by Zapier, a built-in Zapier app: its POST action calls the Social media studio REST API to create, schedule or draft posts, and its Catch Hook trigger receives the webhooks Social media studio sends when posts publish, fail or get comments.

What you can automate with Zapier

Content often starts somewhere else: a blog, a spreadsheet, a form or a store. A Zap that calls the API turns those sources into scheduled posts without copying and pasting, and webhooks let the rest of your stack react when something goes live.

  • Create posts on any publishing destination you have connected, to publish now or at a set time
  • Save posts as drafts so a teammate reviews them before they are scheduled
  • Map captions, links and dates from earlier steps of the Zap into the request
  • Attach images and videos from your media library by file ID
  • Start Zaps on events such as post.published, post.failed or inbox.comment_received

How to set it up

You need an API key from a Social media studio plan that includes API access, and a Zapier plan that includes Webhooks by Zapier, which is not on Zapier's free plan.

  1. 1As a workspace owner in Social media studio, open Settings → API and create an API key.
  2. 2In your Zap, add a Webhooks by Zapier action with the POST event, set the URL to https://api.so-me.studio/v1/posts and the payload type to JSON.
  3. 3Add an X-API-Key header with your key, then add text, socialMedia (for example LINKEDIN) and postType (for example TEXT) as data fields. Add scheduledAt in ISO 8601 to schedule the post instead of publishing it now.
  4. 4To start Zaps from Social media studio, add a Catch Hook trigger, copy its URL, and add it as an endpoint under Settings → Webhooks with the events you want.

Example request

This request schedules a LinkedIn post. Leave out scheduledAt to publish right away, and add accountId when more than one account is connected for that platform.

POST https://api.so-me.studio/v1/posts
X-API-Key: YOUR_API_KEY
Content-Type: application/json

{
  "text": "New on the blog: how we plan a month of posts https://example.com/blog/monthly-plan",
  "socialMedia": "LINKEDIN",
  "postType": "TEXT",
  "scheduledAt": "2026-11-02T09:00:00Z"
}

Example Zaps

  • New blog post to scheduled posts

    RSS by Zapier spots a new article, and two POST requests schedule a LinkedIn post and an X post that link to it.

  • Google Sheets rows to scheduled posts

    Each new row in a content sheet, with caption, platform and date, becomes a post scheduled for the time in that row.

  • New YouTube video to LinkedIn and X

    The YouTube trigger fires on a new upload to your channel, and two requests share the video link to LinkedIn and X.

  • AI-written caption as a draft for approval

    A ChatGPT step writes the caption from a topic, then a POST to /v1/drafts saves it for review instead of publishing it.

  • Failed post alert

    A Catch Hook trigger receives post.failed, and the Zap sends the details to a Slack channel so someone can retry the post.

Your data is safe

Your API key sits in the Zap's request headers, so limit who can edit the Zap, and revoke the key from Settings → API if it is ever exposed. Webhook deliveries are signed with your endpoint's secret, so you can check where they came from.

Get support

The REST API quickstart and the webhook docs on docs.so-me.studio cover every field used here. Stuck on a setup step? Check the Help Center.

Documentation

Related integrations

Not yet. This setup uses Webhooks by Zapier, Zapier's built-in app for calling any REST API and receiving webhooks, so you don't need to wait for a native app.

On our side, any paid plan, since all of them include API access. Starting Zaps from our webhooks needs Creator or above. On Zapier's side, a plan that includes Webhooks by Zapier, which Zapier does not offer on its free plan.

Each delivery has an X-Webhook-Signature header: an HMAC-SHA256 of the raw body, hex encoded and signed with your endpoint's signing secret. Catch Raw Hook passes the raw body and headers on, so a Code by Zapier step can recompute it and compare.

Yes. The simplest way is to keep the file in your media library and send its ID in fileIds. Uploading a new file from a Zap takes extra requests, first for an upload URL and then for the upload, as the API reference describes.

The post is marked as failed and a post.failed webhook fires, so a Zap can alert you. You can retry it from the dashboard or with POST /v1/posts/:id/retry.

Schedule once.
Post everywhere.

Stop juggling tabs, draft, customize, and publish to 20 platforms from a single calendar.

Automate Social Media Posting With Zapier