- Access to a private room
- A preset user name
- Permission to initiate screen sharing or recording
- Automatic ejection after a set duration
What is a Daily meeting token?
Daily meeting tokens are JSON Web Tokens (JWTs) — strings made up of three base64-encoded parts separated by periods:- Header: algorithm and token type
- Payload: claims like expiry, issue time, and room privileges
- Signature: the header and payload signed with a secret
Getting a Daily meeting token
A Daily meeting token can be obtained either through the REST API, or by self-signing a JWT with your Daily API key.Via the REST API
Make aPOST request to https://api.daily.co/v1/meeting-tokens with your chosen token properties:
Via self-signing
Tokens can also be self-signed using a JWT library. Example usingjsonwebtoken:
Security considerations
We recommend narrowing the scope and lifetime of your token as much as possible:- Always set an expiry. A token without
expis valid forever. - Specify a room name. A token without
ris valid for every room on your domain.
Using a Daily meeting token
Pass the token as part of thejoin() call:
If a meeting token is invalid, no error is emitted at join time. Privileged operations will simply fail when attempted.
Validating a Daily meeting token
To validate a token via the REST API, make aGET request to https://api.daily.co/v1/meeting-tokens/[DAILY_MEETING_TOKEN]:
200 response includes an object with the token’s properties. If the token is invalid, an error is returned.
If you’re using a self-signed token, you can validate claims and signature locally using a JWT library without making an API request.