A POST request to / sets top-level configuration options for your domain.

The request returns a domain object on success. On failure, it returns an HTTP error.

Body params

Deprecated properties are labelled with a red warning icon.
If you are currently using a deprecated property, update your implementation accordingly or contact support for more information.


Sets whether all rooms under the domain use Daily Prebuilt or the previous video chat interface.

default: false for existing customers; true for new signups

Default: true | false (see above)

Determines if Daily Prebuilt displays the People UI. When set to true, a People button in the call tray reveals a People tab in the call sidebar. The tab lists all participants, and next to each name indicates audio status and an option to pin the participant. When enable_people_ui is set to false, the button and tab are hidden.

⚠️ Has no effect on custom calls built on the Daily call object.

Default: true

Sets whether rooms for this domain can use Daily Prebuilt's Picture in Picture controls. When set to true, an additional button will be available in Daily Prebuilt's UI to toggle the Picture in Picture feature.

⚠️ This flag only applies to Daily Prebuilt. It has no effect when building custom video applications with the Daily call object.

⚠️ This property is in beta as of daily-js 0.24.0.

Default: false

Determines whether participants enter a waiting room with a camera, mic, and browser check before joining a call in any room under this domain.

⚠️ You must be using Daily Prebuilt to use enable_prejoin_ui.

Default: true

Determines whether the network button, and the network panel it reveals on click, appears across all rooms belonging to this domain.

default: false

⚠️ You must be using Daily Prebuilt to use enable_network_ui.

Default: false

This field expects a lowercase string formatted with your transcription provider, a colon, and the API key for use of their service. (e.g. "deepgram:YOUR_API_KEY_HERE")

Supported provider fields:

When this field is configured, the startTranscription() and stopTranscription() instance methods may be used in any room by room owners.


Determines whether Daily Prebuilt displays background blur controls. When set to true, a participant can enable blur during a Daily Prebuilt call.

⚠️ This flag only applies to Daily Prebuilt. It has no effect when building custom video applications with the Daily call object.

Default: true

Whether "Powered by Daily" displays in the in-call UI.

(For meetings that open in a separate browser tab.) When a user clicks on the in-call menu bar's "leave meeting" button, the browser loads this URL. A query string that includes a parameter of the form recent-call=<domain>/<room> is appended to the URL. On mobile, you can redirect to a deep link to bring a user back into your app.

Email us at to turn on HIPAA. Learn more about our HIPAA compliance.

Whether to automatically start recording when an Intercom support agent joins an Intercom-created call. Please see our Intercom Messenger App page for more information.

⚠️This method is read-only; please contact us if you'd like to enable intercom call auto-recording.


The default language for the video call UI, for all calls.

If you set the language at this domain level, you can still override the setting for specific rooms in a room's configuration properties, or for a specific participant in a meeting token.

You can also set the language dynamically using the front-end library setDailyLang() method.

* Norwegian "no" and Russian "ru" are only available in the new Daily Prebuilt.

Options: "de","en","es","fi","fr","it","jp","ka","nl","no","pt","pl","ru","sv","tr","user"
Default: "en"

Sets a URL that will receive a webhook when a user joins a room.

Default: NULL

Daily calls use signaling servers to manage all of the participants in a given call session. In an SFU/server mode call, that same server will also send and receive all the audio and video from each participant. In a peer-to-peer call, each participant sends media directly to and from each other peer, but a signaling server still manages call state.

Daily runs servers in several different AWS regions to minimize latency for users around the world. The job of 'picking' a call server is handled when the first participant joins a room. Their browser connects to a call server using Amazon's Route 53 DNS resolution, which chooses a server in the region closest to them.

This isn't always optimal. For example, if one person joins in London, and then ten more people join from Cape Town, the call will still be hosted out of eu-west-2 . The majority of the participants will have higher latency to the server than if one of them had joined first and the call was being hosted in af-south-1. In cases like this, you may want to configure your domain (or a specific room) to always choose a call server in a specific AWS region.

Available regions:

  • "af-south-1" (Cape Town)
  • "ap-northeast-2" (Seoul)
  • "ap-southeast-1" (Singapore)
  • "ap-southeast-2" (Sydney)
  • "ap-south-1" (Mumbai)
  • "eu-central-1" (Frankfurt)
  • "eu-west-2" (London)
  • "sa-east-1" (São Paulo)
  • "us-east-1" (N. Virginia)
  • "us-west-2" (Oregon)
Default: NULL

Used to select the region where an RTMP stream should originate. In cases where RTMP streaming services aren't available in the desired region, we'll attempt to fall back to the default region based on the SFU being used for the meeting.

Available regions:

  • "us-west-2" (Oregon)
  • "eu-central-1" (Frankfurt)
  • "ap-southeast-1" (Singapore)

The default regions are grouped based on the SFU region like so:

  • RTMP region "us-west-2" includes SFU regions: "us-west-2", "us-east-1", "sa-east-1"
  • RTMP region "eu-central-1" includes SFU regions: "eu-central-1", "eu-west-2", "af-south-1"
  • RTMP region "ap-southeast-1" includes SFU regions: "ap-southeast-1", "ap-southeast-2", "ap-northeast-2", "ap-south-1"
Default: The closest available region to the SFU region used by the meeting.

Reduces the volume of log messages. This feature should be enabled when there are more than 300 participants in a meeting to help improve performance.

See our guide for supporting large calls for additional instruction.

Default: false

Configures a room to use multiple SFUs for a call's media. This feature enables calls to scale to large sizes and to reduce latency between participants. It is recommended specifically for interactive live streaming.

See our guide for supporting large calls for additional instruction.

Default: NULL

Configures an S3 bucket in which to store recordings.

The name of the Amazon S3 bucket to use for recording storage.

The region which the specified S3 bucket is located in.

The Amazon Resource Name (ARN) of the role Daily should assume when storing the recording in the specified bucket.

Whether the recording should be accessible using Daily's API.

Example requests

Set a domain property

Unset a domain property

To unset any domain configuration property — in other words, to reset any property to its default value — set the property to null. For example: