Skip to main content

Authentication

VideoSDK uses access tokens for authentication. Using our dashboard (app.videosdk.live), 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 Accees Token#

For security, every user that connects to live streaming needs a access token. By substituting apiKey and secretKey in it.

var jwt = require("jsonwebtoken");var uuid4 = require("uuid4");
// Need to generate from app.videosdk.liveconst API_KEY = "API_KEY_GENERATED";const SECRET_KEY = "API_SECRET_KEY_GENERATED";
jwt.sign(  {    apikey: API_KEY,  },  SECRET_KEY,  {    algorithm: "HS256",    expiresIn: "24h",    jwtid: uuid4(),  },  function (err, token) {    console.log(token);  });