Multi-Site Organizations (Enterprises)
Multi-site organizations allow grouping multiple sites under a single enterprise, enabling shared dialing, a unified directory, and centralized administration while preserving per-site isolation for extensions, queues, IVRs, and all other tenant-level configuration.
Overview
Every customer on the platform is an Organization. By default, each organization is a standalone single-site entity. When a customer has multiple offices, branches, or locations, an administrator can create a multi-site Enterprise that groups these organizations as Sites under one umbrella.
Single-site organizations continue to work exactly as before with no changes required.
Terminology
| UI Term | Description |
|---|---|
| Organization | A standalone customer with its own extensions, queues, routing, etc. |
| Enterprise | A parent grouping container for multi-site customers |
| Site | A member organization within an enterprise |
Creating an Enterprise
- Navigate to Organizations in the left menu
- Click Add Enterprise in the toolbar
- Fill in the enterprise details:
- Name — Display name for the enterprise (e.g. “Acme Corporation”)
- Code — Unique short identifier used internally (e.g. “acme-corp”). Lowercase alphanumeric with hyphens/underscores. Cannot be changed after creation.
- Status — Enable or disable the enterprise
- Configure the Settings tab:
- Inter-Site Dialing — How users at different sites can call each other (see below)
- Dialing Prefix — Access code for prefix-based inter-site dialing (default:
*88) - Max Sites — Maximum number of sites allowed (empty = unlimited)
- Max Users — Maximum total users across all sites (empty = unlimited)
- Max Concurrent Calls — Maximum total concurrent calls across all sites (empty = unlimited)
- Click Save
Adding Organizations to an Enterprise
Existing organizations can be added to an enterprise without recreating them. From the Organizations grid, select one or more organizations and click the Assign to Enterprise button in the toolbar. A dialog offers two options:
Promote to New Enterprise
Available when a single organization is selected. This creates a new enterprise with the selected organization as its first site.
- Select one organization in the Organizations grid
- Click Assign to Enterprise
- Choose Promote to New Enterprise
- The enterprise creation form opens, pre-populated with the organization’s name
- Configure the enterprise settings (inter-site dialing, limits, etc.) and click Save
The organization becomes the first site of the new enterprise and receives a dialing code automatically.
Add to Existing Enterprise
Available for one or more selected organizations. This adds them as sites to an enterprise that already exists.
- Select one or more organizations in the Organizations grid
- Click Assign to Enterprise
- Choose Add to Existing Enterprise
- Select the target enterprise from the list
- Confirm the assignment
Each organization is added as a site with an auto-assigned dialing code. Organizations that are already part of an enterprise are skipped. The inter-site dialplan is regenerated automatically.
Managing Sites
Adding a New Site
From within an enterprise, you can also create a brand-new organization as a site:
- Open the Enterprise form
- Go to the Sites tab
- Click Add Site
- Fill in the new site’s details — a default numeric dialing code is assigned automatically
- Save — the site is created and linked to the enterprise
The Sites tab displays a rich data grid showing each site’s status, dialing code, extension counts, DID usage, queue counts, call limits, Contact Center and Teams flags, and tags.
Editing a Site
Double-click a site row or click the pencil icon to open the site’s configuration form. All standard organization settings are available (extensions, routing, features, etc.).
Changing a Site’s Dialing Code
Each site has a Dialing Code field on its configuration form (visible only for sites that belong to an enterprise). To change it:
- Open the site’s form (pencil icon or double-click from the Sites tab)
- Edit the Dialing Code field (appears below the organization name)
- Save the form
The dialing code must be numeric (digits only, up to 16 characters) and unique within the enterprise. Saving the form automatically regenerates the inter-site dialplan for all sites in the enterprise.
The current dialing code for each site is also visible in the Dialing Code column on the Sites grid within the Enterprise form.
Unassigning Sites
To detach a site from an enterprise without deleting it:
- Open the Enterprise form and go to the Sites tab
- Select one or more sites
- Click Unassign Selected
- Confirm the action
The unassigned organizations become standalone again — their organization_id and dialing code are cleared, and the inter-site dialplan is regenerated for the remaining sites. All organization data (extensions, queues, DIDs, etc.) is preserved.
Deleting Sites
Select one or more sites and click Delete Selected to permanently remove them. This deletes the organization and all of its data entirely — it cannot be undone.
Inter-Site Extension Dialing
Three modes are available, configured at the enterprise level:
Disabled
Sites remain fully isolated. Users cannot dial extensions at other sites within the enterprise.
Prefix Only (Default)
Each site has a numeric dialing code that identifies it for cross-site calls. When a site is first added, it receives an auto-assigned sequential code (1, 2, 3, etc.), but administrators can change it to any numeric value that is meaningful to their organization (e.g. 10, 20, 100). Dialing codes must be unique within the enterprise and contain only digits.
Users dial extensions at other sites using:
[dialing prefix] + [dialing code] + [extension number]Example: With the default prefix *88 and dialing code 10, dialing *8810 1001 reaches extension 1001 at that site.
- No extension numbering constraints — different sites can have overlapping extension ranges
- The dialing prefix is configurable per enterprise (default
*88) - Dialing codes can be changed on the site’s configuration form (Dialing Code field)
- To avoid ambiguity, use fixed-length dialing codes across all sites (e.g. all two-digit:
10,20,30)
Direct
Sibling sites’ extensions are included directly in each site’s dialplan. Users can dial cross-site extensions without any prefix.
- The prefix access code still works as a fallback for ambiguous cases
- Recommended when sites use non-overlapping extension ranges
- The PBX resolves context includes in order, so the user’s own site is always matched first
Enterprise Limits
Enterprise-level limits apply across all member sites:
| Limit | Description |
|---|---|
| Max Sites | Maximum number of sites in the enterprise |
| Max Users | Maximum total users across all sites |
| Max Concurrent Calls | Maximum total concurrent calls |
When empty (or 0), the limit is not enforced. Individual sites retain their own per-site limits which must also be satisfied.
When adding a new site, the system validates that the addition would not exceed the enterprise’s configured limits.
Enterprise Grid
The Organizations list includes an Enterprises view that shows all enterprises with columns for:
- Enterprise name and code
- Status
- Site count
- Dialing mode
- Configured limits (max sites, max users, max calls)
Sites Grid (Enterprise Form)
The Sites tab within an enterprise form shows detailed per-site metrics:
| Column Group | Columns |
|---|---|
| Site identity | Site name, description, dialing code, location, status |
| Extensions | Used / Max |
| DIDs | Used / Max |
| Queues | Used / Max |
| External Calls | Max concurrent |
| Flags | Contact Center, MS Teams |
| Other | Tag |
API
Multi-site organizations are managed through the Organization API:
| Method | Endpoint | Description |
|---|---|---|
GET | /api/organization | List all enterprises |
POST | /api/organization | Create an enterprise |
GET | /api/organization/{code} | Get enterprise details |
PUT | /api/organization/{code} | Update an enterprise |
DELETE | /api/organization/{code} | Delete an enterprise |
GET | /api/organization/{code}/sites | List sites in an enterprise |
GET | /api/organization/{code}/directory | List shared directory entries |
POST | /api/organization/{code}/directory | Add shared directory entry |
The full API specification is available in the OpenAPI Reference.
What Is Shared vs. Isolated
Shared at Enterprise Level
- Inter-site extension dialing (prefix or direct mode)
- Organization directory (shared phone list across all sites)
- Organization admin role (manage all sites from one place)
- Aggregate limits (enterprise-wide max users, calls, sites)
Isolated Per Site (unchanged)
- Extensions, queues, IVRs, hunt groups, ring groups, conferences
- Feature codes, music on hold, time conditions, schedules
- Outbound routes, call parking, pickup groups
- Recordings, voicemail, CDR
- Devices, SIP users
- Site-level admin users
- Branding and Thirdlane Connect settings