Skip to main content

Quick Start

Publish your first post via the PostBoost API in under 5 minutes. New to PostBoost? Read Core Concepts first to understand Workspaces, Accounts, and the API structure.

1. Get your API key

  1. Create a free account
  2. Go to Settings → Access Tokens
  3. Click Create Token and copy the token

2. Connect a social account

In the PostBoost dashboard, go to Accounts and connect at least one social media account. PostBoost handles OAuth — your users authorize via PostBoost's built-in OAuth flow.

3. Find your account ID

After connecting an account in the dashboard, retrieve its numeric ID via the Accounts API. You'll need this when creating posts.

curl https://postboost.co/app/api/{workspaceUuid}/accounts \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"data": [
{
"id": 42,
"name": "My Page",
"provider": "instagram",
"username": "@myaccount"
}
]
}

Use the id value (e.g. 42) in the accounts array when creating posts.

4. Find your workspace UUID

Every API call is scoped to a workspace. Find your UUID in two ways:

From the dashboard URL (works for all users):

Open the PostBoost dashboard — your workspace UUID appears in the URL:

https://postboost.co/app/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/posts

Via the API (admin users only):

curl https://postboost.co/app/api/panel/workspaces \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"data": [
{
"uuid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "My Workspace"
}
]
}
note

GET /panel/workspaces requires an admin token. If you receive a 403 Forbidden, use the dashboard URL method instead.

5. Publish a post

Replace {workspaceUuid} with your workspace UUID and YOUR_ACCOUNT_ID with the account id from Step 3:

curl -X POST https://postboost.co/app/api/{workspaceUuid}/posts \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"accounts": [YOUR_ACCOUNT_ID],
"versions": [
{
"account_id": 0,
"is_original": true,
"content": [{ "body": "Hello from the PostBoost API! 🚀" }]
}
],
"schedule_now": true
}'
{
"uuid": "01234567-89ab-cdef-0123-456789abcdef",
"status": "published",
"scheduled_at": null
}
Understanding versions

The versions array lets you customize content per platform. A version with is_original: true and account_id: 0 is the default — its content is sent to all accounts listed in accounts. To override content for a specific account, add another version entry with that account's numeric id.

6. Schedule for later

Instead of schedule_now, use schedule: true with a date and time:

curl -X POST https://postboost.co/app/api/{workspaceUuid}/posts \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"accounts": [YOUR_ACCOUNT_ID],
"versions": [
{
"account_id": 0,
"is_original": true,
"content": [{ "body": "Scheduled post via API." }]
}
],
"schedule": true,
"date": "YYYY-MM-DD",
"time": "10:00",
"timezone": "America/New_York"
}'
{
"uuid": "01234567-89ab-cdef-0123-456789abcdef",
"status": "scheduled",
"scheduled_at": "2026-06-01T10:00:00-04:00"
}

Code examples

import requests

API_TOKEN = "YOUR_API_TOKEN"
WORKSPACE = "your-workspace-uuid"

ACCOUNT_ID = 42 # from GET /{workspaceUuid}/accounts

response = requests.post(
f"https://postboost.co/app/api/{WORKSPACE}/posts",
headers={"Authorization": f"Bearer {API_TOKEN}"},
json={
"accounts": [ACCOUNT_ID],
"versions": [{
"account_id": 0,
"is_original": True,
"content": [{"body": "Hello from Python!"}]
}],
"schedule_now": True,
}
)

post = response.json()
print(post["uuid"])

Next steps