Vidyst API
API referenceAuthentication

Verify an API key

GET
/auth/verify

Checks the API key in the Authorization header and returns the key's name, scopes, expiry and rate-limit status.

Use it to test a new key, to see which permissions a key has, or as a cheap health check for your integration. It needs no scope, and counts against the key's rate limit like any other request.

A key that isn't valid gets a 401 (missing, invalid, expired or revoked) or a 403 (valid, but API access isn't enabled for the account or the request comes from outside the key's IP allowlist). The code field says which.

Authorization

apiKey
headerAuthorizationBearer <vk_live_<public id>_<secret>>

An API key from the Vidyst studio (Developer → API keys), sent as Authorization: Bearer vk_live_….

Response Body

The key is valid and may call the API.

application/json
  1. response

The key is valid and may call the API.

valid*boolean

Always true: an invalid key gets a 401 problem instead.

key*

The API key the request was authenticated with. Never includes the secret.

rateLimit*

Where the key stands against its rate limit, as of this request.

requestId*string

This request's id (also in X-Request-Id).

Example Request
curl -X GET 'https://vapi.vidyst.com/public/v1/auth/verify' \  -H 'Authorization: Bearer vk_live_…'
Example Response
{  "valid": true,  "key": {    "id": "01929c5e-8f3a-7b21-9d4e-5a6b7c8d9e0f",    "name": "Production server",    "prefix": "vk_live_4fQ9zK2mXp7L",    "mode": "live",    "scopes": [      "webinars:read",      "registrants:read"    ],    "expiresAt": "2027-02-01T09:30:00.000Z",    "createdAt": "2026-11-03T09:30:00.000Z",    "usingPreviousSecret": false  },  "rateLimit": {    "limit": 120,    "remaining": 119,    "resetAt": "2026-11-03T09:31:00.000Z",    "windowSeconds": 60  },  "requestId": "0192f5e2-7c1a-7c4e-9a51-3d1f0b6c2e11"}