Open a new room in the browser
const url = 'https://collab.work.optidata.cloud/api/rooms/new?name=Quick%20sync&room_slug=quick-sync&settings%5Bjoin_mode%5D=automatic';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://collab.work.optidata.cloud/api/rooms/new?name=Quick%20sync&room_slug=quick-sync&settings%5Bjoin_mode%5D=automatic' \ --header 'Authorization: Bearer <token>'Browser entry point: creates a room owned by the caller, adds the caller to it and answers with a redirect to the room page. Use it as the target of a “New meeting” link.
Every request creates a new room. From an integration, use
POST /rooms/new instead, which returns the room as JSON.
Accepts the same fields as POST /rooms/new, as query parameters;
nested settings use bracket notation, e.g.
?name=Quick%20sync&settings[max_users]=10&settings[join_mode]=no_request
(brackets may be percent-encoded as %5B / %5D).
Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters”Room name.
Slug of the room’s permanent link.
Room description.
Address of the image shown as the room’s icon. Defaults to a camera icon.
Maximum number of people in the room at once. Defaults to your plan’s limit.
Who may enter the room and whether they must ask first:
automatic— anyone with the link enters straight away; guests without an account appear as “Guest”.no_request— anyone with the link enters without asking; guests type their name first.unauthenticated_must_request— signed-in Optiwork users enter; guests type their name and ask to join.authenticated_only_no_request— only signed-in Optiwork users, without asking; guests are turned away.authenticated_only_must_request— only signed-in Optiwork users, and they ask to join; guests are turned away.any_must_request— everyone asks to join; guests type their name first.
Who may join and how; defaults to your company’s Call settings
Responses
Section titled “ Responses ”Redirect to the new room’s page, already joined as its owner.
Headers
Section titled “Headers”Address of the room page.
No authentication key was sent, or it is malformed.
Authentication failures use an error key rather than message.
object
Examples
No bearer token sent
{ "error": "JWT passport exception: Missing bearer token in request"}The permanent link (room_slug) is already used by another room of your company.
An error raised by the application’s own rules.
object
What went wrong.
The HTTP status, repeated.
What to do about it, when there is a hint.
Examplegenerated
{ "error": "example", "status": 1, "help": "example"}The authentication key is expired or not recognised. Get a fresh one and retry.
Authentication failures use an error key rather than message.
object
Examples
{ "error": "JWT passport expired: Passport expired"}