Developer

getVibeMotion API

A small, focused REST API for generating videos programmatically. Available on the Max plan.

Authentication

All API requests use Bearer authentication. Generate keys from your dashboard (Max plan only). Keys are shown once at creation — store them securely.

Authorization: Bearer gvm_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Quickstart

Generate a video from a prompt:

curl -X POST https://getvibemotion.com/api/v1/videos \
  -H "Authorization: Bearer $GVM_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A golden-hour drone shot over a snowcapped mountain range",
    "modelSlug": "seedance-2",
    "aspectRatio": "16:9"
  }'

The endpoint returns immediately with a job id. You'll be notified via webhook (video.ready / video.failed) when the job completes.

Endpoints

  • POST /v1/videos — enqueue a generation. Body: prompt, modelSlug, aspectRatio, optional sourceImageUrl.
  • GET /v1/videos/:id — fetch job status and output URLs once ready.
  • GET /v1/whoami — token scope and rate limit info.

Rate limits

  • 10 concurrent generations per key. Additional requests return 429 Too Many Requests.
  • Token charges follow the same rules as the UI — failed runs are auto-refunded.

Errors

  • 401 — missing or invalid Bearer token.
  • 402 — insufficient token balance.
  • 422 — validation error (see details for fields).
  • 429 — concurrency or quota exceeded.
  • 5xx — upstream provider failure; retry with exponential backoff.

SDKs

We don't ship official SDKs yet. The OpenAPI spec at https://getvibemotion.com/api/docs can be fed into openapi-generator for client generation in any language.