API.Video · Authentication Profile
Api Video Authentication
Authentication
API.Video secures its APIs with http across 3 declared security schemes, as derived from its OpenAPI definitions.
Artificial IntelligenceAnalyticsCDNEncodingLive StreamingTranscriptionVideoVideo-on-Demand
Methods: http
Schemes: 3
OAuth flows:
API key in:
Security Schemes
apiKey http
scheme: basic
bearerAuth http
scheme: bearer
delegated upload token apiKey
· in: query ()
Source
Authentication Profile
generated: '2026-11-05'
method: searched
source: 'https://docs.api.video/reference/authentication-guide, https://docs.api.video/reference/basic-authentication, https://docs.api.video/reference/disposable-bearer-token-authentication, https://docs.api.video/reference/api/Advanced-authentication, https://docs.api.video/reference/api/Upload-Tokens, https://docs.api.video/sdks/security/; securitySchemes of openapi/_original/api-video-openapi.yml (bearerAuth: http bearer; apiKey: http basic)'
docs: https://docs.api.video/reference/authentication-guide
summary:
types: [http]
schemes: [basic, bearer]
recommended: Disposable bearer token (the official clients use it by default); Basic auth is positioned for quick testing.
environments: separate API keys for sandbox (https://sandbox.api.video) and production (https://ws.api.video); a key used against the wrong environment returns 401.
key_management: API keys are created on https://dashboard.api.video (API Keys page); production allows multiple keys per project for different applications. The docs tell developers never to ship keys in frontend or mobile code.
schemes:
- name: apiKey
type: http
scheme: basic
description: 'HTTP Basic Auth with the API key as the username and an empty password ("curl -u api_key: https://ws.api.video/videos"; keep the trailing colon). Invalid credentials return 401 Unauthorized with a problem+json body.'
docs: https://docs.api.video/reference/basic-authentication
sources:
- openapi/api-video-advanced-authentication-api-openapi.yml
- openapi/api-video-analytics-api-openapi.yml
- openapi/api-video-captions-api-openapi.yml
- openapi/api-video-chapters-api-openapi.yml
- openapi/api-video-live-streams-api-openapi.yml
- openapi/api-video-player-themes-api-openapi.yml
- openapi/api-video-summaries-api-openapi.yml
- openapi/api-video-tags-api-openapi.yml
- openapi/api-video-upload-tokens-api-openapi.yml
- openapi/api-video-videos-api-openapi.yml
- openapi/api-video-watermarks-api-openapi.yml
- openapi/api-video-webhooks-api-openapi.yml
- name: bearerAuth
type: http
scheme: bearer
bearerFormat: JWT
description: 'Disposable bearer token. POST /auth/api-key with {"apiKey": ...} returns access_token (JWT, valid 3600 seconds), token_type "bearer", refresh_token and expires_in; POST /auth/refresh with {"refreshToken": ...} rotates it. Send as "Authorization: Bearer <access_token>". The docs suggest either a scheduled refresh every 3600 seconds or refreshing on a 401.'
token_endpoint: POST https://ws.api.video/auth/api-key
refresh_endpoint: POST https://ws.api.video/auth/refresh
token_lifetime_seconds: 3600
docs: https://docs.api.video/reference/disposable-bearer-token-authentication
sources:
- openapi/api-video-advanced-authentication-api-openapi.yml
- openapi/api-video-analytics-api-openapi.yml
- openapi/api-video-captions-api-openapi.yml
- openapi/api-video-chapters-api-openapi.yml
- openapi/api-video-live-streams-api-openapi.yml
- openapi/api-video-player-themes-api-openapi.yml
- openapi/api-video-summaries-api-openapi.yml
- openapi/api-video-tags-api-openapi.yml
- openapi/api-video-upload-tokens-api-openapi.yml
- openapi/api-video-videos-api-openapi.yml
- openapi/api-video-watermarks-api-openapi.yml
- openapi/api-video-webhooks-api-openapi.yml
- name: delegated upload token
type: apiKey
in: query
scheme: null
description: Not a securityScheme in the OpenAPI, but a documented credential - POST /upload-tokens (optionally with a ttl) issues a token an end user passes to POST /upload?token=... so browsers and mobile apps can upload without the account API key. Tokens are listed, retrieved and deleted at /upload-tokens; the docs recommend the shortest TTL possible.
docs: https://docs.api.video/reference/api/Upload-Tokens
sources:
- openapi/api-video-upload-tokens-api-openapi.yml
- openapi/api-video-videos-api-openapi.yml
errors:
- {status: 401, title: The API key is invalid.}
- {status: 401, title: The access token is invalid or expired.}
- {status: 401, title: The refresh token is invalid.}
- {status: 401, title: The "Authorization" header is missing.}
- {status: 403, title: Suspended account}
Work with this as data
Every security artifact here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for security posture
4 MCP tools reach this
find_securityBrowse and filter every security artifact in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/api-video-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.