> This page is for Cloud Call Center.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.hams.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.hams.ai/_mcp/server.

# Outbound routes

> Choose which trunk carries an outbound call based on the number dialed, and rewrite the numbers for the carrier.

An outbound route matches the number that an agent dials. It sends the call out through a trunk. It can also rewrite the dialed number and the caller ID before the carrier gets them. A [call campaign](/cloud-call-center/campaigns) also needs an outbound route that matches its contact numbers.

> **Note**
>
> Only administrators can see and change outbound routes.

![An outbound route open on its dial pattern. A test number shows what the carrier gets.](/_fern-img/a06e482781a0118f5f518bca7a1f576dd25b2933397aee18137f3e53b23ecc1a.webp)

## Fields

| Field                          | What it does                                                           | Rules                                                                                                                                                                                                                                                                   |
| ------------------------------ | ---------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Name**                       | Names the route.                                                       | Required. 1 to 128 characters.                                                                                                                                                                                                                                          |
| **Domain**                     | Sets the SIP domain of the route.                                      | Required. You choose it when you create the route. You cannot change it later.                                                                                                                                                                                          |
| **Trunk**                      | Sets the trunk that carries the matched calls.                         | Required. A route on an **Inbound** trunk sends no calls.                                                                                                                                                                                                               |
| **Dial pattern**               | Sets the shape that a dialed number must have for this route to apply. | Required. 1 to 128 characters from `0-9`, `N`, `X`, `Z`, `.`, `[`, `]`, `-`, `+`, `*`, and `#`. See [Dial patterns](#dial-patterns).                                                                                                                                    |
| **Priority**                   | Sets the order when several routes match.                              | A whole number of 0 or more. The default is 100. The route with the lowest number goes first.                                                                                                                                                                           |
| **Call flow**                  | Selects an outbound call flow.                                         | Optional. Select **None** for no call flow. The call flow must be an outbound call flow in the SIP domain of the route. The field has no effect on calls at this time.                                                                                                  |
| **Dialed-number rewrite**      | Changes the dialed number before the system sends it to the trunk.     | Optional. Up to 6 operations. See [Rewrite operations](#rewrite-operations).                                                                                                                                                                                            |
| **Outbound caller-ID rewrite** | Changes the caller ID that the system shows to the trunk.              | Optional. Up to 6 operations. This field also offers **Set number**.                                                                                                                                                                                                    |
| **Call recording**             | Sets the recording decision for outbound calls on this route.          | **Inherit**, **On**, or **Off**. The default is **Inherit**. The setting of the route replaces the setting of its trunk, unless the trunk locks it. Nothing after the route changes the decision for an outbound call. **Lock this decision** has no effect on a route. |
| **Active**                     | Turns the route on or off.                                             | On by default.                                                                                                                                                                                                                                                          |

Two routes in the same SIP domain cannot have the same **Dial pattern** and the same **Priority**.

## Dial patterns

The **Dial pattern** uses these symbols:

| Symbol        | Meaning                 |
| ------------- | ----------------------- |
| `X`           | A digit from 0 to 9.    |
| `N`           | A digit from 2 to 9.    |
| `Z`           | A digit from 1 to 9.    |
| `.`           | One or more characters. |
| `[2-4]`       | A digit in the range.   |
| `+`, `*`, `#` | The character itself.   |

Examples:

| Pattern         | Matches                                                                       |
| --------------- | ----------------------------------------------------------------------------- |
| `+44XXXXXXXXXX` | A number that starts with `+44`, followed by 10 digits.                       |
| `9NXXNXXXXXX`   | A `9`, followed by 10 digits. The first and the fourth digit are from 2 to 9. |
| `00.`           | A number that starts with `00`, followed by one or more characters.           |

Type a number in **Test a number against this pattern**. The form shows **Matches** or **No match**. The system does not check if two patterns overlap when you save a route. If two routes match a number, the route with the lowest **Priority** number goes first. Give each route a different priority.

## Rewrite operations

Each operation changes the number in order, from the first row to the last row. Click **+ Add operation** to add a row. Type a number in **Test number** to see the **Result**.

| Operation        | What it does                                                                                                     |
| ---------------- | ---------------------------------------------------------------------------------------------------------------- |
| **Add prefix**   | Adds the prefix to the start of the number.                                                                      |
| **Strip prefix** | Removes the prefix from the start of the number. The number stays the same if it does not start with the prefix. |
| **Add +**        | Adds a `+` to the start of the number.                                                                           |
| **Remove +**     | Removes a `+` from the start of the number.                                                                      |
| **Set number**   | Replaces the whole number. Only **Outbound caller-ID rewrite** offers this operation.                            |

A prefix has 1 to 6 characters: digits, `+`, `*`, or `#`. The number for **Set number** has 3 to 16 characters: an optional `+`, then digits, `*`, or `#`.

For example, an agent dials `07700900123`. Use **Strip prefix** `0` and then **Add prefix** `+44`. The carrier gets `+447700900123`.

## Caller ID on an outbound call

The system picks the caller ID in this order:

1. The **Outbound Caller ID** of the extension. See [Extensions](/cloud-call-center/settings/extensions).
2. The **Default caller ID** of the trunk, if the extension has none. See [Trunks](/cloud-call-center/settings/trunks).
3. The extension number, if the extension and the trunk have none.

The **Outbound caller-ID rewrite** of the route then changes the number that the system selected.

## Add an outbound route

Before you start, add a SIP domain and a trunk. You cannot create a route before both exist.

#### Open the Outbound Routes tab

Click **Settings** in the Cloud Call Center sidebar. Click the **Outbound Routes** tab.

#### Open the form

Click **Create Outbound Route**. The **New outbound route** drawer opens.

#### Set the match

Enter the **Name**. Select the **Domain** and the **Trunk**. Enter the **Dial pattern** and the **Priority**.

#### Set the rewrite rules

If the carrier needs a different number format, add operations to **Dialed-number rewrite** or **Outbound caller-ID rewrite**.

#### Save the route

Click **Create**. The drawer closes and the route shows in the list.

To change a route, click its row. Change the fields. Click **Save**. You cannot change the **Domain**.

## Delete an outbound route

> **Warning**
>
> Check the dial pattern before you delete a route. If no other route matches the same numbers, those numbers have no route after the delete. You cannot undo a delete.

To delete a route, open the actions menu of its row. Click **Delete**. Click **Delete** again in the dialog.

## Related

* [Trunks](/cloud-call-center/settings/trunks)
* [SIP domains](/cloud-call-center/settings/sip-domains)
* [Extensions](/cloud-call-center/settings/extensions)
* [Call flows](/cloud-call-center/call-flows)
* [Campaigns](/cloud-call-center/campaigns)