Tenant object fields
Tenants exist in multi-tenant deployments only. The tenant endpoints are available to administrators of the System tenant and to roles with the All Tenants or Selected Tenants access scope.
Example of a tenant object:
{
"tenant": {
"tenant_id": "34c7f1f6-9201-11e5-a739-e03f497dbdff",
"name": "Acme",
"timezone": "America/Los_Angeles",
"language": null,
"domain": "acme.example.com",
"encrypt_data": false,
"fieldset_licensing": {
"recording_seats": 50,
"recording_sessions": null,
"screen_recording_seats": 0,
"monitoring_seats": 10,
"evaluation_seats": 10,
"speech_analytics": 50
},
"fieldset_storage_limits": {
"storage_limits_enable": true,
"audio_storage_limit": {"size": 500.0, "minutes": null, "days": 365},
"screen_storage_limit": {"size": null, "minutes": null, "days": 90}
},
"fieldset_rate_limits": {
"api_requests": {"per_minute": 100, "per_day": 4000},
"web_requests": {"per_minute": null, "per_day": null},
"cpu_time": {"per_minute": null, "per_day": null}
},
"fieldset_service_limits": {
"llm_user": {"per_month": null, "lifetime": null},
"llm_org": {"per_month": 2000000, "lifetime": null},
"stt_user": {"per_month": null, "lifetime": null},
"stt_org": {"per_month": 60000, "lifetime": null},
"copilot_user": {"per_month": null, "lifetime": null},
"copilot_org": {"per_month": null, "lifetime": null}
},
"fieldset_associate_calls": {
"extension_type": "phone_number",
"extension_uniqueness": "tenant",
"associate_calls": "broadworks_group",
"associate_calls_condition": "BroadWorks-serviceProviderID = \"AcmeProvider\" AND BroadWorks-groupID = \"AcmeGroup\"",
"broadworks_sp_id": "AcmeProvider",
"broadworks_group_id": "AcmeGroup",
"metaswitch_system": null,
"metaswitch_group": null,
"cisco_partition": null,
"sip_uri_host": null,
"record_unknown_users": "record"
},
"fieldset_auto_provision": {
"auto_provision_enable": true,
"group_id": "47f53fcc-9201-11e5-b4ef-e03f497dbdff",
"role_id": "34cafffe-9201-11e5-b516-e03f497dbdff",
"record": "always",
"can_login": false,
"authenticate_type": "password",
"extension_to_login_match_pattern": null,
"extension_to_login_translation_rule": null,
"licenses": ["recording_seat"]
},
"fieldset_recording": {
"LookBackOnDemandRecording": "",
"PauseRecordingTimeout": null,
"voip_protocol": null,
"record_announcement": null,
"record_announcement_per_user": false
},
"fieldset_screen_recording": {
"screen_rec_enable": false
},
"fieldset_audio": {
"FileExtension": "mp3",
"Stereo": "1",
"UseAGC": "",
"UsePLC": "",
"Mp3Bitrate": "16"
}
}
}
Attributes
| Attribute | Type | Description |
|---|---|---|
tenant_id |
UUID | Unique ID of the tenant, assigned by MiaRec when the tenant is created. Read-only. |
| name | string | Tenant name. Required. 1 to 64 characters, unique within the system. |
| timezone | string or null | Default time zone for all users of the tenant, for example America/Los_Angeles. When null, the system default is used. Groups and users can override it. |
| language | string or null | Default user interface language, for example en_US. When null, the system default is used. |
| domain | string or null | Domain name of the tenant (without http:// and port), unique within the system. |
encrypt_data |
boolean | Encrypt audio files of this tenant with its encryption key. Applies to new calls only. An active encryption key must be configured. |
fieldset_licensing |
dictionary | License allocation. |
fieldset_storage_limits |
dictionary | Storage limits. |
fieldset_rate_limits |
dictionary | Rate limits. |
fieldset_service_limits |
dictionary | Service limits. |
fieldset_associate_calls |
dictionary | Association of calls with the tenant. |
fieldset_auto_provision |
dictionary | User auto-provisioning. |
fieldset_recording |
dictionary | Recording settings. |
fieldset_screen_recording |
dictionary | Screen recording. |
fieldset_audio |
dictionary | Audio format. |
Fieldset "fieldset_licensing"
License allocation for the tenant. For each license type, either pre-allocate a fixed number of
licenses (from 0), or set null for dynamic allocation: the tenant takes as many licenses from the
global pool as it has users that require them.
| Attribute | Type | Description |
|---|---|---|
recording_seats |
integer or null | Call recording seats. |
recording_sessions |
integer or null | Call recording sessions. |
screen_recording_seats |
integer or null | Screen recording seats. |
monitoring_seats |
integer or null | Live monitoring seats. |
evaluation_seats |
integer or null | Agent evaluation seats. |
speech_analytics |
integer or null | Speech analytics seats. |
Fieldset "fieldset_storage_limits"
| Attribute | Type | Description |
|---|---|---|
storage_limits_enable |
boolean | Enable storage limits for the tenant. |
audio_storage_limit |
dictionary | Limits for audio recordings: size (GB, number or null), minutes (integer or null), days (integer or null). null means unlimited. |
screen_storage_limit |
dictionary | Limits for screen recordings, in the same format. |
Fieldset "fieldset_rate_limits"
Request quotas that protect the platform from a single tenant's traffic. Each entry has
per_minute and per_day (integer or null, null means unlimited).
| Attribute | Description |
|---|---|
api_requests |
REST API requests. See Rate limits. |
web_requests |
Web portal requests. |
cpu_time |
CPU time in minutes. |
Fieldset "fieldset_service_limits"
Consumption limits for AI services. Each entry has per_month and lifetime (integer or null,
null means unlimited).
| Attribute | Description |
|---|---|
llm_user |
LLM tokens per user. |
llm_org |
LLM tokens for the whole tenant. |
stt_user |
Transcription minutes per user. |
stt_org |
Transcription minutes for the whole tenant. |
copilot_user |
AI assistant (copilot) tokens per user. |
copilot_org |
AI assistant (copilot) tokens for the whole tenant. |
Fieldset "fieldset_associate_calls"
| Attribute | Type | Description |
|---|---|---|
extension_type |
string | What a user extension matches against:
|
extension_uniqueness |
string | Whether extensions must be unique system-wide or within the tenant only:
|
associate_calls |
string or null | How calls are attributed to this tenant. Useful when tenants have overlapping extensions:
|
broadworks_sp_id |
string or null | BroadWorks service provider ID. Used when associate_calls is broadworks_group. |
broadworks_group_id |
string or null | BroadWorks group ID. Used when associate_calls is broadworks_group. |
metaswitch_system |
string or null | Metaswitch system name. Used when associate_calls is metaswitch_group. |
metaswitch_group |
string or null | Metaswitch group name. Used when associate_calls is metaswitch_group. |
cisco_partition |
string or null | Cisco partition name. Used when associate_calls is cisco_partition. |
sip_uri_host |
string or null | SIP URI host. Used when associate_calls is sip_uri_host. |
associate_calls_condition |
string or null | Recording filter condition, up to 1024 characters. Used when associate_calls is condition. The easiest way to get the syntax right is to configure a reference tenant in the web portal and copy the generated condition. |
record_unknown_users |
string | What to do with calls that match the tenant but no user:
|
Fieldset "fieldset_auto_provision"
When a call of an unknown user is detected and auto-provisioning is enabled, MiaRec creates a user
account automatically. Auto-provisioning works only when record_unknown_users is record.
| Attribute | Type | Description |
|---|---|---|
auto_provision_enable |
boolean | Enable user auto-provisioning. Default false. |
group_id |
UUID or null | Group in which new users are created. |
role_id |
UUID or null | Role assigned to new users. |
| record | string | Recording rule of new users: always (default) or ondemand. |
can_login |
boolean | Grant web portal access to new users. Default false. |
authenticate_type |
string | Authentication type of new users: password (default), ldap, broadworks_webportal, metaswitch_commportal, or saml. |
extension_to_login_match_pattern |
string or null | Regular expression that extracts the login from the extension, up to 255 characters. For example, \+1([0-9]{10}).*. |
extension_to_login_translation_rule |
string or null | Translation rule that builds the login from the captured groups, up to 64 characters. For example, <1>. |
| licenses | list | Licenses allocated to new users: recording_seat, screen_recording_seats, monitoring_seat, evaluation_seat, speech_analytics. |
Fieldset "fieldset_recording"
| Attribute | Type | Description |
|---|---|---|
| LookBackOnDemandRecording | string | "Look-back" on-demand recording: record from the beginning of the call ("1") or from the moment recording is triggered ("0"). "" uses the system default. |
| PauseRecordingTimeout | integer or null | Seconds after which a paused recording resumes automatically, 0 to 3600. 0 disables the timeout, null uses the system default. |
voip_protocol |
integer or null | Recording interface of the tenant, or null for the system default. The codes are the same as voip_protocol of a call. |
record_announcement |
integer or null | Recording announcement: 1 always, 4 never, 0 default. null when not set. |
record_announcement_per_user |
boolean | Enable per-user recording announcement settings. |
Fieldset "fieldset_screen_recording"
| Attribute | Type | Description |
|---|---|---|
screen_rec_enable |
boolean or null | Enable screen recording for the tenant. |
screen_rec_token_reset |
list | Write-only. Pass [true] to reset the screen recording token of the tenant. |
Fieldset "fieldset_audio"
All values are strings. An empty string means "use the system default".
| Attribute | Description |
|---|---|
| FileExtension | File format: wav, mp3, or auto. |
| Stereo | "0" mono, "1" stereo. |
| UseAGC | Automatic gain control: "0" no, "1" yes. |
| UsePLC | Packet loss concealment: "0" no, "1" yes. |
| Mp3Bitrate | MP3 bitrate in kbps: 8, 16, 24, 32, or 64. |