Purpose

The Settings page holds the deployment-wide configuration that every bot, call, and campaign relies on. It is not a per-bot screen — what you change here applies across the whole platform. Open it at /dashboard/settings. The page is divided into sections, and each section saves on its own with its own Save button. Changing one section and clicking its Save button does not touch the others.
Settings is a super-admin screen. The credentials, storage, and infrastructure controls on this page affect every call the platform makes. Treat changes here as deployment-wide and coordinate them with your administrator.
This page covers five sections:
Every section follows the same pattern: change the fields, then click that section’s Save button. While a save is in flight the button reads “Saving…” and is disabled; on success a confirmation message appears and the button re-enables.

Display timezone

The display timezone controls how all timestamps are rendered across the console — call logs, the users table, API key dates, and every other date you see. It changes only how times are displayed; it does not change when anything actually happened. On first load the dropdown defaults to your browser’s timezone. Once you save a choice it is remembered and persists across sessions.

Field

FieldWhat to enterRequired
TimezonePick the timezone you want timestamps shown in. Options are UTC (default), Asia/Kolkata (IST), America/New_York (EST), America/Chicago (CST), America/Los_Angeles (PST), Europe/London (GMT), Europe/Berlin (CET), Asia/Dubai (GST), Asia/Singapore (SGT), Asia/Tokyo (JST), and Australia/Sydney (AEST).Yes

Button

ButtonWhat happens when you click
Save TimezoneSaves the selected timezone to the platform and caches it locally. Shows “Saving…” while in progress. On success a “Timezone updated” message appears and the button re-enables. Disabled while saving.
For Ori operations, set this to Asia/Kolkata (IST) so call-log and report times line up with your working day.

Voice-engine API keys

This section stores the credentials the platform uses to reach the speech, language, and voice engines that power your bots. Each field holds the key for one engine. None of these fields is individually required — you only need to fill in keys for the engines your bots actually use — but a bot configured to use an engine whose key is missing will fail.

How a key is displayed

Once a key is saved, the field no longer shows the value. Instead it displays a masked placeholder with a Replace button beside it, so a saved credential can never be read back off the screen.
ButtonWhat happens when you click
Replace (per key field)Clears that field and switches it to edit mode so you can paste a new value over the existing one. Only appears when the field already has a saved key.
To enter a key for the first time, the field is an empty input — just paste the value in. To change a key that is already set, click Replace first, then paste the new value.

Fields

Each field accepts the credential for a category of voice engine. The platform refers to these by role rather than vendor.
FieldWhat to enterRequired
Speech-to-Text (STT) engine keyThe API key for a speech-to-text engine — the service that transcribes what the caller says. Paste the key provided for the engine your bots transcribe with.No
Speech-to-Text (STT) engine key (second engine)The API key for an alternate STT engine, if your deployment uses more than one transcription provider.No
Language model (LLM) keyThe API key for a language-model engine — the service that decides what the bot says next. Paste the key for the LLM your bots run on.No
Language model (LLM) gateway keyThe API key for an LLM gateway, if your bots reach language models through a routing service rather than a single provider directly.No
Language model (LLM) key (alternate engine)The API key for an additional LLM engine, if your bots use more than one.No
Language model (LLM) service-account JSONThe full contents of the cloud service-account JSON key file for an enterprise LLM platform. This field is a multi-line box in a fixed-width font. Paste the entire contents of the .json key file, not just a single key string.No
Voice / Text-to-Speech (TTS) engine keyThe API key for a text-to-speech engine — the service that turns the bot’s words into spoken audio.No
Voice / Text-to-Speech (TTS) engine key (second engine)The API key for an alternate TTS engine, if your deployment uses more than one voice provider.No
The service-account field expects the whole JSON file, pasted in full — open the .json key file, copy everything from the opening { to the closing }, and paste it into the box.

Button

ButtonWhat happens when you click
Save API KeysSaves every key field to the platform. Shows “Saving…” while in progress. On success an “API keys updated” message appears and the button re-enables. Disabled while saving.
Keys are stored on the backend and are never sent back to the screen in full — once saved, you can only Replace a key, not view it. If you lose a key, you must paste it in again from your own records; the console cannot show it to you.

Dialler screening defaults

This section configures answering-machine detection (AMD) — how the dialler listens to a just-answered outbound call to decide whether a real person or a voicemail machine picked up, before it attaches the call to a bot. Getting these values right keeps conversation minutes from being spent on voicemail greetings. These are deployment-wide defaults applied to every outbound call. For what AMD does and how to read its results on a campaign, see Answering-machine detection.
The defaults below are tuned to work out of the box. Only change them if you are deliberately re-tuning AMD and understand the trade-off between catching more machines and accidentally dropping real people.

Toggles

FieldWhat it doesRequired
AMD screeningTurns answering-machine detection on or off for outbound calls. When off, answered calls skip screening and go straight to the bot.No
Beep detectionTurns voicemail-beep-tone detection on or off as part of screening.No

Timing and detection fields

All time-based fields are in milliseconds (ms). Each field has a minimum and maximum; if you clear a field and click away, it snaps back to its default rather than staying empty.
FieldWhat to enterDefaultAllowed rangeRequired
Total Analysis (ms)Total time spent analysing the greeting and silence before deciding.2000500–5000Yes
Initial Silence (ms)How long silence is allowed before a greeting is expected.2000500–5000Yes
Greeting Limit (ms)Maximum time allotted for the greeting message.2000500–5000Yes
After Greeting Silence (ms)Silence expected after the greeting ends.1000100–3000Yes
Minimum Word (ms)Shortest sound counted as a word.12020–1000Yes
Between Words Silence (ms)Silence expected between detected words.5020–1000Yes
Max WordsMost words to detect in the greeting before deciding.41–12Yes
Silence ThresholdAudio level below which the line is treated as silent.25664–2048Yes
Max Word Length (ms)Longest a single word can last before it is no longer treated as one word.50001000–10000Yes
Beep Minimum (ms)Shortest tone counted as a voicemail beep.12040–1000Yes

Action fields

These two dropdowns decide what the dialler does once screening produces a result.
FieldOptionsDefaultWhat it controls
Machine Action”Tear down and mark amd_machine” or “Continue to bot”Tear downWhat happens when a machine is detected. The default ends the call and labels it as a machine so no minutes are spent on voicemail.
Unknown Action”Continue to bot” or “Tear down”Continue to botWhat happens when the result is uncertain. The default attaches the bot anyway, so a real person is never dropped by mistake.

Button

ButtonWhat happens when you click
Save Dialler SettingsSaves every screening field to the backend. Shows “Saving…” while in progress. On success a “Dialler settings updated” message appears and the button re-enables. Disabled while saving.

Recording storage

This section tells the platform where to store call recordings, using S3-compatible object storage. If this is not configured correctly, recordings are not saved and will not be available for playback.

Fields

FieldWhat to enterRequired
EndpointThe storage endpoint URL, for example https://minio.example.com. Required for the platform to connect to storage. If cleared, recordings stop being stored.Yes
BucketThe storage bucket name recordings are written into, for example recordings. If cleared, recordings stop being stored.Yes
RegionThe cloud region code, for example ap-south-1. Required only for hosted AWS S3. Leave blank for local storage or DigitalOcean Spaces.No
Access KeyThe storage access key ID. If cleared, recordings stop being stored.Yes
Secret KeyThe storage secret access key. After the first save it is shown as a masked value with a Replace button — click Replace to paste a new secret.No

How the Secret Key is handled

The Secret Key works like the voice-engine keys: once saved, it is masked and accompanied by a Replace button. Click Replace to clear it and enter a new secret. This prevents the masked placeholder from being accidentally saved back as the real value.

Button

ButtonWhat happens when you click
Save MinIO ConfigSaves the storage configuration. If you are about to clear any critical field (Endpoint, Bucket, Access Key, or Secret Key), a confirmation appears first — “You are about to clear: [field list]. Recordings will not be stored until these fields are reconfigured. Continue?” — and you must confirm. On success a “MinIO config updated” message appears and the Secret Key is masked for display. Disabled while saving.
If the Endpoint or Bucket is left blank, the platform skips upload entirely and no recordings are stored — there is no recovering audio for calls made while storage was unconfigured. Confirm storage is set before running any campaign you expect to review later.

Fleet URLs

This section holds the list of voice-worker addresses that calls are distributed across. The platform uses this list to load-balance outbound calls; adding a worker here lets it take part in handling calls. You can add, edit inline, and remove URLs in the list, but nothing changes until you click Save Fleet URLs.

Fields

FieldWhat to enterRequired
Fleet URL (each existing row)The address of a voice worker already in the list, for example https://worker.example.com. You can edit it directly in place before saving.Yes
New Fleet URL (input at the bottom)The address of a worker you want to add, for example https://worker.example.com. Type it in and add it with the plus button or by pressing Enter.No

Buttons

ButtonWhat happens when you click
Add URL (plus icon)Adds the address in the New Fleet URL field to the list and clears the input. Only works when the input is not empty. You can also press Enter in the input to add.
Delete URL (X icon, per row)Removes that worker’s URL from the list immediately.
Save Fleet URLsSaves the whole list to the platform. Shows “Saving…” while in progress. On success a “Fleet URLs updated” message appears and the button re-enables. Disabled while saving.
Adding, editing, or deleting a URL only changes the on-screen list. None of it takes effect until you click Save Fleet URLs. Avoid listing the same worker twice — duplicates are accepted but serve no purpose.
To check whether the workers in this list are actually healthy and how much call capacity they provide, use the read-only Fleet status page.

Next steps

Answering-machine detection

What AMD does on a live call and how to read its results on a campaign.

Fleet status

Monitor the health and capacity of the workers you list in Fleet URLs.