Quickstart
Go from sign-up to a live video room in three steps. Your server mints a token with Relay; your client joins LiveKit with it.
1. Create a project and grab your key
Sign up at relay.welbuiltai.tech/signup. A project is created for you automatically. Open API Keys in the dashboard and copy your secret key — it starts with sk_live_ and is shown only once, so store it somewhere safe.
2. Mint a token from your server
Call POST /v1/tokens from your backend with your secret key in the Authorization header. Pass the room the user should join and an identity for them.
curl https://api.relay.welbuiltai.tech/v1/tokens \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{"room":"my-room","identity":"user-123"}'const res = await fetch("https://api.relay.welbuiltai.tech/v1/tokens", {
method: "POST",
headers: {
"Authorization": "Bearer sk_live_...",
"Content-Type": "application/json",
},
body: JSON.stringify({ room: "my-room", identity: "user-123" }),
});
const { token, url, room } = await res.json();A 200 response returns the token, the LiveKit server URL, and the fully-namespaced room name:
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"url": "wss://your-livekit-host",
"room": "p_<projectId>__my-room"
}3. Join from the browser
Send the token and url to your client, then connect with livekit-client:
import { Room } from "livekit-client";
const room = new Room();
await room.connect(url, token); // url + token from your server
await room.localParticipant.enableCameraAndMicrophone();That's it — media now flows directly between your clients and LiveKit. The room and identityare entirely yours to choose, and the room is automatically isolated to your project so it can never collide with another tenant's rooms.