How to Configure Your Team Settings with the Digital Samba Developer API

7 min read
September 13, 2023

Configuring team settings can be a crucial step in optimising workflow and productivity in your video conferences. One way to do this is by using an API, which provides you with a more granular way to customise your digital interactions.

Table of Contents 

  1. How do you get started?
  2. How do you add members to your team?
  3. How do you assign team roles to team members?
  4. How to configure your default room settings

In this article, we'll explore how to configure your team settings using the Digital Samba Developer API. We’ll go through a step-by-step guide on how to set up your team, assign team roles and how to configure your default room settings.

How to get started?

Before we delve into configuring your team settings using the Developer API, it's important to remember that much of the setup process will actually take place through the dashboard. But before we get into the nitty-gritty details of team settings, let's start by defining what a team is in the context of Digital Samba.

A team in Digital Samba refers to a group of individuals who collaborate on integrating the Digital Samba API or SDK into a website or application. This team typically includes developers, as well as any other users who need to manage and configure your rooms at an advanced level.

To function effectively within Digital Samba, each team must have at least one designated owner. Additionally, teams may also include one or more administrators and members, depending on your specific needs and requirements.

How do you create a team?

The first step in setting up your team is creating a room. When you sign up for a Digital Samba account, a team will be created automatically. As part of the sign-up process, you'll also be asked to set up your team by adding a subdomain, which serves as a unique identifier for your team. 

set up your team by adding a subdomain - Digital Samba-1

Digital Samba will then use your subdomain to create a branded domain displayed in the link you use to invite participants to virtual meetings. 

For instance, if you use ‘lecture-room’ as your subdomain, your branded subdomain will be - https://lecture-room.digitalsamba.com/room. You can edit your subdomain later if need be.

How to authenticate REST API requests when creating a room

During the sign-up process, you'll also be provided with your developer key and team ID, which are essential for authentication when making requests to the Digital Samba REST API. Don't worry if you miss this step, you can easily access your developer key and team ID later by navigating to the Room window on your dashboard.

How to authenticate REST API requests when creating a room - Digital Samba-1

To see your team settings and room settings in action, you'll need to create a room. To do this, you'll need to make a POST request to the v1/rooms endpoint. First, you'll need to use your developer key and team ID to authenticate the request. Here's an example of how to make a POST request:

 
const url = new URL(
    "https://api.digitalsamba.com/api/v1/rooms"
);
const headers = {
    "Authorization": "Bearer base64(teamId:teamDeveloperKey)",
    "Content-Type": "application/json",
    "Accept": "application/json",
};
let body = {
    "topic": "standup",
    "friendly_url": "my-standup",
    "privacy": "public",
    "external_id": "myExtID123",
    "default_role": "moderator",
    "roles": [
        "moderator"
    ],
    Room settings to be set are added here.
};
fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

IMPORTANT: Avoid sharing your developer key with external sources or embedding it in front-end code. You should treat it with the same caution as a password, safeguarding it as diligently as your other confidential information and secrets.

The POST request you just sent will create a new room with the default room settings. We’ll cover how to configure your default room settings in a later section.

How do you add members to your team?

Now that you've set up your sub-domain and created a new room, it's time to add members to your team. 

One great feature of Digital Samba is that it automatically generates a default demo room for each team that signs up. This means you can conveniently try out your team settings without the need to create a new room from scratch.

Demo room - Digital Samba-3

To add team members, simply head over to the 'Team' window and click the 'Add member' button.

Add member button - Digital Samba-1

You’ll then be presented with an invite link that you can copy and send to invite your team members.  The link will direct them to the Digital Samba sign-up page where they can sign up as a team member.

How do you assign team roles to team members?

As a new member, you'll see yourself listed in the ‘Team Members’ section with your work email address, role, and joining date. The team owner role is auto-assigned to the user who creates the team.

the ‘Team Members’ section - Digital Samba-1

Team roles and permissions

Digital Samba offers three team roles: owner, admin, and member. 

  1. The team owner is created automatically when a new team is formed and has complete control over managing the account, including billing and product upgrades. 
  2. Team admins have similar privileges to the team owner but cannot manage to bill or remove the team owner. They can add and remove team members and assign team roles. 
  3. Team members can participate in all activities except adding or removing team members, assigning roles, and configuring room defaults. 

There can be an unlimited number of admins and members in a team but only one team owner, making collaboration and delegation of tasks efficient. You can explore more about the team roles and permissions on our documentation.

How do you assign team roles and promote or demote your team members?

To assign a team role, simply click on the three dots next to the team members' details in the Team window. 

How do you assign team roles and promote or demote your team members

As a team owner, you'll have several options for managing team membership. You can promote a team member to a team admin by selecting the ‘Promote’ option. Conversely, you can demote a team admin to a team member using the ‘Demote’ option. 

Additionally, you can remove team members entirely using the ‘Remove’ option. These options give you flexibility in managing your team's structure and roles.

How to configure your default room settings

After setting up your team, you can customise your default room settings to suit your needs.  These settings serve as a foundation for newly created rooms, so it's important to configure them properly to maintain a consistent look and feel across all your rooms. This will help reinforce your brand identity and create a cohesive environment for your team.

With the Developer API, you can see or edit the default room settings for your team.

How to view your current default room properties

Before you start configuring your default room settings, you have the option to view and review the current properties. To do so, simply make a GET request against the root/ endpoint, as follows:

const url = new URL(
    "https://api.digitalsamba.com/api/v1"
);


const headers = {
    "Authorization": "Bearer base64(teamId:teamDeveloperKey)",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json())

This will return a list of the current default room properties, which you can then use to inform your configuration decisions. Here’s an example of a response with a few set properties such as an enabled toolbar, toolbar positioned at the bottom and the layout mode on join set to tiled among other properties.

{
    "id": "8180cbb0-970b-44f9-8519-84da13a47531",
    "owner_id": "509cebed-e534-442e-82a2-a35c5f86e074",
    "domain": "dd4869fc183c2ebb09e937251d25c83c",
    "is_locked": false,
    "topbar_enabled": true,
    "toolbar_enabled": true,
    "toolbar_position": "bottom",
    "recordings_enabled": true,
    "recording_logo_enabled": true,
    "virtual_backgrounds_enabled": true,
    "raise_hand_enabled": true,
    "participant_names_in_recordings_enabled": true,
    "invite_participants_enabled": true,
    "recordings_layout_mode": "tiled",
    "layout_mode_on_join": "tiled",
    "default_role": {
        "id": "e1a80f54-5172-42f5-8af3-49053e62173f",
        "name": "moderator",
        "display_name": "Moderators"
    },
    "custom_cname": null,
    "internal": null,
    "can_caption": true,
    "max_participants": 50
}

 

How to configure your default room settings with the Digital Samba Developer API

To configure your default room settings, you must execute a PATCH request against the /api/v1 endpoint, as highlighted below. 

  1. const url = new URL(
  2.     "https://api.digitalsamba.com/api/v1"
  3. );
  4.  
  5. const headers = {
  6.     "Authorization": "Bearer base64(teamId:teamDeveloperKey)",
  7.     "Content-Type": "application/json",
  8.     "Accept": "application/json",
  9. };
  10.  
  11. let body = {
  12.     "domain": "lecture-room",
  13.     "default_role": "moderator",
  14.     "roles": [
  15.         "moderator"
  16.     ],
  17.     Fields_you_want_to_edit_go_here
  18. };
  19.  
  20. fetch(url, {
  21.     method: "PATCH",
  22.     headers,
  23.     body: JSON.stringify(body),
}).then(response => response.json());

For example, suppose your goal is to ensure a uniform brand identity throughout your video conferences. In that case, you can achieve this by implementing the following settings: position the toolbar on the right and colour it blue to match your brand's primary colour, use a light blue hue as the primary colour and set the background to white for minimal distractions, enable chat for seamless communication and select English as the UI language for universality.

const url = new URL(
    "https://api.digitalsamba.com/api/v1"
);


const headers = {
    "Authorization": "Bearer base64(teamId:teamDeveloperKey)",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


let body = {
    "domain": "lecture-room",
    "default_role": "moderator",
    "roles": [
        "moderator"
    ],
    "toolbar_enabled": true,
    "toolbar_position": "right",
    "toolbar_color": "#0000FF",
    "primary_color": "#ADD8E6",
    "background_color": "#FFFFFF",
    "language": "en",
    "chat_enabled": true,
    "logo_enabled": true,
};


fetch(url, {
    method: "PATCH",
    headers,
    body: JSON.stringify(body),
})

With the Digital Samba video conferencing API, you can update as many fields for your room settings as you wish. See our documentation for a more detailed list of the fields you can configure.

With your team settings in place and you’ve configured your default room settings to match your brand, your participants and team members can now seamlessly engage in virtual communication, fostering effective collaboration and shared understanding.

Create your virtual conferencing team today with Digital Samba leveraging our Developer API.

Get started today with a free account and 10,000 free participant minutes of HD-quality video calls. 

Request a free consultation with our dev team
Add customisable video calls to your website or application with the Digital Samba API
Get a consultation

 

Get Email Notifications