Posts
Create, schedule, update, and publish social media posts across multiple platforms simultaneously.
Base URL
https://api.voxburst.io/v1/postsCreate Post
POST /v1/posts
Creates a new post. Posts can be created as drafts, scheduled for a future time, or published immediately.
Required scopes: posts:write
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
content | string | Yes | Post content. Used as default for all platforms. |
platforms | string[] | Yes | Target platforms: TWITTER, LINKEDIN, INSTAGRAM, FACEBOOK, BLUESKY, THREADS |
accountIds | string[] | Yes | IDs of connected accounts to post from |
scheduledFor | string | No | ISO 8601 datetime for scheduled publishing |
overrides | object | No | Per-platform content overrides |
mediaIds | string[] | No | IDs of previously uploaded media files |
Example Request
curl -X POST https://api.voxburst.io/v1/posts \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"content": "Hello from VoxBurst! 🚀",
"platforms": ["TWITTER", "LINKEDIN"],
"accountIds": ["acc_123", "acc_456"],
"scheduledFor": "2026-03-01T14:00:00Z"
}'Response
{
"id": "post_abc123",
"content": "Hello from VoxBurst! 🚀",
"platforms": ["TWITTER", "LINKEDIN"],
"status": "SCHEDULED",
"scheduledFor": "2026-03-01T14:00:00Z",
"createdAt": "2026-02-20T10:00:00Z",
"updatedAt": "2026-02-20T10:00:00Z"
}Platform Overrides
Use overrides to customize content per platform:
{
"content": "Announcing our new feature!",
"platforms": ["TWITTER", "LINKEDIN"],
"accountIds": ["acc_123", "acc_456"],
"overrides": {
"TWITTER": {
"content": "New feature alert! 🎉 #voxburst"
},
"LINKEDIN": {
"content": "We're excited to announce our latest feature that helps teams schedule social media content more efficiently. Read more on our blog."
}
}
}Get Post
GET /v1/posts/:id
Retrieve a single post by ID.
Required scopes: posts:read
curl https://api.voxburst.io/v1/posts/post_abc123 \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxx"List Posts
GET /v1/posts
List all posts with optional filtering. Uses cursor-based pagination.
Required scopes: posts:read
Query Parameters
| Parameter | Type | Description |
|---|---|---|
status | string | Filter by status: DRAFT, SCHEDULED, PUBLISHED, FAILED |
platform | string | Filter by platform |
from | string | Start date (ISO 8601) |
to | string | End date (ISO 8601) |
limit | number | Results per page (default: 20, max: 100) |
cursor | string | Pagination cursor from previous response |
curl "https://api.voxburst.io/v1/posts?status=SCHEDULED&limit=50" \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxx"Response
{
"posts": [...],
"pagination": {
"cursor": "eyJpZCI6InBvc3RfYWJjMTIzIn0",
"hasMore": true
}
}Update Post
PATCH /v1/posts/:id
Update a post. Only DRAFT and SCHEDULED posts can be updated.
Required scopes: posts:write
curl -X PATCH https://api.voxburst.io/v1/posts/post_abc123 \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"content": "Updated content!",
"scheduledFor": "2026-03-02T14:00:00Z"
}'Delete Post
DELETE /v1/posts/:id
Delete a post. Published posts cannot be deleted through the API.
Required scopes: posts:write
curl -X DELETE https://api.voxburst.io/v1/posts/post_abc123 \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxx"Publish Now
POST /v1/posts/:id/publish
Immediately publish a draft or scheduled post.
Required scopes: posts:write
curl -X POST https://api.voxburst.io/v1/posts/post_abc123/publish \
-H "Authorization: Bearer sk_live_xxxxxxxxxxxxx"Post Status
| Status | Description |
|---|---|
DRAFT | Created but not scheduled or published |
SCHEDULED | Queued for future publishing |
PUBLISHING | Currently being sent to platforms |
PUBLISHED | Successfully published to all platforms |
FAILED | Publishing failed on one or more platforms |
PARTIAL | Published to some but not all platforms |