Introduction
This documentation aims to provide all the information you need to work with our API.
Pagination
Authenticating requests
To authenticate requests, include an Authorization
header with the value "Bearer {DEVELOPER_KEY}"
.
All authenticated endpoints are marked with a requires authentication
badge in the documentation below.
Iframe integration
Room url has the following structure
- Public rooms - https://{team.domain}.digitalsamba.com/{room.friendly_url}
- Private rooms - https://{team.domain}.digitalsamba.com/{room.friendly_url}?token={jwtToken}
To create {jwtToken} you need to generate a JWT token with HS256 algorithm, signed with {team.developer_key} as secret and a payload described below
Payload structure
td
string
The UUID of the team.
rd
string
The UUID of the room.
ud
string optional
External user identifier.
u
string optional
User name. If not provided the user will see a screen to input his name.
role
string optional
Role id or name. If not provided the default role will be used.
avatar
string optional
The url of the user's avatar image. Will be used as image for user's tile when his video is disabled.
iat
timestamp optional
Token issued at timestamp
exp
timestamp optional
Token expiration timestamp
nbf
timestamp optional
Token not valid before timestamp
Default room settings
Get default room settings.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "fc16892a-556b-4c2d-a522-82e6b3e884cc",
"owner_id": "57670ebd-0de2-4f92-8bce-661bec142dde",
"domain": "local",
"is_locked": false,
"topbar_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "bottom",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"screenshare_enabled": true,
"participants_list_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": false,
"private_group_chat_name": "Moderators",
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"end_session_enabled": true,
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"logo_enabled": false,
"custom_logo": "https://storage.dev.monza.wbcnf.net/images/fYwFJWsfpfMK2PECyW5JmXapPobecasL2bh3RndH.png",
"application_logo": "https://storage.dev.monza.wbcnf.net/images/fMwFJWsfpfDc2PECyW5JmXapPobecasL2bh3RndH.png",
"favicon": "https://storage.dev.monza.wbcnf.net/images/wgjrUhRrnkaLAEgrrUMvmhMRKzYUvhvc5pbCjdK1.png",
"recordings_enabled": true,
"recording_logo_enabled": true,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"participant_names_in_recordings_enabled": true,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"files_panel_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].",
"checkbox_message": "Don’t show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"roles": [
{
"id": "76bb6199-2900-4b8d-b1bf-351dec4a8db4",
"name": "moderator",
"display_name": "Moderators",
"allow_private_group_chat": false
},
{
"id": "768db499-8db4-351d-4b8d-351dec4a8db4",
"name": "speaker",
"display_name": "Speakers",
"allow_private_group_chat": false
}
],
"default_role": {
"id": "76bb6199-2900-4b8d-b1bf-351dec4a8db4",
"name": "moderator",
"display_name": "Moderators"
},
"custom_cname": null,
"captions_enabled": false,
"captions_in_recordings_enabled": false,
"captions_language": "en",
"max_participants": 100,
"max_sessions": 5,
"session_length": 90,
"html_title": "My Title",
"subscription_start": "2024-04-17 00:00:00",
"subscription_end": "2024-05-16 23:59:59"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update default room settings.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'domain' => 'earum',
'default_role' => 'moderator',
'roles' => [
'moderator',
],
'is_locked' => false,
'session_length' => 90,
'topbar_enabled' => true,
'pip_enabled' => true,
'toolbar_enabled' => true,
'toolbar_position' => 'bottom',
'toolbar_color' => '#000000',
'primary_color' => '#3771E0',
'background_color' => '#000000',
'palette_mode' => 'light',
'language' => 'en',
'languages' => [
'en',
'es-ES',
],
'language_selection_enabled' => true,
'audio_on_join_enabled' => true,
'video_on_join_enabled' => true,
'hd_video_on_join_enabled' => false,
'participants_list_enabled' => true,
'pin_enabled' => true,
'full_screen_enabled' => true,
'minimize_own_tile_enabled' => true,
'minimize_own_tile_on_join_enabled' => false,
'end_session_enabled' => true,
'chat_enabled' => true,
'private_chat_enabled' => true,
'private_group_chat_enabled' => false,
'private_group_chat_name' => 'Presenters',
'private_group_chat_roles' => [
'moderator',
],
'e2ee_enabled' => false,
'layout_mode_switch_enabled' => true,
'simple_notifications_enabled' => true,
'join_screen_enabled' => true,
'screenshare_enabled' => true,
'recordings_enabled' => true,
'recording_autostart_enabled' => false,
'logo_enabled' => true,
'custom_logo' => 'et',
'application_logo' => 'cum',
'favicon' => 'consequuntur',
'recording_logo_enabled' => true,
'virtual_backgrounds_enabled' => true,
'raise_hand_enabled' => true,
'participant_names_in_recordings_enabled' => true,
'hide_tiles_in_recordings_enabled' => false,
'invite_participants_enabled' => true,
'whiteboard_enabled' => true,
'qa_enabled' => true,
'upvote_qa_enabled' => true,
'files_panel_enabled' => true,
'polls_enabled' => true,
'breakout_rooms_enabled' => false,
'consent_message_enabled' => true,
'recording_consent_message_enabled' => true,
'consent_message_type' => 'generic',
'consent_message' => 'By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].',
'checkbox_message' => 'Donβt show this again.',
'recordings_layout_mode' => 'tiled',
'layout_mode_on_join' => 'tiled',
'html_title' => 'My room',
'transcription_enabled' => false,
'transcription_auto_start_enabled' => true,
'captions_enabled' => false,
'captions_language' => 'en',
'captions_in_recordings_enabled' => false,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"domain": "earum",
"default_role": "moderator",
"roles": [
"moderator"
],
"is_locked": false,
"session_length": 90,
"topbar_enabled": true,
"pip_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "bottom",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"languages": [
"en",
"es-ES"
],
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"hd_video_on_join_enabled": false,
"participants_list_enabled": true,
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"end_session_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": false,
"private_group_chat_name": "Presenters",
"private_group_chat_roles": [
"moderator"
],
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"screenshare_enabled": true,
"recordings_enabled": true,
"recording_autostart_enabled": false,
"logo_enabled": true,
"custom_logo": "et",
"application_logo": "cum",
"favicon": "consequuntur",
"recording_logo_enabled": true,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"participant_names_in_recordings_enabled": true,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"upvote_qa_enabled": true,
"files_panel_enabled": true,
"polls_enabled": true,
"breakout_rooms_enabled": false,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https:\/\/www.digitalsamba.com\/redirect\/privacy-policy]Privacy Policy[\/link].",
"checkbox_message": "Donβt show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"html_title": "My room",
"transcription_enabled": false,
"transcription_auto_start_enabled": true,
"captions_enabled": false,
"captions_language": "en",
"captions_in_recordings_enabled": false
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"domain\": \"earum\",
\"default_role\": \"moderator\",
\"roles\": [
\"moderator\"
],
\"is_locked\": false,
\"session_length\": 90,
\"topbar_enabled\": true,
\"pip_enabled\": true,
\"toolbar_enabled\": true,
\"toolbar_position\": \"bottom\",
\"toolbar_color\": \"#000000\",
\"primary_color\": \"#3771E0\",
\"background_color\": \"#000000\",
\"palette_mode\": \"light\",
\"language\": \"en\",
\"languages\": [
\"en\",
\"es-ES\"
],
\"language_selection_enabled\": true,
\"audio_on_join_enabled\": true,
\"video_on_join_enabled\": true,
\"hd_video_on_join_enabled\": false,
\"participants_list_enabled\": true,
\"pin_enabled\": true,
\"full_screen_enabled\": true,
\"minimize_own_tile_enabled\": true,
\"minimize_own_tile_on_join_enabled\": false,
\"end_session_enabled\": true,
\"chat_enabled\": true,
\"private_chat_enabled\": true,
\"private_group_chat_enabled\": false,
\"private_group_chat_name\": \"Presenters\",
\"private_group_chat_roles\": [
\"moderator\"
],
\"e2ee_enabled\": false,
\"layout_mode_switch_enabled\": true,
\"simple_notifications_enabled\": true,
\"join_screen_enabled\": true,
\"screenshare_enabled\": true,
\"recordings_enabled\": true,
\"recording_autostart_enabled\": false,
\"logo_enabled\": true,
\"custom_logo\": \"et\",
\"application_logo\": \"cum\",
\"favicon\": \"consequuntur\",
\"recording_logo_enabled\": true,
\"virtual_backgrounds_enabled\": true,
\"raise_hand_enabled\": true,
\"participant_names_in_recordings_enabled\": true,
\"hide_tiles_in_recordings_enabled\": false,
\"invite_participants_enabled\": true,
\"whiteboard_enabled\": true,
\"qa_enabled\": true,
\"upvote_qa_enabled\": true,
\"files_panel_enabled\": true,
\"polls_enabled\": true,
\"breakout_rooms_enabled\": false,
\"consent_message_enabled\": true,
\"recording_consent_message_enabled\": true,
\"consent_message_type\": \"generic\",
\"consent_message\": \"By joining, you consent to the processing of your personal data in accordance with our [link https:\\/\\/www.digitalsamba.com\\/redirect\\/privacy-policy]Privacy Policy[\\/link].\",
\"checkbox_message\": \"Donβt show this again.\",
\"recordings_layout_mode\": \"tiled\",
\"layout_mode_on_join\": \"tiled\",
\"html_title\": \"My room\",
\"transcription_enabled\": false,
\"transcription_auto_start_enabled\": true,
\"captions_enabled\": false,
\"captions_language\": \"en\",
\"captions_in_recordings_enabled\": false
}"
Example response (200):
{
"id": "fc16892a-556b-4c2d-a522-82e6b3e884cc",
"owner_id": "57670ebd-0de2-4f92-8bce-661bec142dde",
"domain": "local",
"is_locked": false,
"topbar_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "bottom",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"screenshare_enabled": true,
"participants_list_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": false,
"private_group_chat_name": "Moderators",
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"end_session_enabled": true,
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"logo_enabled": false,
"custom_logo": "https://storage.dev.monza.wbcnf.net/images/fYwFJWsfpfMK2PECyW5JmXapPobecasL2bh3RndH.png",
"application_logo": "https://storage.dev.monza.wbcnf.net/images/fMwFJWsfpfDc2PECyW5JmXapPobecasL2bh3RndH.png",
"favicon": "https://storage.dev.monza.wbcnf.net/images/wgjrUhRrnkaLAEgrrUMvmhMRKzYUvhvc5pbCjdK1.png",
"recordings_enabled": true,
"recording_logo_enabled": true,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"participant_names_in_recordings_enabled": true,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"files_panel_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].",
"checkbox_message": "Don’t show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"roles": [
{
"id": "76bb6199-2900-4b8d-b1bf-351dec4a8db4",
"name": "moderator",
"display_name": "Moderators",
"allow_private_group_chat": false
},
{
"id": "768db499-8db4-351d-4b8d-351dec4a8db4",
"name": "speaker",
"display_name": "Speakers",
"allow_private_group_chat": false
}
],
"default_role": {
"id": "76bb6199-2900-4b8d-b1bf-351dec4a8db4",
"name": "moderator",
"display_name": "Moderators"
},
"custom_cname": null,
"captions_enabled": false,
"captions_in_recordings_enabled": false,
"captions_language": "en",
"max_participants": 100,
"max_sessions": 5,
"session_length": 90,
"html_title": "My Title",
"subscription_start": "2024-04-17 00:00:00",
"subscription_end": "2024-05-16 23:59:59"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Rooms
Get chat messages.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'session_id' => '16719c1b-cc82-4dfe-9f6f-40d9093fa695',
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat"
);
const params = {
"session_id": "16719c1b-cc82-4dfe-9f6f-40d9093fa695",
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat?session_id=16719c1b-cc82-4dfe-9f6f-40d9093fa695&limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 3,
"data": [
{
"id": "3d8a123d-1a65-4b8b-a1d7-cde0578bf928",
"message": "Morning. How are you?",
"participant_id": "5e54e7e0-2639-4307-aafa-9eb957e20c2d",
"external_participant_id": "#123",
"participant_name": "John Smith",
"created_at": "2024-02-13T16:45:05.000000Z"
},
{
"id": "98255fe2-8e3f-4195-9771-8144c484d191",
"message": "I am fine, thanks! What about you?",
"participant_id": "685dacb3-5943-4661-a37d-d218586b8b6d",
"external_participant_id": "#456",
"participant_name": "Jane Doe",
"created_at": "2024-02-13T16:45:10.000000Z"
},
{
"id": "3d8a123d-1a65-4b8b-a1d7-cde0578bf928",
"breakout_id": "79e54583-3aad-4023-a2fa-968125e6c816",
"message": "In breakout #2",
"participant_id": "5e54e7e0-2639-4307-aafa-9eb957e20c2d",
"external_participant_id": "ABCDEF123",
"participant_name": "John Smith",
"created_at": "2024-02-13T16:45:20.000000Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Export chat messages.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat/export';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'session_id' => '16719c1b-cc82-4dfe-9f6f-40d9093fa695',
'format' => 'txt',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat/export"
);
const params = {
"session_id": "16719c1b-cc82-4dfe-9f6f-40d9093fa695",
"format": "txt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat/export?session_id=16719c1b-cc82-4dfe-9f6f-40d9093fa695&format=txt" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
Text file - Chat messages
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get questions and answers.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'session_id' => '16719c1b-cc82-4dfe-9f6f-40d9093fa695',
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions"
);
const params = {
"session_id": "16719c1b-cc82-4dfe-9f6f-40d9093fa695",
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions?session_id=16719c1b-cc82-4dfe-9f6f-40d9093fa695&limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 1,
"data": [
{
"id": "3d8a123d-1a65-4b8b-a1d7-cde0578bf928",
"question": "How tall is the Statue of Liberty?",
"participant_id": "5e54e7e0-2639-4307-aafa-9eb957e20c2d",
"external_participant_id": "#123",
"participant_name": "John Smith",
"created_at": "2024-02-13T16:45:05.000000Z",
"answers": [
{
"id": "856e86e5-5d97-4a48-978a-6b8afe65f749",
"answer": "It is 46 metres high.",
"participant_id": "685dacb3-5943-4661-a37d-d218586b8b6d",
"external_participant_id": "#456",
"participant_name": "John Doe",
"created_at": "2024-02-13T16:45:30.000000Z"
},
{
"id": "29817328-b632-4741-8ba2-09d393bd2fb0",
"answer": "Yep, about 46 metres high.",
"participant_id": "d0f509a4-7aee-496a-a331-d44c0df6bdd7",
"external_participant_id": "#789",
"participant_name": "Jane Doe",
"created_at": "2024-02-13T16:45:35.000000Z"
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Export questions and answers.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions/export';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'session_id' => '16719c1b-cc82-4dfe-9f6f-40d9093fa695',
'format' => 'txt',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions/export"
);
const params = {
"session_id": "16719c1b-cc82-4dfe-9f6f-40d9093fa695",
"format": "txt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions/export?session_id=16719c1b-cc82-4dfe-9f6f-40d9093fa695&format=txt" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
Text file - Questions and answers
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get room transcripts.
requires authentication
Closed Captioning.
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'session_id' => '16719c1b-cc82-4dfe-9f6f-40d9093fa695',
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts"
);
const params = {
"session_id": "16719c1b-cc82-4dfe-9f6f-40d9093fa695",
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts?session_id=16719c1b-cc82-4dfe-9f6f-40d9093fa695&limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 3,
"data": [
{
"participant_id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"participant_name": "John Smith",
"transcript": "Morning. How are you?",
"start_time": "2024-04-10T12:18:27Z",
"end_time": "2024-04-10T12:33:27Z"
},
{
"participant_id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"participant_name": "Jane Doe",
"transcript": "I am fine, thanks! What about you?",
"start_time": "2024-04-10T12:10:27Z",
"end_time": "2024-04-10T12:31:27Z"
},
{
"participant_id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"participant_name": "John Doe",
"transcript": "Hi all!",
"start_time": "2024-04-10T12:06:27Z",
"end_time": "2024-04-10T12:33:27Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Export room transcripts.
requires authentication
Closed Captioning.
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts/export';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'format' => 'txt',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts/export"
);
const params = {
"format": "txt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts/export?format=txt" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
Text file - Transcripts
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete chats by room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete Q&A by room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete summaries by room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summaries';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summaries"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summaries" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete transcripts by room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete polls by room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete recordings by room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all team rooms.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "6e3b661a-d2f6-3a40-83ef-449f4b3784e5",
"description": "Consequatur.",
"topic": "Consequatur.",
"friendly_url": "r6q1qe3IeRIcTGvMIjsjX_924l3L3cFS",
"privacy": "public",
"max_participants": 100,
"max_broadcasters": 100,
"topbar_enabled": true,
"pip_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "bottom",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"languages": [
"en",
"es-ES",
"de-DE",
"df",
"ro-RO",
"zh-CN",
"zh-TW"
],
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"screenshare_enabled": true,
"participants_list_enabled": true,
"logo_enabled": true,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"broadcaster_tile_visibility": "all",
"end_session_enabled": true,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"participant_names_in_recordings_enabled": true,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"upvote_qa_enabled": true,
"files_panel_enabled": true,
"polls_enabled": true,
"content_library_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].",
"checkbox_message": "Don’t show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"room_url": "https://258a5643fe5b0b2ecf37978a0cdf75ed.digitalsamba.com/r6q1qe3IeRIcTGvMIjsjX_924l3L3cFS",
"external_id": "EXTID666167043",
"transcription_auto_start_enabled": true,
"captions_language": "en",
"created_at": "2024-11-01T17:46:43Z",
"updated_at": "2024-11-01T17:46:43Z"
},
{
"id": "483a5955-8af6-3687-a916-76f698561803",
"description": "Esse dolorem omnis.",
"topic": "Esse dolorem omnis.",
"friendly_url": "Pjrl3fBkxQaQryfmAx7valKpV9RNvfbn",
"privacy": "public",
"max_participants": 100,
"max_broadcasters": 100,
"topbar_enabled": true,
"pip_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "bottom",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"languages": [
"en",
"es-ES",
"de-DE",
"df",
"ro-RO",
"zh-CN",
"zh-TW"
],
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"screenshare_enabled": true,
"participants_list_enabled": true,
"logo_enabled": true,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"broadcaster_tile_visibility": "all",
"end_session_enabled": true,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"participant_names_in_recordings_enabled": true,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"upvote_qa_enabled": true,
"files_panel_enabled": true,
"polls_enabled": true,
"content_library_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].",
"checkbox_message": "Don’t show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"room_url": "https://62ba5824a560ad4ae75d4f0755ddbd29.digitalsamba.com/Pjrl3fBkxQaQryfmAx7valKpV9RNvfbn",
"external_id": "EXTID1662546338",
"transcription_auto_start_enabled": true,
"captions_language": "en",
"created_at": "2024-11-01T17:46:43Z",
"updated_at": "2024-11-01T17:46:43Z"
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "13a5aa53-f4da-470b-bfd0-63dd9e5dd81d",
"description": "My public room description.",
"friendly_url": "MyPublicRoom",
"privacy": "public",
"max_participants": 100,
"max_broadcasters": 10,
"is_locked": false,
"topbar_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "left",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"screenshare_enabled": true,
"participants_list_enabled": true,
"recordings_enabled": true,
"logo_enabled": true,
"custom_logo": null,
"recording_logo_enabled": false,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": true,
"private_group_chat_name": "test",
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"end_session_enabled": true,
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"participant_names_in_recordings_enabled": false,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"files_panel_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].",
"checkbox_message": "Don’t show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"room_url": "https://myteam.digitalsamba.com/MyPublicRoom",
"external_id": "EXTID123",
"default_role": {
"id": "47697570-a2e8-4b0c-8f2d-1af1ea2bae67",
"name": "moderator",
"display_name": "Moderators"
},
"roles": [
{
"id": "47697570-a2e8-4b0c-8f2d-1af1ea2bae67",
"name": "moderator",
"display_name": "Moderators",
"allow_private_group_chat": true
},
{
"id": "4fae2627-3d52-4b01-905f-5022b285ee8c",
"name": "attendee",
"display_name": "Attendees",
"allow_private_group_chat": false
}
],
"files": [
{
"id": "ae137edf-741e-4d0d-acd9-e5ad2c1dd74f",
"name": "image.png",
"url": "https://www.myimages.com/image.png",
"thumbnail_url": "https://www.myimages.com/image-thumbnail.png"
}
],
"webhooks": [
"3d5260b1-741e-4d0d-4a00-e5ad2c1dd74f",
"77ea623b-741e-4d0d-acd9-32d98793e168"
],
"breakout_rooms_enabled": true,
"breakouts": [
{
"id": "ae137edf-741e-4d0d-acd9-e5ad2c1dd74f",
"name": "Breakout Room 1"
},
{
"id": "77ea623b-f677-4a00-8307-ec19aa022d22",
"name": "Breakout Room 2"
},
{
"id": "6cc45935-f00c-4683-9f14-32d98793e168",
"name": "Breakout Room 3"
}
],
"html_title": "MyPublicRoom custom HTML title",
"transcription_enabled": false,
"captions_enabled": true,
"captions_in_recordings_enabled": false,
"captions_language": "en",
"created_at": "2022-05-13T19:09:04Z",
"updated_at": "2024-03-28T00:43:42Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'description' => 'My public room description.',
'friendly_url' => 'MyPublicRoom',
'privacy' => 'public',
'external_id' => 'myExtID123',
'default_role' => 'moderator',
'roles' => [
'moderator',
],
'webhooks' => [
'c83c7b87-b9b8-444d-a749-7076fe58fdb8',
],
'is_locked' => false,
'topbar_enabled' => true,
'pip_enabled' => true,
'toolbar_enabled' => true,
'toolbar_position' => 'bottom',
'toolbar_color' => '#000000',
'primary_color' => '#3771E0',
'background_color' => '#000000',
'palette_mode' => 'light',
'language' => 'en',
'languages' => [
'en',
'es-ES',
],
'language_selection_enabled' => true,
'audio_on_join_enabled' => true,
'video_on_join_enabled' => true,
'hd_video_on_join_enabled' => false,
'participants_list_enabled' => true,
'pin_enabled' => true,
'full_screen_enabled' => true,
'minimize_own_tile_enabled' => true,
'minimize_own_tile_on_join_enabled' => false,
'broadcaster_tile_visibility' => 'all',
'end_session_enabled' => true,
'breakout_rooms_enabled' => false,
'breakouts' => null,
'chat_enabled' => true,
'private_chat_enabled' => true,
'private_group_chat_enabled' => false,
'private_group_chat_name' => 'Presenters',
'private_group_chat_roles' => [
'moderator',
],
'e2ee_enabled' => false,
'layout_mode_switch_enabled' => true,
'simple_notifications_enabled' => true,
'join_screen_enabled' => true,
'screenshare_enabled' => true,
'recordings_enabled' => true,
'recording_autostart_enabled' => false,
'logo_enabled' => true,
'custom_logo' => 'veritatis',
'recording_logo_enabled' => true,
'virtual_backgrounds_enabled' => true,
'raise_hand_enabled' => true,
'participant_names_in_recordings_enabled' => true,
'hide_tiles_in_recordings_enabled' => false,
'invite_participants_enabled' => true,
'whiteboard_enabled' => true,
'qa_enabled' => true,
'upvote_qa_enabled' => true,
'files_panel_enabled' => true,
'polls_enabled' => true,
'consent_message_enabled' => true,
'recording_consent_message_enabled' => true,
'consent_message_type' => 'generic',
'consent_message' => 'By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].',
'checkbox_message' => 'Donβt show this again.',
'recordings_layout_mode' => 'tiled',
'layout_mode_on_join' => 'tiled',
'max_participants' => 100,
'max_broadcasters' => 100,
'session_length' => 90,
'html_title' => 'My room',
'transcription_enabled' => false,
'transcription_auto_start_enabled' => true,
'captions_enabled' => false,
'captions_language' => 'en',
'captions_in_recordings_enabled' => false,
'expires_at' => '2024-09-05 12:30:00',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"description": "My public room description.",
"friendly_url": "MyPublicRoom",
"privacy": "public",
"external_id": "myExtID123",
"default_role": "moderator",
"roles": [
"moderator"
],
"webhooks": [
"c83c7b87-b9b8-444d-a749-7076fe58fdb8"
],
"is_locked": false,
"topbar_enabled": true,
"pip_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "bottom",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"languages": [
"en",
"es-ES"
],
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"hd_video_on_join_enabled": false,
"participants_list_enabled": true,
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"broadcaster_tile_visibility": "all",
"end_session_enabled": true,
"breakout_rooms_enabled": false,
"breakouts": null,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": false,
"private_group_chat_name": "Presenters",
"private_group_chat_roles": [
"moderator"
],
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"screenshare_enabled": true,
"recordings_enabled": true,
"recording_autostart_enabled": false,
"logo_enabled": true,
"custom_logo": "veritatis",
"recording_logo_enabled": true,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"participant_names_in_recordings_enabled": true,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"upvote_qa_enabled": true,
"files_panel_enabled": true,
"polls_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https:\/\/www.digitalsamba.com\/redirect\/privacy-policy]Privacy Policy[\/link].",
"checkbox_message": "Donβt show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"max_participants": 100,
"max_broadcasters": 100,
"session_length": 90,
"html_title": "My room",
"transcription_enabled": false,
"transcription_auto_start_enabled": true,
"captions_enabled": false,
"captions_language": "en",
"captions_in_recordings_enabled": false,
"expires_at": "2024-09-05 12:30:00"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/rooms" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"description\": \"My public room description.\",
\"friendly_url\": \"MyPublicRoom\",
\"privacy\": \"public\",
\"external_id\": \"myExtID123\",
\"default_role\": \"moderator\",
\"roles\": [
\"moderator\"
],
\"webhooks\": [
\"c83c7b87-b9b8-444d-a749-7076fe58fdb8\"
],
\"is_locked\": false,
\"topbar_enabled\": true,
\"pip_enabled\": true,
\"toolbar_enabled\": true,
\"toolbar_position\": \"bottom\",
\"toolbar_color\": \"#000000\",
\"primary_color\": \"#3771E0\",
\"background_color\": \"#000000\",
\"palette_mode\": \"light\",
\"language\": \"en\",
\"languages\": [
\"en\",
\"es-ES\"
],
\"language_selection_enabled\": true,
\"audio_on_join_enabled\": true,
\"video_on_join_enabled\": true,
\"hd_video_on_join_enabled\": false,
\"participants_list_enabled\": true,
\"pin_enabled\": true,
\"full_screen_enabled\": true,
\"minimize_own_tile_enabled\": true,
\"minimize_own_tile_on_join_enabled\": false,
\"broadcaster_tile_visibility\": \"all\",
\"end_session_enabled\": true,
\"breakout_rooms_enabled\": false,
\"breakouts\": null,
\"chat_enabled\": true,
\"private_chat_enabled\": true,
\"private_group_chat_enabled\": false,
\"private_group_chat_name\": \"Presenters\",
\"private_group_chat_roles\": [
\"moderator\"
],
\"e2ee_enabled\": false,
\"layout_mode_switch_enabled\": true,
\"simple_notifications_enabled\": true,
\"join_screen_enabled\": true,
\"screenshare_enabled\": true,
\"recordings_enabled\": true,
\"recording_autostart_enabled\": false,
\"logo_enabled\": true,
\"custom_logo\": \"veritatis\",
\"recording_logo_enabled\": true,
\"virtual_backgrounds_enabled\": true,
\"raise_hand_enabled\": true,
\"participant_names_in_recordings_enabled\": true,
\"hide_tiles_in_recordings_enabled\": false,
\"invite_participants_enabled\": true,
\"whiteboard_enabled\": true,
\"qa_enabled\": true,
\"upvote_qa_enabled\": true,
\"files_panel_enabled\": true,
\"polls_enabled\": true,
\"consent_message_enabled\": true,
\"recording_consent_message_enabled\": true,
\"consent_message_type\": \"generic\",
\"consent_message\": \"By joining, you consent to the processing of your personal data in accordance with our [link https:\\/\\/www.digitalsamba.com\\/redirect\\/privacy-policy]Privacy Policy[\\/link].\",
\"checkbox_message\": \"Donβt show this again.\",
\"recordings_layout_mode\": \"tiled\",
\"layout_mode_on_join\": \"tiled\",
\"max_participants\": 100,
\"max_broadcasters\": 100,
\"session_length\": 90,
\"html_title\": \"My room\",
\"transcription_enabled\": false,
\"transcription_auto_start_enabled\": true,
\"captions_enabled\": false,
\"captions_language\": \"en\",
\"captions_in_recordings_enabled\": false,
\"expires_at\": \"2024-09-05 12:30:00\"
}"
Example response (200):
{
"id": "13a5aa53-f4da-470b-bfd0-63dd9e5dd81d",
"description": "My public room description.",
"friendly_url": "MyPublicRoom",
"privacy": "public",
"max_participants": 100,
"max_broadcasters": 10,
"is_locked": false,
"topbar_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "left",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"screenshare_enabled": true,
"participants_list_enabled": true,
"recordings_enabled": true,
"logo_enabled": true,
"custom_logo": null,
"recording_logo_enabled": false,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": true,
"private_group_chat_name": "test",
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"end_session_enabled": true,
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"participant_names_in_recordings_enabled": false,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"files_panel_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].",
"checkbox_message": "Don’t show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"room_url": "https://myteam.digitalsamba.com/MyPublicRoom",
"external_id": "EXTID123",
"default_role": {
"id": "47697570-a2e8-4b0c-8f2d-1af1ea2bae67",
"name": "moderator",
"display_name": "Moderators"
},
"roles": [
{
"id": "47697570-a2e8-4b0c-8f2d-1af1ea2bae67",
"name": "moderator",
"display_name": "Moderators",
"allow_private_group_chat": true
},
{
"id": "4fae2627-3d52-4b01-905f-5022b285ee8c",
"name": "attendee",
"display_name": "Attendees",
"allow_private_group_chat": false
}
],
"files": [
{
"id": "ae137edf-741e-4d0d-acd9-e5ad2c1dd74f",
"name": "image.png",
"url": "https://www.myimages.com/image.png",
"thumbnail_url": "https://www.myimages.com/image-thumbnail.png"
}
],
"webhooks": [
"3d5260b1-741e-4d0d-4a00-e5ad2c1dd74f",
"77ea623b-741e-4d0d-acd9-32d98793e168"
],
"breakout_rooms_enabled": true,
"breakouts": [
{
"id": "ae137edf-741e-4d0d-acd9-e5ad2c1dd74f",
"name": "Breakout Room 1"
},
{
"id": "77ea623b-f677-4a00-8307-ec19aa022d22",
"name": "Breakout Room 2"
},
{
"id": "6cc45935-f00c-4683-9f14-32d98793e168",
"name": "Breakout Room 3"
}
],
"html_title": "MyPublicRoom custom HTML title",
"transcription_enabled": false,
"captions_enabled": true,
"captions_in_recordings_enabled": false,
"captions_language": "en",
"created_at": "2022-05-13T19:09:04Z",
"updated_at": "2024-03-28T00:43:42Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'description' => 'My public room description.',
'friendly_url' => 'MyPublicRoom',
'privacy' => 'public',
'external_id' => 'myExtID123',
'default_role' => 'moderator',
'roles' => [
'moderator',
],
'webhooks' => [
'c83c7b87-b9b8-444d-a749-7076fe58fdb8',
],
'is_locked' => false,
'topbar_enabled' => true,
'pip_enabled' => true,
'toolbar_enabled' => true,
'toolbar_position' => 'bottom',
'toolbar_color' => '#000000',
'primary_color' => '#3771E0',
'background_color' => '#000000',
'palette_mode' => 'light',
'language' => 'en',
'language_selection_enabled' => true,
'audio_on_join_enabled' => true,
'video_on_join_enabled' => true,
'hd_video_on_join_enabled' => false,
'participants_list_enabled' => true,
'pin_enabled' => true,
'full_screen_enabled' => true,
'minimize_own_tile_enabled' => true,
'minimize_own_tile_on_join_enabled' => false,
'broadcaster_tile_visibility' => 'all',
'end_session_enabled' => true,
'breakout_rooms_enabled' => false,
'breakouts' => null,
'chat_enabled' => true,
'private_chat_enabled' => true,
'private_group_chat_enabled' => false,
'private_group_chat_name' => 'Presenters',
'private_group_chat_roles' => [
'moderator',
],
'e2ee_enabled' => false,
'layout_mode_switch_enabled' => true,
'simple_notifications_enabled' => true,
'join_screen_enabled' => true,
'screenshare_enabled' => true,
'recordings_enabled' => true,
'recording_autostart_enabled' => false,
'logo_enabled' => true,
'custom_logo' => 'laudantium',
'recording_logo_enabled' => true,
'virtual_backgrounds_enabled' => true,
'raise_hand_enabled' => true,
'participant_names_in_recordings_enabled' => true,
'hide_tiles_in_recordings_enabled' => false,
'invite_participants_enabled' => true,
'whiteboard_enabled' => true,
'qa_enabled' => true,
'upvote_qa_enabled' => true,
'files_panel_enabled' => true,
'polls_enabled' => true,
'consent_message_enabled' => true,
'recording_consent_message_enabled' => true,
'consent_message_type' => 'generic',
'consent_message' => 'By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].',
'checkbox_message' => 'Donβt show this again.',
'recordings_layout_mode' => 'tiled',
'layout_mode_on_join' => 'tiled',
'max_participants' => 100,
'max_broadcasters' => 100,
'session_length' => 90,
'html_title' => 'My room',
'transcription_enabled' => false,
'transcription_auto_start_enabled' => true,
'captions_enabled' => false,
'captions_language' => 'en',
'captions_in_recordings_enabled' => false,
'expires_at' => '2024-09-05 12:30:00',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"description": "My public room description.",
"friendly_url": "MyPublicRoom",
"privacy": "public",
"external_id": "myExtID123",
"default_role": "moderator",
"roles": [
"moderator"
],
"webhooks": [
"c83c7b87-b9b8-444d-a749-7076fe58fdb8"
],
"is_locked": false,
"topbar_enabled": true,
"pip_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "bottom",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"hd_video_on_join_enabled": false,
"participants_list_enabled": true,
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"broadcaster_tile_visibility": "all",
"end_session_enabled": true,
"breakout_rooms_enabled": false,
"breakouts": null,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": false,
"private_group_chat_name": "Presenters",
"private_group_chat_roles": [
"moderator"
],
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"screenshare_enabled": true,
"recordings_enabled": true,
"recording_autostart_enabled": false,
"logo_enabled": true,
"custom_logo": "laudantium",
"recording_logo_enabled": true,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"participant_names_in_recordings_enabled": true,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"upvote_qa_enabled": true,
"files_panel_enabled": true,
"polls_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https:\/\/www.digitalsamba.com\/redirect\/privacy-policy]Privacy Policy[\/link].",
"checkbox_message": "Donβt show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"max_participants": 100,
"max_broadcasters": 100,
"session_length": 90,
"html_title": "My room",
"transcription_enabled": false,
"transcription_auto_start_enabled": true,
"captions_enabled": false,
"captions_language": "en",
"captions_in_recordings_enabled": false,
"expires_at": "2024-09-05 12:30:00"
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"description\": \"My public room description.\",
\"friendly_url\": \"MyPublicRoom\",
\"privacy\": \"public\",
\"external_id\": \"myExtID123\",
\"default_role\": \"moderator\",
\"roles\": [
\"moderator\"
],
\"webhooks\": [
\"c83c7b87-b9b8-444d-a749-7076fe58fdb8\"
],
\"is_locked\": false,
\"topbar_enabled\": true,
\"pip_enabled\": true,
\"toolbar_enabled\": true,
\"toolbar_position\": \"bottom\",
\"toolbar_color\": \"#000000\",
\"primary_color\": \"#3771E0\",
\"background_color\": \"#000000\",
\"palette_mode\": \"light\",
\"language\": \"en\",
\"language_selection_enabled\": true,
\"audio_on_join_enabled\": true,
\"video_on_join_enabled\": true,
\"hd_video_on_join_enabled\": false,
\"participants_list_enabled\": true,
\"pin_enabled\": true,
\"full_screen_enabled\": true,
\"minimize_own_tile_enabled\": true,
\"minimize_own_tile_on_join_enabled\": false,
\"broadcaster_tile_visibility\": \"all\",
\"end_session_enabled\": true,
\"breakout_rooms_enabled\": false,
\"breakouts\": null,
\"chat_enabled\": true,
\"private_chat_enabled\": true,
\"private_group_chat_enabled\": false,
\"private_group_chat_name\": \"Presenters\",
\"private_group_chat_roles\": [
\"moderator\"
],
\"e2ee_enabled\": false,
\"layout_mode_switch_enabled\": true,
\"simple_notifications_enabled\": true,
\"join_screen_enabled\": true,
\"screenshare_enabled\": true,
\"recordings_enabled\": true,
\"recording_autostart_enabled\": false,
\"logo_enabled\": true,
\"custom_logo\": \"laudantium\",
\"recording_logo_enabled\": true,
\"virtual_backgrounds_enabled\": true,
\"raise_hand_enabled\": true,
\"participant_names_in_recordings_enabled\": true,
\"hide_tiles_in_recordings_enabled\": false,
\"invite_participants_enabled\": true,
\"whiteboard_enabled\": true,
\"qa_enabled\": true,
\"upvote_qa_enabled\": true,
\"files_panel_enabled\": true,
\"polls_enabled\": true,
\"consent_message_enabled\": true,
\"recording_consent_message_enabled\": true,
\"consent_message_type\": \"generic\",
\"consent_message\": \"By joining, you consent to the processing of your personal data in accordance with our [link https:\\/\\/www.digitalsamba.com\\/redirect\\/privacy-policy]Privacy Policy[\\/link].\",
\"checkbox_message\": \"Donβt show this again.\",
\"recordings_layout_mode\": \"tiled\",
\"layout_mode_on_join\": \"tiled\",
\"max_participants\": 100,
\"max_broadcasters\": 100,
\"session_length\": 90,
\"html_title\": \"My room\",
\"transcription_enabled\": false,
\"transcription_auto_start_enabled\": true,
\"captions_enabled\": false,
\"captions_language\": \"en\",
\"captions_in_recordings_enabled\": false,
\"expires_at\": \"2024-09-05 12:30:00\"
}"
Example response (200):
{
"id": "13a5aa53-f4da-470b-bfd0-63dd9e5dd81d",
"description": "My public room description.",
"friendly_url": "MyPublicRoom",
"privacy": "public",
"max_participants": 100,
"max_broadcasters": 10,
"is_locked": false,
"topbar_enabled": true,
"toolbar_enabled": true,
"toolbar_position": "left",
"toolbar_color": "#000000",
"primary_color": "#3771E0",
"background_color": "#000000",
"palette_mode": "light",
"language": "en",
"language_selection_enabled": true,
"audio_on_join_enabled": true,
"video_on_join_enabled": true,
"screenshare_enabled": true,
"participants_list_enabled": true,
"recordings_enabled": true,
"logo_enabled": true,
"custom_logo": null,
"recording_logo_enabled": false,
"virtual_backgrounds_enabled": true,
"raise_hand_enabled": true,
"chat_enabled": true,
"private_chat_enabled": true,
"private_group_chat_enabled": true,
"private_group_chat_name": "test",
"pin_enabled": true,
"full_screen_enabled": true,
"minimize_own_tile_enabled": true,
"minimize_own_tile_on_join_enabled": false,
"end_session_enabled": true,
"e2ee_enabled": false,
"layout_mode_switch_enabled": true,
"simple_notifications_enabled": true,
"join_screen_enabled": true,
"participant_names_in_recordings_enabled": false,
"hide_tiles_in_recordings_enabled": false,
"invite_participants_enabled": true,
"whiteboard_enabled": true,
"qa_enabled": true,
"files_panel_enabled": true,
"consent_message_enabled": true,
"recording_consent_message_enabled": true,
"consent_message_type": "generic",
"consent_message": "By joining, you consent to the processing of your personal data in accordance with our [link https://www.digitalsamba.com/redirect/privacy-policy]Privacy Policy[/link].",
"checkbox_message": "Don’t show this again.",
"recordings_layout_mode": "tiled",
"layout_mode_on_join": "tiled",
"room_url": "https://myteam.digitalsamba.com/MyPublicRoom",
"external_id": "EXTID123",
"default_role": {
"id": "47697570-a2e8-4b0c-8f2d-1af1ea2bae67",
"name": "moderator",
"display_name": "Moderators"
},
"roles": [
{
"id": "47697570-a2e8-4b0c-8f2d-1af1ea2bae67",
"name": "moderator",
"display_name": "Moderators",
"allow_private_group_chat": true
},
{
"id": "4fae2627-3d52-4b01-905f-5022b285ee8c",
"name": "attendee",
"display_name": "Attendees",
"allow_private_group_chat": false
}
],
"files": [
{
"id": "ae137edf-741e-4d0d-acd9-e5ad2c1dd74f",
"name": "image.png",
"url": "https://www.myimages.com/image.png",
"thumbnail_url": "https://www.myimages.com/image-thumbnail.png"
}
],
"webhooks": [
"3d5260b1-741e-4d0d-4a00-e5ad2c1dd74f",
"77ea623b-741e-4d0d-acd9-32d98793e168"
],
"breakout_rooms_enabled": true,
"breakouts": [
{
"id": "ae137edf-741e-4d0d-acd9-e5ad2c1dd74f",
"name": "Breakout Room 1"
},
{
"id": "77ea623b-f677-4a00-8307-ec19aa022d22",
"name": "Breakout Room 2"
},
{
"id": "6cc45935-f00c-4683-9f14-32d98793e168",
"name": "Breakout Room 3"
}
],
"html_title": "MyPublicRoom custom HTML title",
"transcription_enabled": false,
"captions_enabled": true,
"captions_in_recordings_enabled": false,
"captions_language": "en",
"created_at": "2022-05-13T19:09:04Z",
"updated_at": "2024-03-28T00:43:42Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'delete_resources' => false,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"delete_resources": false
};
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"delete_resources\": false
}"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Hard delete all of stored resource data for specific room.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/resources';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/resources"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/resources" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the specified poll.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Live
Get rooms with live participants count.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/live';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/live"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/live?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 3,
"data": [
{
"id": "ecd0fa17-b1c6-3f35-99c3-ce6cd81afca8",
"external_id": "EXTID824955915",
"start_time": "2022-05-13T12:31:19.000000Z",
"session_duration": 11408,
"live_participants": 27
},
{
"id": "554265e0-9fd7-3408-ace4-249e00b024f1",
"external_id": "EXTID1504059250",
"start_time": "2022-05-13T10:22:42.000000Z",
"session_duration": 2726,
"live_participants": 3
},
{
"id": "abb8cc46-6b87-3aae-80b0-82e8943ed0d4",
"external_id": "EXTID69285216",
"start_time": "2022-05-13T11:13:29.000000Z",
"session_duration": 1183,
"live_participants": 55
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get rooms with live participants data.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/live/participants';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/live/participants"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/live/participants?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 5,
"data": [
{
"id": "b31155d3-19ad-3d4d-bde6-c5ec9172d9b7",
"external_id": "EXTID1251839424",
"start_time": "2022-05-16T12:51:54.000000Z",
"session_duration": 2580,
"live_participants": [
{
"id": "4354aa20-9906-45ed-9b02-799525e1dbc3",
"external_id": "EXTID1916626560",
"name": "Gwendolyn Hayes",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "898964d2-9951-4734-8eea-77fa72fd137d",
"external_id": "EXTID657371078",
"name": "Mrs. Mya Schroeder PhD",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "73c8f78f-0b80-4a76-8fa3-1d11705a5fa3",
"external_id": "EXTID229839886",
"name": "Gregg Runte",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "2fdc809a-e981-46a2-bc67-84c15ca7efd5",
"external_id": "EXTID1261882350",
"name": "Angelina Treutel I",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "19650289-6171-4c45-a7a2-0e66fb5c29a0",
"external_id": "EXTID2009248764",
"name": "Verdie Jacobs",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
}
]
},
{
"id": "b623bc65-4cd8-316e-905b-213af2ed362d",
"external_id": "EXTID2082633660",
"start_time": "2022-05-16T12:51:54.000000Z",
"session_duration": 2580,
"live_participants": [
{
"id": "59852f2b-b25a-43c6-927c-7a3c2634deef",
"external_id": "EXTID1005303666",
"name": "Stacey McLaughlin",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "3765c44f-b629-4bb3-8304-805c71b01fe5",
"external_id": "EXTID310825640",
"name": "Stewart Roob",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "c596f874-bf88-4865-a77b-44f9e3285f5b",
"external_id": "EXTID1492362491",
"name": "Miss Samantha Mayert",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "4930aee0-f4ab-4203-9054-b3932e94b015",
"external_id": "EXTID462108878",
"name": "Earl Buckridge",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "3f6dca1f-92b0-4147-81ee-754754cb00d1",
"external_id": "EXTID1790509806",
"name": "Colin Dickens",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
}
]
},
{
"id": "2473e7b1-406c-3e05-93cb-57c6a6ba6e60",
"external_id": "EXTID209019793",
"start_time": "2022-05-16T12:51:54.000000Z",
"session_duration": 2580,
"live_participants": [
{
"id": "c6a73ece-77b3-47f6-b614-7b949cddd2fe",
"external_id": "EXTID617498776",
"name": "Prof. Forrest Ritchie V",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "e4d23870-ed35-4901-9cfd-47bddb6a035a",
"external_id": "EXTID1665145569",
"name": "Shany Torphy",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "e9c6a70d-6528-404e-88ea-4994578b56e1",
"external_id": "EXTID401347102",
"name": "Lera Zboncak DVM",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "0ef1fd7f-acda-4b0a-94f5-ee411d16cd86",
"external_id": "EXTID597760933",
"name": "Leon Daugherty I",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "c76a28e9-b0d4-4d08-aa24-c869289ccc39",
"external_id": "EXTID2020171092",
"name": "Oswald Hickle",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
}
]
},
{
"id": "6328914f-19a0-397a-99dc-4cd49570cffc",
"external_id": "EXTID1928952811",
"start_time": "2022-05-16T12:51:34.000000Z",
"session_duration": 2600,
"live_participants": [
{
"id": "03a82571-3327-439d-ba57-8515302f0ee6",
"external_id": "EXTID2098450034",
"name": "Mrs. Icie Funk",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "22fde4ce-6fea-4c1b-85e9-14ae60c7b452",
"external_id": "EXTID2077221187",
"name": "Sonia Kulas",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "5ea800db-8c88-4f99-a6d2-a292016bfa9b",
"external_id": "EXTID1543982160",
"name": "Lisette Gerhold",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "a360431a-1e2e-45c2-8b74-67ce84585532",
"external_id": "EXTID222171890",
"name": "Vita Mann",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "bafa6f48-1992-45aa-bd72-6d10b08bb576",
"external_id": "EXTID1015346028",
"name": "Darien Powlowski",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
}
]
},
{
"id": "f9716453-8e9f-39a4-b2f2-c1d00228411e",
"external_id": "EXTID632729761",
"start_time": "2022-05-16T12:51:00.000000Z",
"session_duration": 2634,
"live_participants": [
{
"id": "aed005c5-69db-40f7-9785-395c545fed64",
"external_id": "EXTID2128980420",
"name": "Devante Stamm DVM",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "b8f2422e-a524-4ced-8cb2-9219bcdd5ec7",
"external_id": "EXTID1153236013",
"name": "Magnolia D'Amore",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "e58b84d4-b370-4389-9710-8935ac9d71ef",
"external_id": "EXTID1466108903",
"name": "Dr. Chauncey Franecki",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "3a7c8ad3-8082-4d2e-86f9-ffbddaff6a7b",
"external_id": "EXTID778875197",
"name": "Deborah Vandervort III",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
},
{
"id": "35a65ef1-06f1-4ee1-a8cf-6e032fac227a",
"external_id": "EXTID206934569",
"name": "Callie DuBuque",
"role": "participant",
"join_time": "2022-05-16T12:51:54.000000Z"
}
]
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get single room with live participants count.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/live';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/live"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/live" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "c2d64b46-cc89-3830-890b-f81ccb2f882c",
"external_id": "EXTID1688929106",
"start_time": "2022-05-16T12:12:54.000000Z",
"session_duration": 1408,
"live_participants": 17
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get single room with live participants' data.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/live/participants';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/live/participants"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/live/participants" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "4e68be68-f505-3827-81f7-72fa76f42de9",
"external_id": "EXTID852602699",
"start_time": "2022-05-16T12:48:18.000000Z",
"session_duration": 1408,
"live_participants": [
{
"id": "928f1a06-921b-446f-9d23-b78e96523563",
"external_id": "EXTID2113427821",
"name": "Unique Reynolds",
"role": "participant",
"join_time": "2022-05-16T12:48:18.000000Z"
},
{
"id": "d9f72e6f-61e7-4722-919f-d850f315d49c",
"external_id": "EXTID524240932",
"name": "Susie Luettgen",
"role": "participant",
"join_time": "2022-05-16T12:50:22.000000Z"
},
{
"id": "598f9761-4fa3-4b47-bde7-0cc05228ff36",
"external_id": "EXTID766750985",
"name": "Prof. Juliet Kunde I",
"role": "participant",
"join_time": "2022-05-16T12:19:31.000000Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Recordings
Get all team recordings.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/recordings';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'room_id' => 'd4dfe280-01e7-42f0-ba57-a2f3e449e775',
'session_id' => 'ce4bba81-d332-426c-8e59-846d9c15d492',
'status' => 'READY',
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/recordings"
);
const params = {
"room_id": "d4dfe280-01e7-42f0-ba57-a2f3e449e775",
"session_id": "ce4bba81-d332-426c-8e59-846d9c15d492",
"status": "READY",
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/recordings?room_id=d4dfe280-01e7-42f0-ba57-a2f3e449e775&session_id=ce4bba81-d332-426c-8e59-846d9c15d492&status=READY&limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "682da81a-5316-37a0-b912-8a923207850c",
"name": "Iste aperiam et.",
"status": "AWAITING_START",
"room_id": "fe31aa95-de35-3fcc-baa2-8d4954f2ced1",
"external_room_id": "EXTID1251874263",
"friendly_url": "VdX1f4KVXocXoUEkjXY70WtykrIp-xcj",
"privacy": "public",
"participant_id": "8363c70a-cbc3-4534-b20e-8fa0ff9c3232",
"participant_name": "kkuhn",
"participant_external_id": "EXTID38",
"created_at": "2024-11-01T17:46:44Z",
"updated_at": "2024-11-01T17:46:44Z"
},
{
"id": "de8b7fdf-3140-37f2-ab74-1a402d26a213",
"name": "Sunt qui voluptatem.",
"status": "AWAITING_START",
"room_id": "d7250897-4154-3eb2-8165-c769e7b7bca8",
"external_room_id": "EXTID2050077100",
"friendly_url": "btpACUdAHAZjlqt5T-oCA2VAaY6V2ghr",
"privacy": "public",
"participant_id": "33921cd0-12fe-4fba-8d9e-d7b0243e0bb5",
"participant_name": "zbatz",
"participant_external_id": "EXTID94",
"created_at": "2024-11-01T17:46:45Z",
"updated_at": "2024-11-01T17:46:45Z"
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get archived team recordings.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/recordings/archived';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'room_id' => 'd4dfe280-01e7-42f0-ba57-a2f3e449e775',
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/recordings/archived"
);
const params = {
"room_id": "d4dfe280-01e7-42f0-ba57-a2f3e449e775",
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/recordings/archived?room_id=d4dfe280-01e7-42f0-ba57-a2f3e449e775&limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "0fc55d50-eb98-350c-961f-64a1011479c9",
"name": "Rerum unde nihil.",
"status": "AWAITING_START",
"room_id": "e10d6a79-d2ec-3212-b607-916a4f9e5118",
"external_room_id": "EXTID1570624036",
"friendly_url": "rqv9fkV8MbcMjbtVBXIoclws_h6yj73m",
"privacy": "public",
"participant_id": "db701d61-b467-492c-a359-cd85ef6bc66f",
"participant_name": "hegmann.lila",
"participant_external_id": "EXTID42",
"created_at": "2024-11-01T17:46:45Z",
"updated_at": "2024-11-01T17:46:45Z"
},
{
"id": "b0e1965d-ea8f-3531-b1f0-8b50a2c26a1f",
"name": "Aperiam dolore.",
"status": "AWAITING_START",
"room_id": "d579cc52-b01d-3867-ba97-9ee7447529e5",
"external_room_id": "EXTID1226699916",
"friendly_url": "sbX2J82rTNiBmDSn4dvOI61qnMUmcxIG",
"privacy": "public",
"participant_id": "d3dd4f09-f5a9-43bd-8f48-3f8ae6ea80ac",
"participant_name": "adams.amelia",
"participant_external_id": "EXTID43",
"created_at": "2024-11-01T17:46:45Z",
"updated_at": "2024-11-01T17:46:45Z"
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified recording.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "a42f2167-4a00-317a-8617-ccb3d83331b5",
"name": "Nisi sit atque.",
"duration": 0,
"status": "AWAITING_START",
"room_id": "0ca811ad-df35-37d2-b8ff-1ed356a2c64f",
"external_room_id": "EXTID1350785780",
"friendly_url": "ossRFJB-02WZx6vyf0LJHOkqPPRes1Ic",
"room_is_deleted": false,
"privacy": "public",
"session_id": null,
"participant_id": "fbeb861e-901f-46fd-b036-63fa77c4aee7",
"participant_name": "mcarter",
"participant_external_id": "EXTID81",
"created_at": "2024-11-01T17:46:46Z",
"updated_at": "2024-11-01T17:46:46Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Download the specified recording.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/download';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'valid_for_minutes' => '60',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/download"
);
const params = {
"valid_for_minutes": "60",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/download?valid_for_minutes=60" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"link": "https://storage.server.net/8c59a25f-7ffa-43cb-a5b8-5814b3923906.mp4?h=rtiHKNPuXilF6NOWpiXbCw&expires=1668238783",
"valid_until": "2022-11-12T07:39:43Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Archive recording.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/archive';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/archive"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/archive" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Unarchive recording.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/unarchive';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/unarchive"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/unarchive" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete recording.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/recordings/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Start recording.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings/start';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings/start"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings/start" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Stop recording.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings/stop';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings/stop"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings/stop" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Webhooks
Get webhooks for the team.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/webhooks';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/webhooks"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/webhooks?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "7b9270c6-9530-4a42-ac90-9d37e660b13a",
"endpoint": "http://ziemann.net/a-et-tempore-amet-sunt-quia-at-et",
"authorization_header": "45eb9efa629f36990c197ec9462e5927",
"name": "My webhook 9",
"created_at": "2024-11-01T17:46:46Z",
"updated_at": "2024-11-01T17:46:46Z"
},
{
"id": "941a2d84-a045-4729-a158-12db7fbe59c8",
"endpoint": "https://www.koch.com/ad-aliquid-necessitatibus-in-vitae-saepe-ut-suscipit-quidem",
"authorization_header": "8da587874a5cd24734319c4a11191c1c",
"name": "My webhook 8",
"created_at": "2024-11-01T17:46:46Z",
"updated_at": "2024-11-01T17:46:46Z"
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified webhook.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "d22e06cc-33e8-4f90-aafc-a4ab02091916",
"endpoint": "https://www.armstrong.com/repudiandae-voluptatibus-et-maxime-dolor-aut-nemo-enim",
"authorization_header": "86633ea0922ef0a9317a1bd1c3b47015",
"name": "My webhook 3",
"events": [
"participant_consequuntur"
],
"created_at": "2024-11-01T17:46:47Z",
"updated_at": "2024-11-01T17:46:47Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new webhook.
requires authentication
This endpoint allows you to create a new webhook
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/webhooks';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'endpoint' => 'https://example.com/webhook-for-join',
'name' => 'Join Webhook',
'authorization_header' => '2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F',
'events' => [
'participant_joined',
'participant_left',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/webhooks"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"endpoint": "https:\/\/example.com\/webhook-for-join",
"name": "Join Webhook",
"authorization_header": "2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F",
"events": [
"participant_joined",
"participant_left"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/webhooks" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"endpoint\": \"https:\\/\\/example.com\\/webhook-for-join\",
\"name\": \"Join Webhook\",
\"authorization_header\": \"2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F\",
\"events\": [
\"participant_joined\",
\"participant_left\"
]
}"
Example response (200):
{
"id": "d4539a32-bb37-4e40-887d-a8c8e5d6d02c",
"endpoint": "http://www.graham.com/nulla-eos-non-consequatur-autem-dignissimos-natus-libero.html",
"authorization_header": "d6cd1d75a4ca7a77b90eae6141a97edd",
"name": "My webhook 3",
"events": [
"participant_enim"
],
"created_at": "2024-11-01T17:46:47Z",
"updated_at": "2024-11-01T17:46:47Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the specified webhook.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'endpoint' => 'https://example.com/webhook-for-join',
'name' => 'Join Webhook',
'authorization_header' => '2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F',
'events' => [
'participant_joined',
'participant_left',
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"endpoint": "https:\/\/example.com\/webhook-for-join",
"name": "Join Webhook",
"authorization_header": "2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F",
"events": [
"participant_joined",
"participant_left"
]
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"endpoint\": \"https:\\/\\/example.com\\/webhook-for-join\",
\"name\": \"Join Webhook\",
\"authorization_header\": \"2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F\",
\"events\": [
\"participant_joined\",
\"participant_left\"
]
}"
Example response (200):
{
"id": "0e65722e-d4e1-426e-806f-31c34fded17a",
"endpoint": "http://kutch.com/",
"authorization_header": "c2a570d380d01e0538035f63cbf9222f",
"name": "My webhook 8",
"events": [
"participant_quae"
],
"created_at": "2024-11-01T17:46:47Z",
"updated_at": "2024-11-01T17:46:47Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the specified webhook.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/webhooks/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Events
Get available events used for triggering webhooks
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/events';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/events"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/events" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
[
"participant_joined",
"participant_left"
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Roles
Get available roles for the team.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/roles';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/roles"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/roles?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 3,
"data": [
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"name": "attendee",
"display_name": "Attendees",
"description": "The Digital Samba Embedded Attendee preset is conceived as the role with the lowest rank. An Attendee preset may essentially see and hear the Speaker and Moderator presets' audio, video and screenshare streams.",
"default": false,
"created_at": "2023-01-31T12:45:51Z",
"updated_at": "2023-03-27T13:46:22Z"
},
{
"id": "76bb6199-2900-4b8d-b1bf-351dec4a8db4",
"name": "moderator",
"display_name": "Moderators",
"description": "The Digital Samba Embedded Moderator preset is conceived to have all permissions, encompassing speaker’s rights to broadcast, screenshare and present, and also management rights such as granting or removing permissions, removing participants, starting / ending a session or recording it.",
"default": true,
"created_at": "2023-01-31T12:45:51Z",
"updated_at": "2023-03-27T13:46:22Z"
},
{
"id": "e5bad6b9-48bd-46a0-9482-af78a834c28c",
"name": "speaker",
"display_name": "Speakers",
"description": "The Digital Samba Embedded Speaker preset is conceived to have all broadcast, screensharing and presentation permissions, but none of the Moderator’s management rights, such as as granting or removing permissions, removing participants, starting / ending a session or recording it.",
"default": false,
"created_at": "2023-01-31T12:45:51Z",
"updated_at": "2023-03-27T13:46:22Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified role.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "5ce6fda5-d42b-4110-8796-177e571a7407",
"name": "moderator",
"display_name": "Moderators",
"description": "The Digital Samba Embedded Moderator preset is conceived to have all permissions, encompassing speaker’s rights to broadcast, screenshare and present, and also management rights such as granting or removing permissions, removing participants, starting / ending a session or recording it.",
"default": true,
"created_at": "2023-01-31T12:45:53Z",
"updated_at": "2023-02-15T03:22:24Z",
"permissions": {
"answer_qa": true,
"ask_remote_unmute": true,
"broadcast": true,
"start_session": false,
"end_session": true,
"see_participants_panel": true,
"general_chat": true,
"manage_broadcast": true,
"manage_edit_whiteboard": true,
"manage_breakout": true,
"manage_roles": [
"moderator",
"speaker",
"attendee"
],
"manage_screenshare": false,
"moderate_qa": true,
"present_files": true,
"private_chat": true,
"raise_hand": false,
"recording": false,
"transcribe_session": true,
"remote_muting": false,
"invite_participant": true,
"control_room_entry": true,
"control_room_components": false,
"remove_participant": false,
"edit_whiteboard": true,
"screenshare": false,
"upvote_qa": false
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new role.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/roles';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'participant',
'display_name' => 'Basic Participant',
'description' => 'Participant with basic permissions',
'permissions' => [
'ask_remote_unmute' => true,
'broadcast' => true,
'end_session' => true,
'general_chat' => true,
'manage_broadcast' => true,
'manage_roles' => [
'moderator',
'speaker',
'attendee',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/roles"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "participant",
"display_name": "Basic Participant",
"description": "Participant with basic permissions",
"permissions": {
"ask_remote_unmute": true,
"broadcast": true,
"end_session": true,
"general_chat": true,
"manage_broadcast": true,
"manage_roles": [
"moderator",
"speaker",
"attendee"
]
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/roles" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"participant\",
\"display_name\": \"Basic Participant\",
\"description\": \"Participant with basic permissions\",
\"permissions\": {
\"ask_remote_unmute\": true,
\"broadcast\": true,
\"end_session\": true,
\"general_chat\": true,
\"manage_broadcast\": true,
\"manage_roles\": [
\"moderator\",
\"speaker\",
\"attendee\"
]
}
}"
Example response (200):
{
"id": "5ce6fda5-d42b-4110-8796-177e571a7407",
"name": "moderator",
"display_name": "Moderators",
"description": "The Digital Samba Embedded Moderator preset is conceived to have all permissions, encompassing speaker’s rights to broadcast, screenshare and present, and also management rights such as granting or removing permissions, removing participants, starting / ending a session or recording it.",
"default": true,
"created_at": "2023-01-31T12:45:53Z",
"updated_at": "2023-02-15T03:22:24Z",
"permissions": {
"answer_qa": true,
"ask_remote_unmute": true,
"broadcast": true,
"start_session": false,
"end_session": true,
"see_participants_panel": true,
"general_chat": true,
"manage_broadcast": true,
"manage_edit_whiteboard": true,
"manage_breakout": true,
"manage_roles": [
"moderator",
"speaker",
"attendee"
],
"manage_screenshare": false,
"moderate_qa": true,
"present_files": true,
"private_chat": true,
"raise_hand": false,
"recording": false,
"transcribe_session": true,
"remote_muting": false,
"invite_participant": true,
"control_room_entry": true,
"control_room_components": false,
"remove_participant": false,
"edit_whiteboard": true,
"screenshare": false,
"upvote_qa": false
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the specified role.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'participant',
'display_name' => 'Basic Participant',
'description' => 'Participant with basic permissions',
'permissions' => [
'ask_remote_unmute' => true,
'broadcast' => true,
'end_session' => true,
'general_chat' => true,
'manage_broadcast' => true,
'manage_roles' => [
'moderator',
'speaker',
'attendee',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "participant",
"display_name": "Basic Participant",
"description": "Participant with basic permissions",
"permissions": {
"ask_remote_unmute": true,
"broadcast": true,
"end_session": true,
"general_chat": true,
"manage_broadcast": true,
"manage_roles": [
"moderator",
"speaker",
"attendee"
]
}
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"participant\",
\"display_name\": \"Basic Participant\",
\"description\": \"Participant with basic permissions\",
\"permissions\": {
\"ask_remote_unmute\": true,
\"broadcast\": true,
\"end_session\": true,
\"general_chat\": true,
\"manage_broadcast\": true,
\"manage_roles\": [
\"moderator\",
\"speaker\",
\"attendee\"
]
}
}"
Example response (200):
{
"id": "5ce6fda5-d42b-4110-8796-177e571a7407",
"name": "moderator",
"display_name": "Moderators",
"description": "The Digital Samba Embedded Moderator preset is conceived to have all permissions, encompassing speaker’s rights to broadcast, screenshare and present, and also management rights such as granting or removing permissions, removing participants, starting / ending a session or recording it.",
"default": true,
"created_at": "2023-01-31T12:45:53Z",
"updated_at": "2023-02-15T03:22:24Z",
"permissions": {
"answer_qa": true,
"ask_remote_unmute": true,
"broadcast": true,
"start_session": false,
"end_session": true,
"see_participants_panel": true,
"general_chat": true,
"manage_broadcast": true,
"manage_edit_whiteboard": true,
"manage_breakout": true,
"manage_roles": [
"moderator",
"speaker",
"attendee"
],
"manage_screenshare": false,
"moderate_qa": true,
"present_files": true,
"private_chat": true,
"raise_hand": false,
"recording": false,
"transcribe_session": true,
"remote_muting": false,
"invite_participant": true,
"control_room_entry": true,
"control_room_components": false,
"remove_participant": false,
"edit_whiteboard": true,
"screenshare": false,
"upvote_qa": false
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the specified role.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/roles/a853d608-e6cf-48eb-a3c9-7d089bbc09b0" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Permissions
Get available permissions for roles
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/permissions';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/permissions"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/permissions" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
[
"answer_qa",
"ask_remote_unmute",
"broadcast",
"start_session",
"end_session",
"see_participants_panel",
"general_chat",
"manage_broadcast",
"manage_edit_whiteboard",
"manage_roles",
"manage_screenshare",
"manage_breakout",
"moderate_qa",
"present_files",
"private_chat",
"raise_hand",
"recording",
"transcribe_session",
"remote_muting",
"invite_participant",
"remove_participant",
"control_room_entry",
"control_room_components",
"edit_whiteboard",
"screenshare",
"upvote_qa"
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Libraries
Get available libraries for the team.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 2,
"data": [
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"name": "My photos",
"created_at": "2023-01-31T12:45:51Z"
},
{
"id": "5ce6fda5-d42b-4110-8796-177e571a7407",
"external_id": "EXTLIB002",
"name": "My documents",
"created_at": "2023-01-31T12:45:51Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified library.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"name": "My photos",
"created_at": "2023-01-31T12:45:51Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified library hierarchy.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/hierarchy';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/hierarchy"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/hierarchy" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"name": "My photos",
"created_at": "2023-01-31T12:45:51Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new library.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'My photos',
'external_id' => 'EXTID123',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "My photos",
"external_id": "EXTID123"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/libraries" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"My photos\",
\"external_id\": \"EXTID123\"
}"
Example response (200):
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"name": "My photos",
"created_at": "2023-01-31T12:45:51Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the specified library.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'My photos',
'external_id' => 'EXTID123',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "My photos",
"external_id": "EXTID123"
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"My photos\",
\"external_id\": \"EXTID123\"
}"
Example response (200):
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"name": "My photos",
"created_at": "2023-01-31T12:45:51Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the specified library.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get available library folders.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/{library}/folders';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/{library}/folders"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries/{library}/folders?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 2,
"data": [
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"description": "My photos",
"created_at": "2023-01-31T12:45:51Z"
},
{
"id": "5ce6fda5-d42b-4110-8796-177e571a7407",
"external_id": "EXTLIB002",
"description": "My documents",
"created_at": "2023-01-31T12:45:51Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified folder.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"description": "My photos",
"created_at": "2023-01-31T12:45:51Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new library folder.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/{library}/folders';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'My photos',
'parent_id' => '5ce6fda5-d42b-4110-8796-177e571a7407',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/{library}/folders"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "My photos",
"parent_id": "5ce6fda5-d42b-4110-8796-177e571a7407"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/libraries/{library}/folders" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"My photos\",
\"parent_id\": \"5ce6fda5-d42b-4110-8796-177e571a7407\"
}"
Example response (200):
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"description": "My photos",
"created_at": "2023-01-31T12:45:51Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the specified folder.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'My photos',
'parent_id' => '5ce6fda5-d42b-4110-8796-177e571a7407',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "My photos",
"parent_id": "5ce6fda5-d42b-4110-8796-177e571a7407"
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"My photos\",
\"parent_id\": \"5ce6fda5-d42b-4110-8796-177e571a7407\"
}"
Example response (200):
{
"id": "8cae6c49-c40a-4965-a32b-6cf20de36755",
"external_id": "EXTLIB001",
"description": "My photos",
"created_at": "2023-01-31T12:45:51Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the specified folder.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/folders/1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get available library files.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/{library}/files';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/{library}/files"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries/{library}/files?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
[
{
"id": "e10bbf8f-4d27-4fcd-9ed6-28ab116f0d86",
"folder_id": "7360ccd3-11a0-47d2-ad92-e9eaccc4ca57",
"name": "photo.png",
"type": "image",
"size": 6950,
"created_at": "2024-07-17T09:46:59Z"
},
{
"id": "580d7470-c9ad-4b27-ba79-ebd7cecbf6d9",
"folder_id": "f696e700-d5b5-4b9c-a725-823fe69f8ca2",
"name": "image.png",
"type": "image",
"size": 68095,
"created_at": "2024-07-17T09:48:35Z"
}
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified file.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "e10bbf8f-4d27-4fcd-9ed6-28ab116f0d86",
"folder_id": "7360ccd3-11a0-47d2-ad92-e9eaccc4ca57",
"name": "photo.png",
"type": "image",
"size": 6950,
"created_at": "2024-07-17T09:46:59Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get file links
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/{library}/files/{libraryFile}/links';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/{library}/files/{libraryFile}/links"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/libraries/{library}/files/{libraryFile}/links" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"pages": [
{
"url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/original.0.png?h=2AH1Q_V9lpukScTCAGeHuA&expires=1728117493",
"thumbnail_url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/t_original.0.png?h=qD41qd9ny8fj-7ec1vx2-g&expires=1728117493"
},
{
"url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/original.1.png?h=La4wf3g2Quh6NzuDUHas4Q&expires=1728117493",
"thumbnail_url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/t_original.1.png?h=dgXjEkx-WVxQ1D9ACbWLxw&expires=1728117493"
},
{
"url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/original.2.png?h=eUH0OvzSqBpoR75VW2HUzQ&expires=1728117493",
"thumbnail_url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/t_original.2.png?h=IOoDlckDkzrJHraa_YUxxw&expires=1728117493"
},
{
"url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/original.3.png?h=D9Gp4kRyobd6UOuFbhrSYQ&expires=1728117493",
"thumbnail_url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/t_original.3.png?h=WVs9j8NavQw1Ndf7su0xZA&expires=1728117493"
},
{
"url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/original.4.png?h=cgxQ4C35KGwu-KkEQGXM-w&expires=1728117493",
"thumbnail_url": "https://storage-server.net/library-files/9700fbae-dc27-4d12-8530-1a513c166cb4/39cf7b81-769c-3c5c-acb7-1ae932a16d61/t_original.4.png?h=-qqSmv181ppVcS9QxWVj7g&expires=1728117493"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new library file. Get upload URL and access token.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/{library}/files';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'photo.png',
'folder_id' => '5ce6fda5-d42b-4110-8796-177e571a7407',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/{library}/files"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "photo.png",
"folder_id": "5ce6fda5-d42b-4110-8796-177e571a7407"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/libraries/{library}/files" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"photo.png\",
\"folder_id\": \"5ce6fda5-d42b-4110-8796-177e571a7407\"
}"
Example response (200):
{
"file_id": "149d9ad5-56ab-44ac-8072-eca92cbfcb4e",
"file_name": "iuST5tNOfum3bl8O4MrGAsgxcd3Eo5jvTOIyrqWY.png",
"external_storage_url": "storage-server.net",
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoiaXVTVDV0Tk9mdW0zYmw4TzRNckdBc2d4Y2QzRW81anZUT0l5cnFXWS5wbmciLCJhY3Rpb24iOiJ1cGxvYWQiLCJ0eXBlIjoibGlicmFyeSIsImxpYnJhcnlfaWQiOiI5Y2I4Y2ExMy1kNWMwLTQ2MzAtODIxZS1hYWFlMjcyNWMzNGYiLCJmaWxlX2lkIjoiMTQ5ZDlhZDUtNTZhYi00NGFjLTgwNzItZWNhOTJjYmZjYjRlIiwiaXNzIjoibGFyYXZlbCIsImlhdCI6MTcyNzkyODQ0OSwiZXhwIjoxNzI3OTI5MzQ5fQ.7mlwaPIrNYTfEmuOjKVN-qaY-oeifC8RZlmz68tkqAM",
"expiration_timestamp": 1727929349
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the specified file.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'name' => 'photo.png',
'folder_id' => '5ce6fda5-d42b-4110-8796-177e571a7407',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "photo.png",
"folder_id": "5ce6fda5-d42b-4110-8796-177e571a7407"
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"photo.png\",
\"folder_id\": \"5ce6fda5-d42b-4110-8796-177e571a7407\"
}"
Example response (200):
{
"id": "e10bbf8f-4d27-4fcd-9ed6-28ab116f0d86",
"folder_id": "7360ccd3-11a0-47d2-ad92-e9eaccc4ca57",
"name": "photo.png",
"type": "image",
"size": 6950,
"created_at": "2024-07-17T09:46:59Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete the specified file.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/libraries/16719c1b-cc82-4dfe-9f6f-40d9093fa695/files/1" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Participants
Get all participants.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/participants';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/participants"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/participants?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "17c75935-387e-499e-ab6f-8025e9bc0691",
"external_id": "EXTID1625629384",
"session_id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"room_id": "1a3c3ace-e3ec-3363-b3cd-308c02381268",
"room_external_id": "EXTID1375085920",
"room_is_deleted": false,
"name": "Ms. Cara Ferry Jr.",
"role": "moderator",
"friendly_url": "iagVi1oidf0k9hQhHypYLefFqpbHulUN",
"join_time": "2024-03-03 08:01:01",
"leave_time": "2024-03-03 09:01:01",
"live": false
},
{
"id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"external_id": "EXTID1625629384",
"session_id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"room_id": "1a3c3ace-e3ec-3363-b3cd-308c02381268",
"room_external_id": "EXTID1375085920",
"room_is_deleted": false,
"name": "Madisyn Howe",
"role": "moderator",
"friendly_url": "iagVi1oidf0k9hQhHypYLefFqpbHulUN",
"join_time": "2024-03-03 08:01:01",
"leave_time": "2024-03-03 09:01:01",
"live": false
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get participant statistics.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/participants/{participant}';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/participants/{participant}"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/participants/{participant}" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"room_id": "9af9933c-5b43-3279-a7bb-7e7809210e9e",
"room_external_id": "308bf674-8610-35cb-a378-e2c54f2fc976",
"room_friendly_url": "UoZhS97JdgTqxj4qVgPWyD_F8eBdW5Si",
"room_privacy": "public",
"room_is_deleted": false,
"session_id": "fc355508-8064-4367-96c2-21ef571beee5",
"live": false,
"participant_name": "Madisyn Howe",
"role": "moderator",
"join_time": "2024-03-31T15:27:43Z",
"leave_time": "2024-03-31T15:36:43Z",
"device": "desktop",
"system": "Mac OS X 10",
"browser": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_3 rv:6.0) Gecko/20190126 Firefox/35.0",
"e2ee": false,
"participation_minutes": 9,
"public_chat_posts": 2,
"questions": 3,
"answers": 2
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all room participants.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/{room}/participants';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/{room}/participants"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/{room}/participants?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "17c75935-387e-499e-ab6f-8025e9bc0691",
"external_id": "EXTID1625629384",
"session_id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"room_id": "1a3c3ace-e3ec-3363-b3cd-308c02381268",
"room_external_id": "EXTID1375085920",
"room_is_deleted": false,
"name": "Ms. Cara Ferry Jr.",
"role": "moderator",
"friendly_url": "iagVi1oidf0k9hQhHypYLefFqpbHulUN",
"join_time": "2024-03-03 08:01:01",
"leave_time": "2024-03-03 09:01:01",
"live": false
},
{
"id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"external_id": "EXTID1625629384",
"session_id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"room_id": "1a3c3ace-e3ec-3363-b3cd-308c02381268",
"room_external_id": "EXTID1375085920",
"room_is_deleted": false,
"name": "Madisyn Howe",
"role": "moderator",
"friendly_url": "iagVi1oidf0k9hQhHypYLefFqpbHulUN",
"join_time": "2024-03-03 08:01:01",
"leave_time": "2024-03-03 09:01:01",
"live": false
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all session participants.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/{session}/participants';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
'json' => [
'date_start' => '2024-11-01',
'date_end' => '2024-11-01',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/{session}/participants"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"date_start": "2024-11-01",
"date_end": "2024-11-01"
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/sessions/{session}/participants?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"date_start\": \"2024-11-01\",
\"date_end\": \"2024-11-01\"
}"
Example response (200):
{
"data": [
{
"id": "17c75935-387e-499e-ab6f-8025e9bc0691",
"external_id": "EXTID1625629384",
"session_id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"room_id": "1a3c3ace-e3ec-3363-b3cd-308c02381268",
"room_external_id": "EXTID1375085920",
"room_is_deleted": false,
"name": "Ms. Cara Ferry Jr.",
"role": "moderator",
"friendly_url": "iagVi1oidf0k9hQhHypYLefFqpbHulUN",
"join_time": "2024-03-03 08:01:01",
"leave_time": "2024-03-03 09:01:01",
"live": false
},
{
"id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"external_id": "EXTID1625629384",
"session_id": "9c725f12-705c-40e5-be1f-10dea6fa0a1f",
"room_id": "1a3c3ace-e3ec-3363-b3cd-308c02381268",
"room_external_id": "EXTID1375085920",
"room_is_deleted": false,
"name": "Madisyn Howe",
"role": "moderator",
"friendly_url": "iagVi1oidf0k9hQhHypYLefFqpbHulUN",
"join_time": "2024-03-03 08:01:01",
"leave_time": "2024-03-03 09:01:01",
"live": false
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Polls
Get available polls for the room.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
[
{
"id": "cbe49091-3b4d-4c1b-9ea6-bdf6594e799d",
"question": "When will I go on holiday?",
"status": "started",
"multiple": false,
"anonymous": false,
"created_at": "2022-07-28T20:36:04Z"
}
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Export polls.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/export';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'session_id' => '16719c1b-cc82-4dfe-9f6f-40d9093fa695',
'format' => 'txt',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/export"
);
const params = {
"session_id": "16719c1b-cc82-4dfe-9f6f-40d9093fa695",
"format": "txt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/export?session_id=16719c1b-cc82-4dfe-9f6f-40d9093fa695&format=txt" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
Text file - Polls
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get the specified poll.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"id": "cbe49091-3b4d-4c1b-9ea6-bdf6594e799d",
"question": "When will I go on holiday?",
"status": "started",
"multiple": false,
"anonymous": false,
"options": [
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next week"
},
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next month"
},
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next year"
}
],
"created_at": "2022-07-28T20:36:04Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Poll results.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/results';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'session_id' => '5ce6fda5-d42b-4110-8796-177e571a7407',
'format' => 'txt',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/results"
);
const params = {
"session_id": "5ce6fda5-d42b-4110-8796-177e571a7407",
"format": "txt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/results?session_id=5ce6fda5-d42b-4110-8796-177e571a7407&format=txt" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
[
{
"id": "bd58f41d-924b-48ef-b025-719117c0488c",
"session_id": "bc838074-a723-436f-964c-6e7b4327fcdc",
"question": "When will I go on holiday?",
"status": "eded",
"started": "1989-11-16T10:33:33Z",
"ended": "2020-04-13T03:15:31Z",
"votes": 3,
"options": [
{
"id": "208f8c8f-06db-4f0a-9765-b10be47cad5c",
"text": "Next week",
"voted": 2,
"voters": [
{
"id": "c80f5fb8-d25c-4a3d-895e-4b3778d25a4c",
"name": "korbin.connelly"
},
{
"id": "bf226af6-0c3c-439b-bb2f-bbbd72b02286",
"name": "gutmann.claire"
}
]
},
{
"id": "f20823cf-bc32-48aa-b728-96e5aeb5f328",
"text": "Next month",
"voted": 1,
"voters": [
{
"id": "cada0614-ba03-4264-9078-df7f9689bb2c",
"name": "veda.graham"
}
]
},
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next year",
"voted": 0
}
]
}
]
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new poll.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'question' => 'When will I go on holiday?',
'multiple' => false,
'anonymous' => true,
'options' => [
[
'text' => 'Next week',
],
[
'text' => 'Next month',
],
[
'text' => 'Next year',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"question": "When will I go on holiday?",
"multiple": false,
"anonymous": true,
"options": [
{
"text": "Next week"
},
{
"text": "Next month"
},
{
"text": "Next year"
}
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"question\": \"When will I go on holiday?\",
\"multiple\": false,
\"anonymous\": true,
\"options\": [
{
\"text\": \"Next week\"
},
{
\"text\": \"Next month\"
},
{
\"text\": \"Next year\"
}
]
}"
Example response (200):
{
"id": "cbe49091-3b4d-4c1b-9ea6-bdf6594e799d",
"question": "When will I go on holiday?",
"status": "started",
"multiple": false,
"anonymous": false,
"options": [
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next week"
},
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next month"
},
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next year"
}
],
"created_at": "2022-07-28T20:36:04Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the specified poll.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695';
$response = $client->patch(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'question' => 'When will I go on holiday?',
'multiple' => true,
'anonymous' => true,
'options' => [
[
'id' => '16719c1b-cc82-4dfe-9f6f-40d9093fa695',
'text' => 'Next week',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"question": "When will I go on holiday?",
"multiple": true,
"anonymous": true,
"options": [
{
"id": "16719c1b-cc82-4dfe-9f6f-40d9093fa695",
"text": "Next week"
}
]
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
curl --request PATCH \
"https://api.digitalsamba.com/api/v1/rooms/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls/16719c1b-cc82-4dfe-9f6f-40d9093fa695" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"question\": \"When will I go on holiday?\",
\"multiple\": true,
\"anonymous\": true,
\"options\": [
{
\"id\": \"16719c1b-cc82-4dfe-9f6f-40d9093fa695\",
\"text\": \"Next week\"
}
]
}"
Example response (200):
{
"id": "cbe49091-3b4d-4c1b-9ea6-bdf6594e799d",
"question": "When will I go on holiday?",
"status": "started",
"multiple": false,
"anonymous": false,
"options": [
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next week"
},
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next month"
},
{
"id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"text": "Next year"
}
],
"created_at": "2022-07-28T20:36:04Z"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Sessions
Delete chats by session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/chat" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete Q&A by session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/questions" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete summaries by session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summaries';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summaries"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summaries" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete transcripts by session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete polls by session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/polls" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete recordings by session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/recordings" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Hard delete all of stored resource data for specific session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/resources';
$response = $client->delete(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/resources"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
curl --request DELETE \
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/resources" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (204):
Empty response
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all room sessions.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/rooms/{room}/sessions';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/rooms/{room}/sessions"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/rooms/{room}/sessions?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "643be420-4dcc-453c-92d4-432164a4bc52",
"start_time": "2024-03-21T05:09:31.000000Z",
"end_time": "2024-03-21T05:29:31.000000Z",
"room_id": "5b9ca00e-656e-43cc-ba2c-7dcaae63daa9",
"room_external_id": "EXT-ID-123",
"description": "My room description",
"friendly_url": "myRoom",
"room_is_deleted": false,
"participants_live": 3,
"participants_total": 8,
"participants_max": 5,
"live": true
},
{
"id": "cbe49091-3b4d-4c1b-9ea6-bdf6594e799d",
"start_time": "2024-03-21T05:19:31.000000Z",
"end_time": "2024-03-21T05:29:31.000000Z",
"room_id": "5b9ca00e-656e-43cc-ba2c-7dcaae63daa9",
"room_external_id": "EXT-ID-123",
"description": "My room description",
"friendly_url": "myRoom",
"room_is_deleted": false,
"participants_total": 10,
"participants_max": 5,
"live": false
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get all sessions.
requires authentication
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/sessions?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"data": [
{
"id": "643be420-4dcc-453c-92d4-432164a4bc52",
"start_time": "2024-03-21T05:09:31.000000Z",
"end_time": "2024-03-21T05:29:31.000000Z",
"room_id": "5b9ca00e-656e-43cc-ba2c-7dcaae63daa9",
"room_external_id": "EXT-ID-123",
"description": "My room description",
"friendly_url": "myRoom",
"room_is_deleted": false,
"participants_live": 3,
"participants_total": 8,
"participants_max": 5,
"live": true
},
{
"id": "cbe49091-3b4d-4c1b-9ea6-bdf6594e799d",
"start_time": "2024-03-21T05:19:31.000000Z",
"end_time": "2024-03-21T05:29:31.000000Z",
"room_id": "5b9ca00e-656e-43cc-ba2c-7dcaae63daa9",
"room_external_id": "EXT-ID-123",
"description": "My room description",
"friendly_url": "myRoom",
"room_is_deleted": false,
"participants_total": 10,
"participants_max": 5,
"live": false
}
],
"total_count": "2"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get session statistics.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/{session}';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/{session}"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/sessions/{session}" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"room_id": "13a5aa53-f4da-470b-bfd0-63dd9e5dd81d",
"room_external_id": "EXTID123",
"room_description": "Some public room",
"room_friendly_url": "MyPublicRoom",
"room_privacy": "public",
"room_source": "api",
"room_max_participants": 100,
"room_is_deleted": false,
"session_id": "0c843bf8-d245-450c-94fb-31e8a861bfaf",
"session_duration": 60,
"session_live": false,
"session_start_time": "2022-05-09T15:25:21Z",
"session_end_time": "2022-05-09T15:57:25Z",
"participation_minutes": 67,
"desktop_participation_minutes": 50,
"mobile_participation_minutes": 10,
"tablet_participation_minutes": 7,
"smarttv_participation_minutes": 0,
"broadcasted_minutes": 15,
"subscribed_minutes": 0,
"screen_broadcasted_minutes": 0,
"screen_subscribed_minutes": 0,
"live_participants": 0,
"active_participants": 4,
"desktop_participants": 2,
"mobile_participants": 1,
"tablet_participants": 1,
"smarttv_participants": 0,
"max_concurrent_participants": 3,
"transcription_minutes": 20,
"e2ee_minutes": 0,
"recorded_minutes": 90,
"stored_recorded_minutes": 60,
"whiteboard_minutes": 0,
"captions_minutes": 10,
"breakout_minutes": 0,
"presentation_minutes": 0,
"active_roles": 2,
"public_chat_posts": 52,
"questions": 2,
"answers": 3,
"polls": 1
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get session summary.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summary';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summary"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/summary" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200, When summary is in progress):
{
"job_id": "ebdc6214-33c7-46df-a38d-a77f0a19c4ce",
"status": "IN_PROGRESS",
"summary": ""
}
Example response (200, When summary is ready):
{
"job_id": "ebdc6214-33c7-46df-a38d-a77f0a19c4ce",
"status": "READY",
"summary": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get session transcripts.
requires authentication
Closed Captioning.
Paginated
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'limit' => '20',
'offset' => '0',
'order' => 'asc',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts"
);
const params = {
"limit": "20",
"offset": "0",
"order": "asc",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts?limit=20&offset=0&order=asc" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"total_count": 3,
"data": [
{
"participant_id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"participant_name": "John Smith",
"transcript": "Morning. How are you?",
"start_time": "2024-04-10T12:18:27Z",
"end_time": "2024-04-10T12:33:27Z"
},
{
"participant_id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"participant_name": "Jane Doe",
"transcript": "I am fine, thanks! What about you?",
"start_time": "2024-04-10T12:10:27Z",
"end_time": "2024-04-10T12:31:27Z"
},
{
"participant_id": "f06e6600-9424-4dc0-8e7d-a968df2c983d",
"participant_name": "John Doe",
"transcript": "Hi all!",
"start_time": "2024-04-10T12:06:27Z",
"end_time": "2024-04-10T12:33:27Z"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Export session transcripts.
requires authentication
Closed Captioning.
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts/export';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'format' => 'txt',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts/export"
);
const params = {
"format": "txt",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/sessions/a853d608-e6cf-48eb-a3c9-7d089bbc09b0/transcripts/export?format=txt" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
Text file - Transcripts
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
End the specified live session.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/sessions/d30e392f-7fa4-4476-a80b-9bf83fd4c012/end';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/sessions/d30e392f-7fa4-4476-a80b-9bf83fd4c012/end"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
curl --request POST \
"https://api.digitalsamba.com/api/v1/sessions/d30e392f-7fa4-4476-a80b-9bf83fd4c012/end" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Statistics
Get team global statistics by period.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/statistics';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/statistics"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/statistics" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"participation_minutes": 3500,
"desktop_participation_minutes": 1500,
"mobile_participation_minutes": 1000,
"tablet_participation_minutes": 900,
"smarttv_participation_minutes": 100,
"broadcasted_minutes": 2500,
"subscribed_minutes": 1000,
"screen_broadcasted_minutes": 1000,
"screen_subscribed_minutes": 100,
"active_participants": 35,
"max_concurrent_participants": 10,
"desktop_participants": 15,
"mobile_participants": 10,
"tablet_participants": 10,
"smarttv_participants": 5,
"sessions": 10,
"rooms": 5,
"max_concurrent_sessions": 3,
"max_concurrent_participants_per_session": 10,
"live_participants": 10,
"recorded_minutes": 590,
"max_active_recorders": 3,
"transcription_minutes": 520,
"e2ee_minutes": 850,
"stored_recorded_minutes": 960,
"whiteboard_minutes": 59,
"captions_minutes": 65,
"active_roles": 2,
"custom_roles": 3,
"breakout_minutes": 860,
"presentation_minutes": 52,
"public_chat_posts": 125,
"questions": 5,
"answers": 10,
"polls": 5,
"summaries": 7,
"date_start": "2024-03-07",
"date_end": "2024-04-07"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get team global statistics by current period.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/statistics/team/current';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/statistics/team/current"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/statistics/team/current" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
Example response (200):
{
"participation_minutes": 3500,
"desktop_participation_minutes": 1500,
"mobile_participation_minutes": 1000,
"tablet_participation_minutes": 900,
"smarttv_participation_minutes": 100,
"broadcasted_minutes": 2500,
"subscribed_minutes": 1000,
"screen_broadcasted_minutes": 1000,
"screen_subscribed_minutes": 100,
"active_participants": 35,
"max_concurrent_participants": 10,
"desktop_participants": 15,
"mobile_participants": 10,
"tablet_participants": 10,
"smarttv_participants": 5,
"sessions": 10,
"rooms": 5,
"max_concurrent_sessions": 3,
"max_concurrent_participants_per_session": 10,
"live_participants": 10,
"recorded_minutes": 590,
"max_active_recorders": 3,
"transcription_minutes": 520,
"e2ee_minutes": 850,
"stored_recorded_minutes": 960,
"whiteboard_minutes": 59,
"captions_minutes": 65,
"active_roles": 2,
"custom_roles": 3,
"breakout_minutes": 860,
"presentation_minutes": 52,
"public_chat_posts": 125,
"questions": 5,
"answers": 10,
"polls": 5,
"summaries": 7,
"date_start": "2024-03-07",
"date_end": "2024-04-07"
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get team statistics for current period.
requires authentication
Example request:
$client = new \GuzzleHttp\Client();
$url = 'https://api.digitalsamba.com/api/v1/statistics/current';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {DEVELOPER_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
"https://api.digitalsamba.com/api/v1/statistics/current"
);
const headers = {
"Authorization": "Bearer {DEVELOPER_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
curl --request GET \
--get "https://api.digitalsamba.com/api/v1/statistics/current" \
--header "Authorization: Bearer {DEVELOPER_KEY}" \
--header "Content-Type: application/json" \
--header