Skip to main content
Sometimes the person you need in a call doesn’t have an account with you — a customer, a patient, a candidate, someone’s family member. An invite link brings them in anyway. You create the link, send it to them however you like, and they join from their browser.

One room only

A link works for the room you made it for, and nothing else.

Bounded

You choose how long it lasts and how many people it lets in.

Yours to cancel

Revoke a room’s links at any time and they stop working immediately.

How it works

1

Create the link

Ask Glot for an invite link for a room you have already created.
2

Send it to your guest

Put the code in a link to your own page, and send it however suits you.
3

Your guest picks their language

Your page asks Glot which languages the room can still take, and how many your guest picks. It offers them exactly those.
4

They join

Glot hands your page the credentials to connect, and the call begins.
cURL
Response
You choose two things, and both are required:
  • How long it lasts — up to 30 days. Shorter is safer, and an hour is plenty for a call you are about to have.
  • How many people it lets in — up to 100. Send 1 for a link meant for one guest, so that forwarding it cannot let a stranger in behind them.
The code is shown once, in this response, and cannot be looked up again. Anyone holding it can join the room until it expires, runs out of uses, or you revoke it — so treat it like a password and send it to your guest directly.

Building your guest page

The link should point at a page of your own, with the code in the path — for example https://yourapp.com/join/inv_9f2a…. Your page then makes two calls to Glot, neither of which needs your API key.

Ask what the room can take

cURL
Response
Two fields drive your chooser. active_languages is what to offer — exactly those, and nothing else. languages_required is how many of them your guest picks:
  • 1 — your guest joins from their own device. The usual case.
  • 2 — the room is set up for a shared device, so one connection carries both speakers. Your guest picks both languages of the conversation.
  • null — the room has no shape yet, and your guest’s choice settles it. Ask for one language unless you know they are sharing a device.
mode names the shape the room is in, and room_status is created before anyone has joined, active once the call is running. See streaming modes for what the two shapes mean.

Join

cURL
Response
Send as many languages as languages_required asked for. Your page connects with token and url; from there it is an ordinary streaming session — see API and streaming.
Read both fields right before showing the chooser rather than reusing an older answer. active_languages narrows as the call fills up: a room translates between two languages, so once both are taken, those are the only two on offer.
A stale chooser costs your guest nothing but a retry. A language the room cannot take, or the wrong number of them, comes back as a 409 and does not spend one of the link’s uses. Keep the code in the path of your URL, not in a query string. Codes in query strings can leak to other sites your page links to.

Seeing what is outstanding

To check which links a room has:
cURL
You get each link’s expiry, how many of its uses are gone, and who on your team created it. Codes are not included — Glot never stores them, so nothing can show them to you again. A link that has expired or run out of uses still appears here. It no longer works, but it is still yours to account for. To retire a room’s links:
cURL
They stop working straight away. Anyone already in the call stays in — this cancels the links, not the connections they granted. To end the call itself, close the room.
This retires every link for the room, not one of them. Because you never hold a code after you have sent it, cancelling one by name would mean still having the thing you were trying to invalidate. If someone should still be able to join, create a fresh link for them — links are cheap.
Cancelling is safe to repeat. A room with no links to cancel is a success, not an error.

Good to know

Invite links work for both shapes of call — one where each person joins from their own device, and one where two people share a phone. Creating a link does not commit the room to either, and it never changes a shape you have already set. What differs is how many languages your guest sends when they join, which languages_required tells your page.
Recently changed. Links can now be created for shared-device rooms, which Glot used to refuse. The join request also takes languages as an array — {"languages": ["en-GB"]} — where it previously took a single language string. Update your guest page if it still sends the old shape.

Stream your first session

The whole flow end to end — rooms, tokens, audio, and rendering the transcript.

Browse the API

Every invite endpoint, with its parameters and responses.