• TypeScript SDK

    Node SDK

  • MCP tools

    MCP server

  • OAuth2 apps

    OAuth2 for apps

Built for people who connect their own channels

Who publishes to YouTube via 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. Publish to YouTube through the same request shape.

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. Publish to YouTube through the same request shape.

Agent operators

Point Cursor, Claude Code, or another MCP host at your workspace. The agent posts only to accounts you already authorized. Publish to YouTube through the same request shape.

Three steps

Add YouTube posting to your product in three steps

Connect YouTube once, then publish and track delivery 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: walkthrough.mp4

Endpoint

POST /api/v1/public/posts

JSON payload
{ "scheduledAt": "2026-01-01T12:00:00.000Z", "status": "scheduled", "body": "Full product walkthrough — links in description.", "integrationIds": [ "<integration-id>" ], "media": [ { "id": "<media-id>", "path": "https://cdn.example.com/walkthrough.mp4" } ], "providerSettingsByIntegrationId": { "<integration-id>": { "title": "OpenQuok walkthrough", "type": "public", "selfDeclaredMadeForKids": "no" } } }

Explore request and response examples by format

Static examples mirror shipped OpenQuok public API payloads and success responses.

Publish a video to YouTube with POST /public/posts.

Request

JSON body
{ "scheduledAt": "2026-01-01T12:00:00.000Z", "status": "scheduled", "body": "Full product walkthrough — links in description.", "integrationIds": [ "<integration-id>" ], "media": [ { "id": "<media-id>", "path": "https://cdn.example.com/walkthrough.mp4" } ], "providerSettingsByIntegrationId": { "<integration-id>": { "title": "OpenQuok walkthrough", "type": "public", "selfDeclaredMadeForKids": "no" } } }

Response

JSON body
{ "success": true, "data": { "postGroup": "9a0a1b2c-3d4e-4f5a-9b8c-aa11bb22cc33", "posts": [ { "id": "5b3c1d2e-9a3f-4e6b-bb12-2c0a5f1a90a1", "state": "QUEUE", "publishDate": "2026-01-01T12:00:00.000Z", "organizationId": "c1d8a3f4-1234-4abc-bf12-1234567890ab", "integrationId": "1f9a4f3a-3b2c-4f4a-9d8e-7a3f6b1c8e22", "content": "Full product walkthrough — links in description.", "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" } ] } }

Node SDK

TypeScript SDK for Node.js backends typed REST calls

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

MCP server

MCP tools for Cursor and Claude Code same public API

Connect your MCP client with an opo_ token. Publish YouTube posts from chat with schedulePostTool and integrationList. Agents use the same REST API as curl and the SDK.

OAuth2 for apps

OAuth2 apps user consent workspace tokens

Register your app under Developers → Apps. Users approve access to their workspace, then your app calls the public API for YouTube publishing without pasted workspace keys.

Pricing

Transparent pricing for YouTube posting API

Every paid plan includes Public API access, the Node SDK, MCP tools, and OAuth apps per workspace. Publish to YouTube from REST, SDK, or MCP — start with a 7-day free trial, no credit card required.

Solo

$29 / mo

Prototype YouTube posting from curl, SDK, or MCP before you ship to customers.


Features

  • 1 agent workspace
  • 2 competitor domains
  • Total 15 channels
  • Total 5.0 GB cloud storage
  • 500 posts per month
  • Agent integrations
  • Unlimited AI Writer (experimental)
  • Business profiles & directory launch
  • Unlimited AI Summarizer (experimental)
  • Browser extension autofill
  • Public API access
  • Directory submission tracking
  • 1 OAuth app
  • Domain rating analytics
  • 1 MCP server (same OAuth connection)
  • Profile variants per directory

All paid plans include Social scheduling and Directory launch on the same workspace.

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 Cloud billing Docker Compose Cloud production stack Self-hosting overview

API examples FAQ

YouTube Posting API answered

Connect YouTube, build a valid POST /public/posts payload, and publish from your app or agent.

Discord Support