Social Media Posting API

Post to every major social platform with one API. Skip months of building and maintaining integrations yourself.

  • Post to TikTok, Instagram, X, LinkedIn, Facebook, Threads, and YouTube with one request
  • Publish images, videos, carousels, Stories, Reels, and Shorts
  • OAuth handled for you on OpenQuok Cloud — no developer apps to register
  • Connect multiple channels on a paid workspace plan

Built for people who connect their own channels

Who builds with,the posting API?

Vibe coders

Connect your own social accounts in OpenQuok Cloud. Complete OAuth for each channel yourself. Then publish with curl, the Node SDK, MCP, or CLI. Draft JSON in the payload validator.

CLI and SDK users

Call POST /public/posts from a script or CI job. One opo_ token covers every channel you connected. Your plan still caps channels and posts per month.

Agent operators

Point Cursor, Claude Code, or another MCP host at your workspace. The agent posts only to accounts you already authorized.

Three steps

Add social media,to your product in three steps

Connect once, then publish, schedule, and read data through the same API.

New to OpenQuok? Read the getting started guide

Free payload wizard

Test your social media posting API payload before you ship code

Compose a post with sample channels in your browser. Copy the JSON body and paste it into curl, your SDK, or an agent workflow. Copy JSON is free — no account required. Scheduling and file uploads need a workspace.

Payload preview

Sample channels

Sample channels

Media: hero.png

Endpoint

POST /api/v1/public/posts

JSON payload
{ "scheduledAt": "2026-05-14T10:00:00.000Z", "status": "scheduled", "body": "Hello from the public API!", "integrationIds": [ "1f9a4f3a-3b2c-4f4a-9d8e-7a3f6b1c8e22", "2a8b5e4c-1d3f-4a5b-9c0d-8e7f6a5b4c3d" ], "media": [ { "id": "img-global", "path": "uploads/2026/05/hero.png", "alt": "Product launch hero" } ], "tagNames": [ "launch-week" ] }

Send JSON,get structured response back

Send one JSON body to POST /api/v1/public/posts. The REST API returns post group rows. Track each group with the public API.

Request

cURL
curl -X POST 'https://api.openquok.com/api/v1/public/posts' \ -H 'Authorization: opo_your_workspace_token' \ -H 'Content-Type: application/json' \ -d @payload.json
JSON body
{ "scheduledAt": "2026-05-14T10:00:00.000Z", "status": "scheduled", "body": "Hello from the public API!", "integrationIds": [ "1f9a4f3a-3b2c-4f4a-9d8e-7a3f6b1c8e22", "2a8b5e4c-1d3f-4a5b-9c0d-8e7f6a5b4c3d" ], "media": [ { "id": "img-global", "path": "uploads/2026/05/hero.png", "alt": "Product launch hero" } ], "tagNames": [ "launch-week" ] }

Response

JSON body
{ "success": true, "data": { "postGroup": "9a0a1b2c-3d4e-4f5a-9b8c-aa11bb22cc33", "posts": [ { "id": "5b3c1d2e-9a3f-4e6b-bb12-2c0a5f1a90a1", "state": "QUEUE", "publishDate": "2026-05-14T10:00:00.000Z", "organizationId": "c1d8a3f4-1234-4abc-bf12-1234567890ab", "integrationId": "1f9a4f3a-3b2c-4f4a-9d8e-7a3f6b1c8e22", "content": "Hello from the public API!", "delay": 0, "postGroup": "9a0a1b2c-3d4e-4f5a-9b8c-aa11bb22cc33", "title": null, "description": null, "parentPostId": null, "releaseId": null, "releaseUrl": null, "settings": null, "image": null, "intervalInDays": null, "error": null, "deletedAt": null, "createdByUserId": null, "createdAt": "2026-05-10T09:00:00.000Z", "updatedAt": "2026-05-10T09:00:00.000Z" } ] } }

Explore social media posting API by platform

Open platform pages for request and response examples, provider settings, and Payload Wizard samples.

Node SDK

TypeScript SDKfor Node.js backendstyped REST calls

Install @openquok/node-sdk in your Next.js or TypeScript backend. Call post() with the same JSON you send to POST /public/posts. Media, integrations, and schedule fields stay typed.

MCP server

MCP toolsfor Cursor and Claude Codesame public API

Connect your MCP client with an opo_ token. Use schedulePostTool, integrationList, and postsList from chat. Agents draft and queue posts through the same REST API.

OAuth2 for apps

OAuth2 appsuser consent workspace tokens

Register your app under Developers → Apps. Run the Authorization Code flow. Receive an opo_ token for the organization the user approves. Embed scheduling without pasted workspace keys.

Pricing

Ship your posting APIon any plan

Every paid plan includes Public API access, the Node SDK, MCP tools, and OAuth apps per workspace. Start with a 7-day free trial — no credit card required.

Solo

$29 / mo

Wire POST /public/posts from a side project — REST, Node SDK, or MCP in one workspace.


Features

  • 1 agent workspace
  • Total 15 channels
  • 500 posts per month
  • Unlimited AI Writer (experimental)
  • Unlimited AI Summarizer (experimental)
  • Public API access
  • 1 OAuth app
  • 1 MCP server (same OAuth connection)
  • Total 5.0 GB cloud storage
  • Multi-channel publishing
  • Agent integrations
7-day free trial — no credit card required to start

Self-host for $0

OpenQuok charges no software fee when you run it on your own infrastructure. You still pay for servers, Supabase, and bandwidth.

Hosted cloud Docker Compose Cloud production stack Self-hosting overview

Posting API FAQ

Social media posting API,answered

Plain answers about posting through the OpenQuok public API, workspace plans, and limits.

Discord Support