Your First Post
This walkthrough takes you from zero to a scheduled post.
1. Find a channel
Posts are published to a connected channel — a "social account". List them and grab an
id:
curl https://api.schedulin.app/v0/social-accounts \ -H "x-api-key: sk_live_..."
{ "data": [ { "id": "acc_123", "platform": "instagram", "username": "@yourbrand" }, { "id": "acc_456", "platform": "twitter", "username": "@yourbrand" } ] }
2. Create the post
POST /v0/posts requires caption, socialAccountId, and a media array (each item
needs a url). Use action to control what happens:
action | Behavior |
|---|---|
now | Publish immediately |
schedule | Publish at scheduledAt |
queue | Add to the channel's posting queue |
draft | Save as a draft, publish later |
curl -X POST https://api.schedulin.app/v0/posts \ -H "x-api-key: sk_live_..." \ -H "Content-Type: application/json" \ -d '{ "socialAccountId": "acc_123", "caption": "Hello from the Schedulin API 👋", "media": [{ "url": "https://cdn.example.com/launch.jpg" }], "action": "schedule", "scheduledAt": "2026-06-01T15:00:00Z" }'
TIP
Don't have a hosted media URL yet? See to get a presigned upload URL from the API.
3. Confirm it's scheduled
curl "https://api.schedulin.app/v0/posts?status=SCHEDULED" \ -H "x-api-key: sk_live_..."
That's it — you've published through the API. Browse Examples for more recipes.