Skip to Content
Authentication

Authentication

VoxBurst uses API key authentication. All requests require a Bearer token in the Authorization header.

API Keys

Authorization: Bearer sk_live_xxxxxxxxxxxxx

API keys are prefixed with:

  • sk_live_ — Production keys
  • sk_test_ — Staging/test keys

Create and manage your API keys in the VoxBurst dashboard .

Keep your API keys secret. Never commit them to version control or expose them in client-side code.

Scopes

API keys can be scoped to specific permissions. Use the minimum scopes required for your use case.

ScopeDescription
posts:readRead posts and their status
posts:writeCreate, update, delete, and publish posts
accounts:readList connected social accounts
accounts:writeConnect and disconnect social accounts
media:readView uploaded media files
media:writeUpload and delete media files
webhooks:readView webhook configurations
webhooks:writeCreate, update, and delete webhooks

Rate Limiting

Rate limits are applied per API key based on your plan:

PlanRequests/Minute
Free60
Solo120
Pro300
Team600
Business1,200

Rate limit information is returned in response headers:

X-RateLimit-Limit: 120 X-RateLimit-Remaining: 118 X-RateLimit-Reset: 1707753600

When rate limited, the API returns 429 Too Many Requests with a Retry-After header indicating when to retry.

Environment Variables

Store your API key as an environment variable:

# .env VOXBURST_API_KEY=sk_live_xxxxxxxxxxxxx
import { VoxBurstClient } from '@voxburst/sdk' const client = new VoxBurstClient({ apiKey: process.env.VOXBURST_API_KEY, })

Use different API keys for development and production environments to limit the blast radius of a leaked key.

Error Responses

Authentication failures return:

{ "error": { "code": "UNAUTHORIZED", "message": "Invalid or missing API key" } }
StatusCodeCause
401UNAUTHORIZEDMissing or invalid API key
403FORBIDDENValid key but insufficient scope
429RATE_LIMITEDRate limit exceeded
Last updated on