Skip to content
Get your keyGet a key

Get started

Keys and authentication

Every call carries one of your API keys. A key is made in Settings → API, shown once, and works only for the API.

Try it · freeGET/account
curl https://vessero.com/api/v1/account \
  -H "Authorization: Bearer $VESSERO_API_KEY"
Response200 OK
{
  "email": "ada@okafor.studio",
  "credits": {
    "total": 840,
    "fromPlan": 600,
    "purchased": 240,
    "withAnEnd": [],
    "unmetered": false
  },
  "plan": {
    "name": "Pro",
    "status": "active",
    "creditsPerPeriod": 1200,
    "refillsAt": "2026-11-21T09:12:00.000Z",
    "endsAtPeriodEnd": false
  },
  "purchasesOpen": true,
  "oneOffBuys": null,
  "addCreditsUrl": "https://vessero.com/pricing",
  "studios": [
    {
      "id": "video",
      "name": "Video",
      "on": true,
      "tools": [
        "POST /api/v1/videos"
      ]
    },
    {
      "id": "images",
      "name": "Images",
      "on": true,
      "tools": [
        "POST /api/v1/images"
      ]
    }
  ]
}
Response401 Unauthorized
{
  "error": {
    "code": "invalid_api_key",
    "message": "This key does not open the Vessero API. Make a new one in Vessero under Settings → API.",
    "retryable": false,
    "requestId": "req_7Lq2XbN0vT4mKc9P"
  }
}

Make a key

Open Settings → API and press New key. Name it for where it will live, such as "Shop backend", and choose what it may do:

  • See your account (account:read): your credits, models, voices, boards and work. It spends nothing.
  • Make things and spend credits (create): it runs studios, builds boards and spends credits.

You can give it a daily credit cap. The key is shown once, when it is made; after that Vessero keeps only a fingerprint of it, and shows its last four characters. You can hold up to 20 keys at once.

Send it

Send the key on every call as Authorization: Bearer vsk_…, or as X-Api-Key: vsk_…. A call without one is answered 401 missing_api_key; a key that is revoked, mistyped or not for the API, 401 invalid_api_key. A key without the permission a call needs gets 403 insufficient_scope.

Keep it on your server

Anyone holding a key can use your account. Keep it in your server’s environment and call Vessero from there, never from a web page or an app people download: a mobile app calls your server, and your server calls Vessero. Use a key for each place it lives, so revoking one stops only that one.

A key made for an AI app under Settings → Connected apps does not open the API, and an API key does not open the AI apps’ server.