Skip to Content

Posts

Create, schedule, update, and publish social media posts across multiple platforms simultaneously.

Base URL

https://api.voxburst.io/v1/posts

Create 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

FieldTypeRequiredDescription
contentstringYesPost content. Used as default for all platforms.
platformsstring[]YesTarget platforms: TWITTER, LINKEDIN, INSTAGRAM, FACEBOOK, BLUESKY, THREADS
accountIdsstring[]YesIDs of connected accounts to post from
scheduledForstringNoISO 8601 datetime for scheduled publishing
overridesobjectNoPer-platform content overrides
mediaIdsstring[]NoIDs 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

ParameterTypeDescription
statusstringFilter by status: DRAFT, SCHEDULED, PUBLISHED, FAILED
platformstringFilter by platform
fromstringStart date (ISO 8601)
tostringEnd date (ISO 8601)
limitnumberResults per page (default: 20, max: 100)
cursorstringPagination 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

StatusDescription
DRAFTCreated but not scheduled or published
SCHEDULEDQueued for future publishing
PUBLISHINGCurrently being sent to platforms
PUBLISHEDSuccessfully published to all platforms
FAILEDPublishing failed on one or more platforms
PARTIALPublished to some but not all platforms
Last updated on