Get started
Authentication
Every request (except the GET /v1 index) is authenticated with an API key.
Bearer keys
Send your key in the Authorization header:
curl https://api.vivideo.ai/v1/me \
-H "Authorization: Bearer vv_live_..."An X-API-Key: vv_live_... header works too, if that's easier for your stack.
!
Keys are account secrets. Anyone with a key can create videos and spend your credits. Keep keys server-side — never in browsers, mobile apps, or git. Vivideo stores only a SHA-256 hash of each key, so a lost key can't be recovered — revoke it and make a new one.
Managing keys
Keys are managed in the Vivideo app under Settings → More → API Keys (app.vivideo.ai/account/api-keys):
| Action | Notes |
|---|---|
| Create | Up to 10 active keys. The full key is shown once, at creation. |
| Name | Label each key by integration so you can tell them apart. |
| Revoke | Takes effect immediately — requests with that key start returning 401. |
| Inspect | See created and last-used timestamps and request counts. |
Failure modes
| Code | Meaning |
|---|---|
missing_api_key | No key on the request. |
invalid_api_key | Key is malformed or does not exist. |
api_key_revoked | Key was revoked — create a new one. |
All three return 401 with a request_id you can quote to support.
Security best practices
- Store keys in environment variables or a secret manager, never in source.
- Use one key per integration, so a leak is revocable in isolation.
- Rotate by creating a new key, migrating, then revoking the old one.
- Review last-used timestamps periodically and revoke anything unfamiliar.
Machine-readable: interactive reference · openapi.yaml · llms-api.txt. Base URL
https://api.vivideo.ai.