Vibescaling Docs

API Overview

Vibescaling REST API reference

Base URL

https://admin.vibescaling.org/api/v1

Authentication

All API requests require authentication via API key:

Authorization: Bearer vs_your_api_key

Create API keys in Settings → API Keys in your dashboard.

Endpoints

MethodPathDescription
GET/postsList posts (paginated)
POST/postsCreate a new post
GET/posts/:idGet a single post
PATCH/posts/:idUpdate a post
DELETE/posts/:idDelete a post (draft/archived only)
PATCH/posts/batchBatch archive posts
POST/posts/:id/assetsGet presigned upload URL for slide or video
GET/posts/:id/assetsList assets with presigned URLs
POST/posts/:id/publishPublish a post to TikTok
GET/posts/:id/publish-statusCheck TikTok publish status
GET/tiktok-accountsList connected TikTok accounts
GET/analyticsGet analytics summary

Rate Limits

Rate limits depend on your plan and apply to API key requests only. During the free trial, Growth-level limits apply. See Rate Limits for details.

PlanRequests/minute
Growth60
Agency300
API Only60

Rate limit headers are included in every response:

  • X-RateLimit-Limit — max requests per window
  • X-RateLimit-Remaining — remaining requests
  • X-RateLimit-Reset — window reset time (Unix timestamp)

When rate limited, you'll receive a 429 response with a Retry-After header.

Response Format

All responses return JSON:

{
  "data": { ... }
}

Errors return:

{
  "error": "Description of the error"
}

HTTP Status Codes

CodeMeaning
200Success
201Created
400Invalid request
401Unauthorized
404Not found
409Conflict (e.g. video already exists)
413Payload too large (video exceeds 4GB)
429Rate limit exceeded
500Server error

On this page