Skip to main content
Version: 0.0.x

Authentication and Token

VideoSDK uses access tokens for authentication. Using our dashboard (, anyone can generate access tokens tokens with an API key and secret pair.

  • Your backend server will generate access tokens using API Key and secret.
  • Your client obtains token from your backend server.
  • Your client will pass the token to VideoSDK server.
  • VideoSDK client sdk will conncts to the VideoSDK server with available token.
  • VideoSDK server will validate the token and accpets your incoming connection.

Here is the simple sequence diagram represents the authentication.

sequenceDiagram Your App Client->>Your App Server: Request for token; activate Your App Server; Note left of Your App Server: Generate token; Your App Server-->>Your App Client: Received token; deactivate Your App Server; Your App Client->>VideoSDK Server: Request to establish connection; activate VideoSDK Server; Note left of VideoSDK Server: Validates Token; VideoSDK Server-->>Your App Client: Connection established; deactivate VideoSDK Server;

Generate API Key and Secret

Visit, to gererate API Key and secret.

Generate API Key from Dashboard

Generate Access Token

For security, every participant that connects to meeting needs a access token. By substituting apikey and permissions in it.

var jwt = require("jsonwebtoken");
var uuid4 = require("uuid4");

// Need to generate from

apikey: API_KEY,
permissions: ["allow_join"], // Permission to join the meeting
algorithm: "HS256",
expiresIn: "24h",
jwtid: uuid4(),
function (err, token) {

Available permissions are:

  • allow_join: The participant will be permitted entry without request.
  • ask_join: The participant will not be permitted entry without request.
  • allow_mod: Allow participant to enable/disable other participant's mic/webcam.

Got a Question? Ask us on discord