Getting startedQuickstart

Quickstart

Go from an API key to your first queued post in three calls.

Authentication#

Create a key with the permissions you need in Dashboard → Settings → API & MCP. Send it as a Bearer token on every API request.

Get your API key
Authentication

Treat API keys like passwords. Keep them server-side and never commit them to source control.

Authorization: Bearer ccb_live_<key_id>_<secret>

Queue your first post#

List an account, import media, and create the queued post.

01

List your accounts

Find the account IDs you want HumanPost to publish to.

curl "https://us-central1-clickbaitcarousel.cloudfunctions.net/publishingApi/v2/accounts" \
  -H "Authorization: Bearer $API_KEY"
02

Upload from a URL

Import a public video URL and keep the returned upload ID.

curl -X POST "https://us-central1-clickbaitcarousel.cloudfunctions.net/publishingApi/v2/uploads" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"kind":"video","sourceUrl":"https://cdn.example.com/launch.mp4"}'
03

Create the post

Queue the processed upload for one or more accounts.

curl -X POST "https://us-central1-clickbaitcarousel.cloudfunctions.net/publishingApi/v2/posts" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: launch-post-001" \
  -d '{"media":["UPLOAD_ID"],"accountIds":["ACCOUNT_ID"],"caption":"Launch day 🚀"}'

Safe retries#

Send a unique Idempotency-Key with POST /v2/posts. Retrying with the same key will not create a duplicate post.