REST API
Get a list of accessible rooms
Get a list of all rooms that are accessible by the requesting user.
Authorizations:
Responses
Response samples
- 200
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": "ee824cad-d7a6-4f48-87dc-e8461a9201c4",
- "created_at": "string",
- "password": "pa$$word",
- "waiting_room": true
}
]
Create a new room
Create a new room from the provided PostRoomsBody.
Authorizations:
Request Body schema: application/json
password required | string <= 255 characters The room password |
enable_sip required | boolean When enabled, a new sip configuration is generated for the roomRescheduleEvent |
waiting_room | boolean Indicates whether the meeting room should have the waiting room enabled. If absent, the waiting room will be disabled. |
Responses
Request samples
- Payload
{- "password": "string",
- "enable_sip": true,
- "waiting_room": true
}
Response samples
- 201
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": "ee824cad-d7a6-4f48-87dc-e8461a9201c4",
- "created_at": "string",
- "password": "pa$$word",
- "waiting_room": true
}
Patch a room
Patches a room with the provided PatchRoomsBody.
Authorizations:
path Parameters
room_id required | string <uuid> The id of the room to be modified. |
Request Body schema: application/json
password | string <= 255 characters The password of this room |
waiting_room | boolean Indicates whether the meeting room should have the waiting room enabled. |
Responses
Request samples
- Payload
{- "password": "string",
- "waiting_room": true
}
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": "ee824cad-d7a6-4f48-87dc-e8461a9201c4",
- "created_at": "string",
- "password": "pa$$word",
- "waiting_room": true
}
Get a room
Get a room by id.
Authorizations:
path Parameters
room_id required | string <uuid> Id of the requested room |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": "ee824cad-d7a6-4f48-87dc-e8461a9201c4",
- "created_at": "string",
- "password": "pa$$word",
- "waiting_room": true
}
Get a room's tariff information
Returns a description of the tariff of the given room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "9ffa9185-7453-4fb2-aa6a-3105a6ae83a8",
- "quotas": {
- "property1": 4294967295,
- "property2": 4294967295
}, - "enabled_modules": [
- null
], - "disabled_features": [
- null
], - "modules": [
- null
]
}
Get a room's event information
Returns a description of the event of the given room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "title": "string",
- "is_adhoc": true
}
Start a signaling session as a registered user
Returns a ticket to be used with the /signaling endpoint. When joining a room, the ticket must be provided as a Sec-WebSocket-Protocol
header field when starting the WebSocket connection. When the requested room has a password set, the requester has to provide the correct password through the requests body. When the room has no password set, the provided password will be ignored.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
breakout_room | integer ID of the breakout room |
resumption | string Token to resume previous session inside the same room |
Responses
Request samples
- Payload
{- "breakout_room": 0,
- "resumption": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
Start a signaling session for an invition code
Returns a ticket to be used with the /signaling endpoint. When joining a room, the ticket must be provided as a Sec-WebSocket-Protocol
header field when starting the WebSocket connection. When the requested room has a password set, the requester has to provide the correct password through the requests body. When the room has no password set, the provided password will be ignored.
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
password required | string <= 128 characters The room password |
breakout_room | integer ID of the breakout room |
invite_code required | string <= 128 characters The invite_code |
resumption | string Token to resume previous session inside the same room |
Responses
Request samples
- Payload
{- "password": "string",
- "breakout_room": 0,
- "invite_code": "string",
- "resumption": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
Get all invites
Gets all invites the user has access to.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
query Parameters
per_page | integer Default: 30 Results per page (max 100) |
page | integer Default: 1 Page number of the results to fetch. |
Responses
Response samples
- 200
- 404
[- {
- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
]
Create a new invite
Create a new invite from the provided object. On success, the controller will create a new Invite and return the InviteCode object. Returns 404 Not Found
when the user has no access to the room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
expiration | string <date-time> Expiration date of this invite, or null if no expiration is set |
Responses
Request samples
- Payload
{- "expiration": "2019-08-24T14:15:22Z"
}
Response samples
- 200
- 404
{- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
Get an invite
Get the invite for the given room_id and invite_code.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
invite_code required | string The invite_code |
Responses
Response samples
- 200
- 404
[- {
- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
]
Update an invite code
Update an invite from the provided object. On success, the controller will return the updated InviteCode object.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
invite_code required | string The invite_code |
Request Body schema: application/json
non-emptyexpiration | string <date-time> Expiration date of this invite, or null if no expiration is set |
Responses
Request samples
- Payload
{- "expiration": "2019-08-24T14:15:22Z"
}
Response samples
- 200
- 404
{- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
Delete an invite code
Delete the respective invite. On success, the controller will return 200 OK.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
invite_code required | string The invite_code |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Get the rooms SIP config
Returns the SIP config of this room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "sip_id": "string",
- "password": "string",
- "lobby": true
}
Create or modify the rooms SIP config
When the room has no sip config configured, a new one is created based on the provided request body and a 201 CREATED response is returned. When the room already has a sip config, the config will be modified and a 200 OK response is returned.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
non-emptypassword | string <= 10 characters Numeric string with 10 characters to secure room access. Is automatically generated when not set on creation. |
lobby | boolean Enable/Disable a lobby for users that join through SIP. Defaults to |
Responses
Request samples
- Payload
{- "password": "string",
- "lobby": true
}
Response samples
- 200
- 201
{- "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "sip_id": "string",
- "password": "string",
- "lobby": true
}
Get assets for a room
Gets all assets that are available in a room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
query Parameters
per_page | integer Default: 30 Results per page (max 100) |
page | integer Default: 1 Page number of the results to fetch. |
Responses
Response samples
- 200
- 404
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "filename": "string",
- "namespace": "string",
- "created_at": "2019-08-24T14:15:22Z"
}
]
Get an asset
Get the asset for the given room_id
and asset_id
.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
asset_id required | string <uuid> The ID of the requested asset |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Delete an asset
Delete the respective asset.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
asset_id required | string <uuid> The ID of the requested asset |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
List the streaming targets for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
]
Create a streaming target for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
name required | string The name of the streaming target |
kind required | string Value: "custom" The kind of the streaming target |
streaming_endpoint required | string <uri> The endpoint url of the streaming target |
streaming_key required | string The streaming key |
public_url required | string <uri> The url from which the stream can be accessed |
Responses
Request samples
- Payload
{- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Response samples
- 201
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Get the streaming target for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
streaming_target_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Update a streaming target for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
streaming_target_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
name | string The name of the streaming target |
kind | string Value: "custom" The kind of the streaming target |
streaming_endpoint | string <uri> The endpoint url of the streaming target |
streaming_key | string The streaming key |
public_url | string <uri> The url from which the stream can be accessed |
Responses
Request samples
- Payload
{- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Get a room's event information
Returns a description of the event of the given room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "title": "string",
- "is_adhoc": true
}
Favorite an event
Add the event to the current user's favorite list
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Unfavorite an event
remove the event from the current user's favorite list
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Create a new event
Create a new event
Authorizations:
query Parameters
suppress_email_notification | boolean Suppress notification emails. Note that not sending emails will lead to external calendars getting out of sync with the actual event. |
Request Body schema: application/json
title required | string <= 255 characters Title of the event |
description required | string <= 4096 characters Description of the event |
password | string [ 1 .. 255 ] characters Password of the room in which the event will take place |
is_adhoc | boolean Marks this event as adhoc |
waiting_room | boolean Indicates whether the meeting room should have the waiting room enabled. If absent, the waiting room will be disabled. |
is_time_independent required | boolean Marks the event as time independent. No time/schedule related fields will be set. |
is_all_day required | boolean Marks this event as an event that has no start time / end time but only start and end date |
required | object (DateTimeTZ) Start time of the event. For all-day events the time-part must be zero (00:00). |
required | object (DateTimeTZ) End time of the event. For recurring events this is the first instance's end time. If the duration is unknown, this SHOULD equal starts_at. For all-day events the time-part must be zero (00:00). |
recurrence_pattern | Array of strings <RFC 5545 recurrence attribute> (RecurrencePattern) <= 4 items [ items <RFC 5545 recurrence attribute > <= 1024 characters ] List of recurrence rules which describe the occurrences of the event.
To get all event instances resolved use the the Allowed are The |
Responses
Request samples
- Payload
{- "title": "string",
- "description": "string",
- "password": "string",
- "is_adhoc": true,
- "waiting_room": true,
- "is_time_independent": false,
- "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "recurrence_pattern": [
- "string"
]
}
Response samples
- 201
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated_at": "2019-08-24T14:15:22Z",
- "title": "string",
- "description": "string",
- "room": {
- "id": "string",
- "password": "string",
- "call_in": {
- "tel": "string",
- "uri": "string",
- "id": "string",
- "password": "string"
}
}, - "invitees_truncated": true,
- "invitees": [
- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
], - "is_time_independent": false,
- "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "recurrence_pattern": [
- "string"
], - "is_adhoc": true,
- "type": "single",
- "status": "cancelled",
- "invite_status": "pending",
- "is_favorite": true,
- "shared_folder": {
}
}
Get events
Get events in a specified time range. Recurring events that are possible to be inside the time range will also be returned. Also included are the exceptions for recurring events, in this case the id will be an instance id and the recurring_event_id is set.
Authorizations:
query Parameters
time_min | string <date-time> Lower bound of the time range (as a RFC3339 UTC timestamp) |
time_max | string <date-time> Upper bound of the time range (as a RFC3339 UTC timestamp) |
invitees_max | integer Default: 0 maximum number of invitees sent with an event |
per_page | integer Default: 30 Results per page (max 100) |
after | string Page cursor. Needs to be handled opaque |
favorites | boolean Only include favorite events |
adhoc | boolean If present, either only adhoc or non-adhoc events are returned, depending on the flag value. If absent, all events are returned regardless their adhoc flag. |
time_independent | boolean If present, either only time-independent or time-dependent events are returned, depending on the flag value. If absent, all events are returned regardless their time dependency. |
Responses
Response samples
- 200
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated_at": "2019-08-24T14:15:22Z",
- "title": "string",
- "description": "string",
- "room": {
- "id": "string",
- "password": "string",
- "call_in": {
- "tel": "string",
- "uri": "string",
- "id": "string",
- "password": "string"
}
}, - "invitees_truncated": true,
- "invitees": [
- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
], - "is_time_independent": false,
- "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "recurrence_pattern": [
- "string"
], - "is_adhoc": true,
- "type": "single",
- "status": "cancelled",
- "invite_status": "pending",
- "is_favorite": true,
- "shared_folder": {
}
}
]
Get event resource
Get the Event resource for the given id
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
invitees_max | integer Default: 0 maximum number of invitees sent with an event |
Responses
Response samples
- 200
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated_at": "2019-08-24T14:15:22Z",
- "title": "string",
- "description": "string",
- "room": {
- "id": "string",
- "password": "string",
- "call_in": {
- "tel": "string",
- "uri": "string",
- "id": "string",
- "password": "string"
}
}, - "invitees_truncated": true,
- "invitees": [
- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
], - "is_time_independent": false,
- "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "recurrence_pattern": [
- "string"
], - "is_adhoc": true,
- "type": "single",
- "status": "cancelled",
- "invite_status": "pending",
- "is_favorite": true,
- "shared_folder": {
}
}
Update an event or a single event occurrence
Update fields on an event. If you change the recurrence pattern of an recurring event, all exceptions to this recurring event are invalidated and deleted.
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
invitees_max | integer Default: 0 maximum number of invitees sent with an event |
suppress_email_notification | boolean Suppress notification emails. Note that not sending emails will lead to external calendars getting out of sync with the actual event. |
Request Body schema: application/json
non-emptytitle | string <= 255 characters Title of the event |
description | string <= 4096 characters Description of the event |
password | string [ 1 .. 255 ] characters Password of the room the event uses |
is_adhoc | boolean Marks the event as adhoc |
waiting_room | boolean Indicates whether the meeting room should have the waiting room enabled. |
is_time_independent | boolean Marks the event as time independent. No time/schedule related fields will be set. |
is_all_day | boolean Marks this event as an event that has no start time / end time but only start and end date |
object (DateTimeTZ) Start time of the event. This is used to match exceptions. | |
object (DateTimeTZ) End time of the event. For recurring events this is the first instance's end time. ends_at - starts_at is the duration of a single event or an instance. If the duration is unknown, this equals starts_at. | |
recurrence_pattern | Array of strings <RFC 5545 recurrence attribute> (RecurrencePattern) <= 4 items [ items <RFC 5545 recurrence attribute > <= 1024 characters ] List of recurrence rules which describe the occurrences of the event.
To get all event instances resolved use the the Allowed are The |
Responses
Request samples
- Payload
{- "title": "string",
- "description": "string",
- "password": "string",
- "is_adhoc": true,
- "waiting_room": true,
- "is_time_independent": true,
- "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "recurrence_pattern": [
- "string"
]
}
Response samples
- 200
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated_at": "2019-08-24T14:15:22Z",
- "title": "string",
- "description": "string",
- "room": {
- "id": "string",
- "password": "string",
- "call_in": {
- "tel": "string",
- "uri": "string",
- "id": "string",
- "password": "string"
}
}, - "invitees_truncated": true,
- "invitees": [
- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
], - "is_time_independent": false,
- "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "recurrence_pattern": [
- "string"
], - "is_adhoc": true,
- "type": "single",
- "status": "cancelled",
- "invite_status": "pending",
- "is_favorite": true,
- "shared_folder": {
}
}
Delete an event
Delete an event
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
suppress_email_notification | boolean Suppress notification emails. Note that not sending emails will lead to external calendars getting out of sync with the actual event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Get instances of the specified event
Get the RRULE based instances for the specific event. If the event has no RRULE set, the single shot event instance will be returned
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
time_min | string <date-time> Lower bound of the time range (as a RFC3339 UTC timestamp) |
time_max | string <date-time> Upper bound of the time range (as a RFC3339 UTC timestamp) |
per_page | integer Default: 30 Results per page (max 100) |
cursor | string Page cursor. Needs to be handled opaque |
invitees_max | integer Default: 0 maximum number of invitees sent with an event |
Responses
Response samples
- 200
- 404
[- {
- "id": "string",
- "recurring_event_id": "050aa237-bac2-4a0f-914a-2ac7c3e5e586",
- "instance_id": "string",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated_at": "2019-08-24T14:15:22Z",
- "title": "string",
- "description": "string",
- "room": {
- "id": "string",
- "password": "string",
- "call_in": {
- "tel": "string",
- "uri": "string",
- "id": "string",
- "password": "string"
}
}, - "invitees_truncated": true,
- "invitees": [
- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
], - "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "type": "instance",
- "status": "cancelled",
- "invite_status": "pending",
- "is_favorite": true
}
]
Get a single event instance
Get an event instance.
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
instance_id required | string Example: 20220215T180000Z Opaque id of an event instance |
query Parameters
invitees_max | integer Default: 0 maximum number of invitees sent with an event |
Responses
Response samples
- 200
- 404
{- "id": "string",
- "recurring_event_id": "050aa237-bac2-4a0f-914a-2ac7c3e5e586",
- "instance_id": "string",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated_at": "2019-08-24T14:15:22Z",
- "title": "string",
- "description": "string",
- "room": {
- "id": "string",
- "password": "string",
- "call_in": {
- "tel": "string",
- "uri": "string",
- "id": "string",
- "password": "string"
}
}, - "invitees_truncated": true,
- "invitees": [
- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
], - "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "type": "instance",
- "status": "cancelled",
- "invite_status": "pending",
- "is_favorite": true
}
Update a single event instance
Update fields on an event instance.
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
instance_id required | string Example: 20220215T180000Z Opaque id of an event instance |
query Parameters
invitees_max | integer Default: 0 maximum number of invitees sent with an event |
Request Body schema: application/json
non-emptytitle | string <= 255 characters Title of the event |
description | string <= 4096 characters Description of the event |
is_all_day | boolean Marks this event as an event that has no start time / end time but only start and end date |
object (DateTimeTZ) Start time of the event. This is used to match exceptions. | |
object (DateTimeTZ) End time of the event. For recurring events this is the first instance's end time. ends_at - starts_at is the duration of a single event or an instance. If the duration is unknown, this equals starts_at. | |
status | string Enum: "cancelled" "ok" |
Responses
Request samples
- Payload
{- "title": "string",
- "description": "string",
- "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "status": "cancelled"
}
Response samples
- 200
- 404
{- "id": "string",
- "recurring_event_id": "050aa237-bac2-4a0f-914a-2ac7c3e5e586",
- "instance_id": "string",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "created_at": "2019-08-24T14:15:22Z",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated_at": "2019-08-24T14:15:22Z",
- "title": "string",
- "description": "string",
- "room": {
- "id": "string",
- "password": "string",
- "call_in": {
- "tel": "string",
- "uri": "string",
- "id": "string",
- "password": "string"
}
}, - "invitees_truncated": true,
- "invitees": [
- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
], - "is_all_day": true,
- "starts_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "ends_at": {
- "datetime": "2019-08-24T14:15:22Z",
- "timezone": "string"
}, - "type": "instance",
- "status": "cancelled",
- "invite_status": "pending",
- "is_favorite": true
}
Create an invite to an event
Invite a user to an event
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
suppress_email_notification | boolean Suppress notification emails. Note that not sending emails will lead to external calendars getting out of sync with the actual event. |
Request Body schema: application/json
invitee | string ID of the user to be invited |
role | string Enum: "user" "moderator" The role for the invited user |
Responses
Request samples
- Payload
{- "invitee": "string",
- "role": "user"
}
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Get invitees of the specified event
Returns a list of user profiles and their invite acceptance status
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
per_page | integer Default: 30 Results per page (max 100) |
page | integer Default: 1 Page number of the results to fetch. |
Responses
Response samples
- 200
- 404
[- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
]
Update invite to an event
Update the invite to an event for a specified user
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
user_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 Id of an user |
Request Body schema: application/json
role | string Enum: "user" "moderator" The role for the invited user |
Responses
Request samples
- Payload
{- "role": "user"
}
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Delete invite to an event
Delete/retract an invite to an event for a specified user
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
user_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 Id of an user |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Delete an email invite to an event
Delete/Withdraw an event invitation using the email address as the identifier.
This will also withdraw invites from registered users if the provided email address matches theirs.
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Request Body schema: application/json
email required | string <email> The email address of the invited participant |
Responses
Request samples
- Payload
{- "email": "user@example.com"
}
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Accept an event invite
Accept an event invite for the current user to the specified event
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Decline an event invite
Decline an event invite for the current user to the specified event
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Start a signaling session for an invition code
Returns a ticket to be used with the /signaling endpoint. When joining a room, the ticket must be provided as a Sec-WebSocket-Protocol
header field when starting the WebSocket connection. When the requested room has a password set, the requester has to provide the correct password through the requests body. When the room has no password set, the provided password will be ignored.
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
password required | string <= 128 characters The room password |
breakout_room | integer ID of the breakout room |
invite_code required | string <= 128 characters The invite_code |
resumption | string Token to resume previous session inside the same room |
Responses
Request samples
- Payload
{- "password": "string",
- "breakout_room": 0,
- "invite_code": "string",
- "resumption": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
Get all invites
Gets all invites the user has access to.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
query Parameters
per_page | integer Default: 30 Results per page (max 100) |
page | integer Default: 1 Page number of the results to fetch. |
Responses
Response samples
- 200
- 404
[- {
- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
]
Create a new invite
Create a new invite from the provided object. On success, the controller will create a new Invite and return the InviteCode object. Returns 404 Not Found
when the user has no access to the room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
expiration | string <date-time> Expiration date of this invite, or null if no expiration is set |
Responses
Request samples
- Payload
{- "expiration": "2019-08-24T14:15:22Z"
}
Response samples
- 200
- 404
{- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
Get an invite
Get the invite for the given room_id and invite_code.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
invite_code required | string The invite_code |
Responses
Response samples
- 200
- 404
[- {
- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
]
Update an invite code
Update an invite from the provided object. On success, the controller will return the updated InviteCode object.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
invite_code required | string The invite_code |
Request Body schema: application/json
non-emptyexpiration | string <date-time> Expiration date of this invite, or null if no expiration is set |
Responses
Request samples
- Payload
{- "expiration": "2019-08-24T14:15:22Z"
}
Response samples
- 200
- 404
{- "invite_code": "string",
- "created": "2019-08-24T14:15:22Z",
- "created_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "updated": "string",
- "updated_by": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}, - "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "active": true,
- "expiration": "2019-08-24T14:15:22Z"
}
Delete an invite code
Delete the respective invite. On success, the controller will return 200 OK.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
invite_code required | string The invite_code |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Verify an invite code
Verifies the invite and returns the room_url for this invite_code
Authorizations:
Request Body schema: application/json
invite_code required | string The invites invite_code |
Responses
Request samples
- Payload
{- "invite_code": "string"
}
Response samples
- 201
- 404
{- "room_id": "05451321-18e1-4bfa-aa22-dfd0080cc120",
- "password_required": true
}
Create an invite to an event
Invite a user to an event
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
suppress_email_notification | boolean Suppress notification emails. Note that not sending emails will lead to external calendars getting out of sync with the actual event. |
Request Body schema: application/json
invitee | string ID of the user to be invited |
role | string Enum: "user" "moderator" The role for the invited user |
Responses
Request samples
- Payload
{- "invitee": "string",
- "role": "user"
}
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Get invitees of the specified event
Returns a list of user profiles and their invite acceptance status
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
query Parameters
per_page | integer Default: 30 Results per page (max 100) |
page | integer Default: 1 Page number of the results to fetch. |
Responses
Response samples
- 200
- 404
[- {
- "profile": {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "role": "user"
}, - "status": "accepted"
}
]
Update invite to an event
Update the invite to an event for a specified user
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
user_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 Id of an user |
Request Body schema: application/json
role | string Enum: "user" "moderator" The role for the invited user |
Responses
Request samples
- Payload
{- "role": "user"
}
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Delete invite to an event
Delete/retract an invite to an event for a specified user
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
user_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 Id of an user |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Delete an email invite to an event
Delete/Withdraw an event invitation using the email address as the identifier.
This will also withdraw invites from registered users if the provided email address matches theirs.
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Request Body schema: application/json
email required | string <email> The email address of the invited participant |
Responses
Request samples
- Payload
{- "email": "user@example.com"
}
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Accept an event invite
Accept an event invite for the current user to the specified event
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Decline an event invite
Decline an event invite for the current user to the specified event
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Start a signaling session as a registered user
Returns a ticket to be used with the /signaling endpoint. When joining a room, the ticket must be provided as a Sec-WebSocket-Protocol
header field when starting the WebSocket connection. When the requested room has a password set, the requester has to provide the correct password through the requests body. When the room has no password set, the provided password will be ignored.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
breakout_room | integer ID of the breakout room |
resumption | string Token to resume previous session inside the same room |
Responses
Request samples
- Payload
{- "breakout_room": 0,
- "resumption": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
Start a signaling session for an invition code
Returns a ticket to be used with the /signaling endpoint. When joining a room, the ticket must be provided as a Sec-WebSocket-Protocol
header field when starting the WebSocket connection. When the requested room has a password set, the requester has to provide the correct password through the requests body. When the room has no password set, the provided password will be ignored.
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
password required | string <= 128 characters The room password |
breakout_room | integer ID of the breakout room |
invite_code required | string <= 128 characters The invite_code |
resumption | string Token to resume previous session inside the same room |
Responses
Request samples
- Payload
{- "password": "string",
- "breakout_room": 0,
- "invite_code": "string",
- "resumption": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
Room Signaling Websocket
The room signaling websocket. See asyncapi specs for details.
Authorizations:
header Parameters
required | string or string (SignalingProtocolHeader) Example: opentalk-signaling-json-v1.0, ticket#eyJpc3MiOiJodHRwczovL2V4YW1wbGUuYXV0aDAuY29tLy |
Connection required | string Value: "Upgrade" Example: Upgrade |
Upgrade required | string Value: "websocket" Example: websocket |
Responses
Starts a signaling session given a room id and pin
Takes call-in id and pin and returns a ticket for the /signaling
endpoint. Behaves similar to the /rooms/{room_id}/start
endpoint.
This endpoint is provided for call-in gateways to start a room connection for Call-In users. The user has to provide the credentials (id and pin) via DTMF (the number pad).
Authorizations:
Request Body schema: application/json
id required | string <= 10 characters Unique numeric string with 10 characters to identify the room |
pin required | string <= 10 characters Numeric string with 10 characters to secure room access |
Responses
Request samples
- Payload
{- "id": "string",
- "pin": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
Get all users
Returns a list of all users visible to the authenticated user, as PublicUserProfile.
Authorizations:
Responses
Response samples
- 200
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}
]
Patch the current users settings
Patch the current users settings with a PatchUserBody object. Returns the updated user profile
Authorizations:
Request Body schema: application/json
non-emptytitle | string <= 255 characters The users display name |
display_name | string <= 255 characters Display name of the user |
language | string <= 35 characters The users preferred language as specified in RFC 5646 |
dashboard_theme | string <= 128 characters The users dashboard UI theme name |
conference_theme | string <= 128 characters The users conference UI theme name |
Responses
Request samples
- Payload
{- "title": "string",
- "display_name": "string",
- "language": "string",
- "dashboard_theme": "string",
- "conference_theme": "string"
}
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "dashboard_theme": "string",
- "conference_theme": "string",
- "language": "string",
- "tariff_status": "default"
}
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string",
- "dashboard_theme": "string",
- "conference_theme": "string",
- "language": "string",
- "tariff_status": "default"
}
Get the current user's tariff information
Returns a description of the tariff of the current user.
Authorizations:
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "9ffa9185-7453-4fb2-aa6a-3105a6ae83a8",
- "quotas": {
- "property1": 4294967295,
- "property2": 4294967295
}, - "enabled_modules": [
- null
], - "disabled_features": [
- null
], - "modules": [
- null
]
}
Get user details
Get the user details of a specific user as PublicUserProfile object.
Authorizations:
path Parameters
id required | integer <int64> The identifier of the user |
Responses
Response samples
- 200
- 404
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}
Find users
Used to query users. Can be used in autocomplete fields.
Authorizations:
query Parameters
q | string The query string (currently matches name and email) |
Responses
Response samples
- 200
[- {
- "kind": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "email": "user@example.com",
- "title": "string",
- "firstname": "string",
- "lastname": "string",
- "display_name": "string",
- "avatar_url": "string"
}
]
Favorite an event
Add the event to the current user's favorite list
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Unfavorite an event
remove the event from the current user's favorite list
Authorizations:
path Parameters
event_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the event. |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
The login endpoint
Attempt to authenticate with a provided ID token. The ID token can be received from an OIDC Provider and contains information about the requesting user as well as an expiration timestamp. When a valid token with an unknown user is provided, a new user will be created.
Returns a list of the users permissions on success.
Request Body schema: application/json
id_token required | string |
Responses
Request samples
- Payload
{- "id_token": "string"
}
Response samples
- 200
- 400
{- "permissions": [
- "string"
]
}
Get the rooms SIP config
Returns the SIP config of this room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "sip_id": "string",
- "password": "string",
- "lobby": true
}
Create or modify the rooms SIP config
When the room has no sip config configured, a new one is created based on the provided request body and a 201 CREATED response is returned. When the room already has a sip config, the config will be modified and a 200 OK response is returned.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
non-emptypassword | string <= 10 characters Numeric string with 10 characters to secure room access. Is automatically generated when not set on creation. |
lobby | boolean Enable/Disable a lobby for users that join through SIP. Defaults to |
Responses
Request samples
- Payload
{- "password": "string",
- "lobby": true
}
Response samples
- 200
- 201
{- "room": "2fa2a266-7d97-4147-8f17-1e57105c70ea",
- "sip_id": "string",
- "password": "string",
- "lobby": true
}
Starts a signaling session given a room id and pin
Takes call-in id and pin and returns a ticket for the /signaling
endpoint. Behaves similar to the /rooms/{room_id}/start
endpoint.
This endpoint is provided for call-in gateways to start a room connection for Call-In users. The user has to provide the credentials (id and pin) via DTMF (the number pad).
Authorizations:
Request Body schema: application/json
id required | string <= 10 characters Unique numeric string with 10 characters to identify the room |
pin required | string <= 10 characters Numeric string with 10 characters to secure room access |
Responses
Request samples
- Payload
{- "id": "string",
- "pin": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
Get a room's tariff information
Returns a description of the tariff of the given room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "9ffa9185-7453-4fb2-aa6a-3105a6ae83a8",
- "quotas": {
- "property1": 4294967295,
- "property2": 4294967295
}, - "enabled_modules": [
- null
], - "disabled_features": [
- null
], - "modules": [
- null
]
}
Get the current user's tariff information
Returns a description of the tariff of the current user.
Authorizations:
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "9ffa9185-7453-4fb2-aa6a-3105a6ae83a8",
- "quotas": {
- "property1": 4294967295,
- "property2": 4294967295
}, - "enabled_modules": [
- null
], - "disabled_features": [
- null
], - "modules": [
- null
]
}
Get assets for a room
Gets all assets that are available in a room.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
query Parameters
per_page | integer Default: 30 Results per page (max 100) |
page | integer Default: 1 Page number of the results to fetch. |
Responses
Response samples
- 200
- 404
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "filename": "string",
- "namespace": "string",
- "created_at": "2019-08-24T14:15:22Z"
}
]
Get an asset
Get the asset for the given room_id
and asset_id
.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
asset_id required | string <uuid> The ID of the requested asset |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Delete an asset
Delete the respective asset.
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
asset_id required | string <uuid> The ID of the requested asset |
Responses
Response samples
- 404
{- "message": "string",
- "documentation_url": "string",
- "status": "string"
}
Get a TURN server and corresponding credentials
Get a Turn server and corresponding credentials, if none are configured return 500
Authorizations:
Responses
Response samples
- 200
[- {
- "username": "string",
- "password": "string",
- "ttl": "string",
- "uris": [
- "string"
]
}
]
Get a TURN server and corresponding credentials
Get a Turn server and corresponding credentials, if none are configured return 500
Authorizations:
Responses
Response samples
- 200
[- {
- "username": "string",
- "password": "string",
- "ttl": "string",
- "uris": [
- "string"
]
}
]
Starts a signaling session given a room id and pin
Takes call-in id and pin and returns a ticket for the /signaling
endpoint. Behaves similar to the /rooms/{room_id}/start
endpoint.
This endpoint is provided for call-in gateways to start a room connection for Call-In users. The user has to provide the credentials (id and pin) via DTMF (the number pad).
Authorizations:
Request Body schema: application/json
id required | string <= 10 characters Unique numeric string with 10 characters to identify the room |
pin required | string <= 10 characters Numeric string with 10 characters to secure room access |
Responses
Request samples
- Payload
{- "id": "string",
- "pin": "string"
}
Response samples
- 200
- 401
{- "ticket": "string",
- "resumption": "string"
}
List the streaming targets for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
[- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
]
Create a streaming target for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
name required | string The name of the streaming target |
kind required | string Value: "custom" The kind of the streaming target |
streaming_endpoint required | string <uri> The endpoint url of the streaming target |
streaming_key required | string The streaming key |
public_url required | string <uri> The url from which the stream can be accessed |
Responses
Request samples
- Payload
{- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Response samples
- 201
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Get the streaming target for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
streaming_target_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Responses
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Update a streaming target for a room
Authorizations:
path Parameters
room_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
streaming_target_id required | string Example: 87f81f6f-35c5-4481-81ff-ec10c7e9d8b1 The id of the room |
Request Body schema: application/json
name | string The name of the streaming target |
kind | string Value: "custom" The kind of the streaming target |
streaming_endpoint | string <uri> The endpoint url of the streaming target |
streaming_key | string The streaming key |
public_url | string <uri> The url from which the stream can be accessed |
Responses
Request samples
- Payload
{- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}
Response samples
- 200
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "kind": "custom",
- "streaming_key": "string",
}