> ## Documentation Index
> Fetch the complete documentation index at: https://docs.routr.io/llms.txt
> Use this file to discover all available pages before exploring further.

# rctl command reference

> Every rctl command, argument, flag, and prompt, for operators who manage Routr resources from the command line.

`rctl` is the command-line tool for the Routr API server. It creates, lists, describes, updates, and deletes Connect resources over gRPC. It is built with [oclif](https://oclif.io), so `rctl --help [COMMAND]` prints the same information shown here.

## Install

Install the CLI globally from npm.

```bash theme={null}
npm install -g @routr/ctl
```

Check the installed version.

```bash theme={null}
rctl --version
```

## Global flags

Every resource command accepts these flags.

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Without `--insecure`, `rctl` opens a TLS connection. It verifies the server with the file in `--cacert`, or with the system CA store when you omit it. To reach a server without TLS, such as a local Docker setup, pass `--insecure` or set `ALLOW_INSECURE=true` in your environment.

> [!NOTE]
>
> `create` and `update` take no field flags. They ask for each value with interactive prompts, then ask `Ready?` before they send the request. Answer no to abort. To create resources from a script, use the [SDK](/reference/sdk).

## Command structure

Resource commands follow the pattern `rctl <resource> <action> [REF]`. Each resource supports the same five actions.

| Action | What it does |
| - | - |
| `create` | Prompts for the fields and creates the resource. Prints the new `ref`. |
| `get [REF]` | Lists resources in pages, or shows one resource when you pass `REF`. After the first page, it asks `More` before it loads the next. |
| `describe [REF]` | Prints every field of one resource. |
| `update REF` | Prompts for the fields, pre-filled with current values, and updates the resource. |
| `delete [REF]` | Deletes one resource. |

`REF` is the resource reference, such as `d31f5fb8-e367-42f7-9884-1a7999f53fe8`. Run `get` to find it. The fields of each resource are in [Connect resources](/reference/resources/overview).

## Access control lists

Commands under `rctl acl`. For field details, see [ACL](/reference/resources/acl).

### `rctl acl create`

Creates a new ACL.

```text theme={null}
rctl acl create [-i] [-c <value>] [-e <value>]
```

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts:

| Prompt | Field | Notes |
| - | - | - |
| Friendly Name | `name` | Required. Up to 60 characters. |
| Deny CIDR Networks | `deny` | Comma-separated IPv4 addresses or CIDR blocks. Defaults to `0.0.0.0/0`. |
| Allow CIDR Networks | `allow` | Comma-separated IPv4 addresses or CIDR blocks. At least one is required. |

Example:

```bash theme={null}
rctl acl create
```

```text theme={null}
Creating ACL US East... b148b4b4-6884-4c06-bb7e-bd098f5fe793
```

### `rctl acl get`

Lists ACLs in pages, or shows a single ACL when you pass `REF`.

```text theme={null}
rctl acl get [REF] [-i] [-c <value>] [-e <value>] [-s <value>] [-x]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | No | Reference to an ACL. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |
| `-s, --size=<value>` | `50` | Number of items to return per page. |
| `-x, --extended` | `false` | Show extended columns, including `Ref`. |

Example:

```bash theme={null}
rctl acl get --extended
```

```text theme={null}
Ref                                  Name              Deny List Allow List
9e7a88f0-8390-42f5-a2cb-689583ba9f4f Local Network ACL 0.0.0.0/0 10.0.0.28
```

### `rctl acl describe`

Shows every field of an ACL.

```text theme={null}
rctl acl describe [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the ACL. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl acl describe 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl acl update`

Updates an existing ACL.

```text theme={null}
rctl acl update REF [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to an existing ACL. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts: The same prompts as `create`, pre-filled with the current values.

Example:

```bash theme={null}
rctl acl update 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Updating ACL US East... 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl acl delete`

Deletes an ACL.

```text theme={null}
rctl acl delete [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the ACL. The command fails without it. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl acl delete 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Deleting item 80181ca6-d4aa-4575-9375-8f72b07d5555... Done
```

## Agents

Commands under `rctl agents`. For field details, see [Agents](/reference/resources/agents).

### `rctl agents create`

Creates a new Agent.

```text theme={null}
rctl agents create [-i] [-c <value>] [-e <value>]
```

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts:

| Prompt | Field | Notes |
| - | - | - |
| Friendly Name | `name` | Required. Up to 60 characters. |
| Select a Domain | `domainRef` | Pick from existing Domains, or `None`. |
| Username | `username` | Required. No spaces. |
| Credentials Name | `credentialsRef` | Pick from existing Credentials, or `None`. |
| Max Contacts | `maxContacts` | Optional integer, 0 or greater. Empty means no limit (`-1`). |
| Privacy | `privacy` | `None` (default) or `Private`. |
| Enabled? | `enabled` | Defaults to yes. |

Example:

```bash theme={null}
rctl agents create
```

```text theme={null}
Creating Agent John Doe... b148b4b4-6884-4c06-bb7e-bd098f5fe793
```

### `rctl agents get`

Lists Agents in pages, or shows a single Agent when you pass `REF`.

```text theme={null}
rctl agents get [REF] [-i] [-c <value>] [-e <value>] [-s <value>] [-x]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | No | Reference to a Agent. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |
| `-s, --size=<value>` | `50` | Number of items to return per page. |
| `-x, --extended` | `false` | Show extended columns, including `Ref`. |

Example:

```bash theme={null}
rctl agents get --extended
```

```text theme={null}
Ref                                  Name     Username Domain    Max Contacts   Privacy Enabled
d31f5fb8-e367-42f7-9884-1a7999f53fe8 John Doe jdoe     sip.local 1              PRIVATE Yes
```

### `rctl agents describe`

Shows every field of a Agent.

```text theme={null}
rctl agents describe [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Agent. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl agents describe 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl agents update`

Updates an existing Agent.

```text theme={null}
rctl agents update REF [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to an existing Agent. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts: The same prompts as `create`, except `Username`, which you can't change.

Example:

```bash theme={null}
rctl agents update 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Updating Agent John Doe... 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl agents delete`

Deletes a Agent.

```text theme={null}
rctl agents delete [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Agent. The command fails without it. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl agents delete 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Deleting item 80181ca6-d4aa-4575-9375-8f72b07d5555... Done
```

## Credentials

Commands under `rctl credentials`. For field details, see [Credentials](/reference/resources/credentials).

### `rctl credentials create`

Creates a new set of Credentials.

```text theme={null}
rctl credentials create [-i] [-c <value>] [-e <value>]
```

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts:

| Prompt | Field | Notes |
| - | - | - |
| Friendly Name | `name` | Required. Up to 60 characters. |
| Username | `username` | Required. No spaces. |
| Password | `password` | Required. Input is masked. |

Example:

```bash theme={null}
rctl credentials create
```

```text theme={null}
Creating Credentials JDoe Access... b148b4b4-6884-4c06-bb7e-bd098f5fe793
```

### `rctl credentials get`

Lists Credentials in pages, or shows a single set of Credentials when you pass `REF`.

```text theme={null}
rctl credentials get [REF] [-i] [-c <value>] [-e <value>] [-s <value>] [-x]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | No | Reference to a set of Credentials. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |
| `-s, --size=<value>` | `50` | Number of items to return per page. |
| `-x, --extended` | `false` | Show extended columns, including `Ref`. |

Example:

```bash theme={null}
rctl credentials get --extended
```

### `rctl credentials describe`

Shows every field of a set of Credentials.

```text theme={null}
rctl credentials describe [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the set of Credentials. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl credentials describe 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl credentials update`

Updates an existing set of Credentials.

```text theme={null}
rctl credentials update REF [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to an existing set of Credentials. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts: The same prompts as `create`, pre-filled with the current values.

Example:

```bash theme={null}
rctl credentials update 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Updating Credentials JDoe Credentials... 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl credentials delete`

Deletes a set of Credentials.

```text theme={null}
rctl credentials delete [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the set of Credentials. The command fails without it. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl credentials delete 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Deleting item 80181ca6-d4aa-4575-9375-8f72b07d5555... Done
```

## Domains

Commands under `rctl domains`. For field details, see [Domains](/reference/resources/domains).

### `rctl domains create`

Creates a new Domain.

```text theme={null}
rctl domains create [-i] [-c <value>] [-e <value>]
```

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts:

| Prompt | Field | Notes |
| - | - | - |
| Friendly Name | `name` | Required. Up to 60 characters. |
| SIP URI | `domainUri` | Required. Must be a fully qualified domain name, such as `sip.local`. |
| IP Access Control List | `accessControlListRef` | Pick from existing ACLs, or `None`. |
| Add an Egress Rule? | `egressPolicies` | Asked only when Numbers exist. Defaults to no. |
| Number | `egressPolicies[].numberRef` | The Number used for calls that match the rule. |
| Rule | `egressPolicies[].rule` | Regular expression matched against the dialed number. Defaults to `.*`. |
| Add another Egress Rule? | - | Repeats the Number and Rule prompts. |

Example:

```bash theme={null}
rctl domains create
```

```text theme={null}
Creating Domain Local Domain... b148b4b4-6884-4c06-bb7e-bd098f5fe793
```

### `rctl domains get`

Lists Domains in pages, or shows a single Domain when you pass `REF`.

```text theme={null}
rctl domains get [REF] [-i] [-c <value>] [-e <value>] [-s <value>] [-x]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | No | Reference to a Domain. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |
| `-s, --size=<value>` | `50` | Number of items to return per page. |
| `-x, --extended` | `false` | Show extended columns, including `Ref`. |

Example:

```bash theme={null}
rctl domains get --extended
```

```text theme={null}
Ref                                  Name         URI
ab2b6959-f497-4b14-903b-85a7c464b564 Local Domain sip.local
```

### `rctl domains describe`

Shows every field of a Domain.

```text theme={null}
rctl domains describe [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Domain. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl domains describe 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl domains update`

Updates an existing Domain.

```text theme={null}
rctl domains update REF [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to an existing Domain. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts: The same prompts as `create`, except `SIP URI`, which you can't change.

Example:

```bash theme={null}
rctl domains update 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Updating Domain Local... 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl domains delete`

Deletes a Domain.

```text theme={null}
rctl domains delete [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Domain. The command fails without it. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl domains delete 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Deleting item 80181ca6-d4aa-4575-9375-8f72b07d5555... Done
```

## Numbers

Commands under `rctl numbers`. For field details, see [Numbers](/reference/resources/numbers).

### `rctl numbers create`

Creates a new Number.

```text theme={null}
rctl numbers create [-i] [-c <value>] [-e <value>]
```

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts:

| Prompt | Field | Notes |
| - | - | - |
| Friendly Name | `name` | Required. Up to 60 characters. |
| Telephony URL | `telUrl` | Required. Must start with `tel:`, such as `tel:+17853178070`. |
| AOR Link | `aorLink` | Optional. Must start with `sip:` or `backend:`. |
| Trunk | `trunkRef` | Pick from existing Trunks, or `None`. |
| City | `city` | Required. |
| Select a Country | `countryIsoCode` | Type to search. Also sets `country`. |
| Session Affinity Header | `sessionAffinityHeader` | Optional. Letters, digits, and dashes; can't end with a dash. |
| Extra Headers | `extraHeaders` | Optional. Comma-separated `Name:value` pairs, such as `X-Room-Id:abc-us-123`. |

Example:

```bash theme={null}
rctl numbers create
```

```text theme={null}
Creating Number (784) 317-8170... a134487f-a668-4509-9ddd-dcbc98175468
```

### `rctl numbers get`

Lists Numbers in pages, or shows a single Number when you pass `REF`.

```text theme={null}
rctl numbers get [REF] [-i] [-c <value>] [-e <value>] [-s <value>] [-x]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | No | Reference to a Number. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |
| `-s, --size=<value>` | `50` | Number of items to return per page. |
| `-x, --extended` | `false` | Show extended columns, including `Ref`. |

Example:

```bash theme={null}
rctl numbers get --extended
```

```text theme={null}
Ref                                  Name           Telephony URL      AOR Link           Geo
a134487f-a668-4509-9ddd-dcbc98175468 (785) 317-8070 +17853178070       sip:1001@sip.local Cameron, USA (US)
```

### `rctl numbers describe`

Shows every field of a Number.

```text theme={null}
rctl numbers describe [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Number. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl numbers describe 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl numbers update`

Updates an existing Number.

```text theme={null}
rctl numbers update REF [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to an existing Number. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts: The same prompts as `create`, except `Telephony URL`, `City`, and `Select a Country`, which you can't change.

Example:

```bash theme={null}
rctl numbers update 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Updating Number (785) 317-8070... 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl numbers delete`

Deletes a Number.

```text theme={null}
rctl numbers delete [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Number. The command fails without it. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl numbers delete 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Deleting item 80181ca6-d4aa-4575-9375-8f72b07d5555... Done
```

## Peers

Commands under `rctl peers`. For field details, see [Peers](/reference/resources/peers).

### `rctl peers create`

Creates a new Peer.

```text theme={null}
rctl peers create [-i] [-c <value>] [-e <value>]
```

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts:

| Prompt | Field | Notes |
| - | - | - |
| Friendly Name | `name` | Required. Up to 60 characters. |
| Username | `username` | Required. No spaces. |
| Address of Record | `aor` | Required. Must start with `sip:` or `backend:`. |
| Contact Address | `contactAddr` | Optional. A host or IP address. |
| Max Contacts | `maxContacts` | Optional integer, 0 or greater. Empty means no limit (`-1`). |
| IP Access Control List | `accessControlListRef` | Pick from existing ACLs, or `None`. |
| Credentials Name | `credentialsRef` | Pick from existing Credentials, or `None`. |
| Enable Session Affinity? | `withSessionAffinity` | Defaults to no. |
| Balancing Algorithm | `balancingAlgorithm` | `Round Robin` (default) or `Least Sessions`. |
| Enabled? | `enabled` | Defaults to yes. |

Example:

```bash theme={null}
rctl peers create
```

```text theme={null}
Creating Peer Asterisk Conference... b148b4b4-6884-4c06-bb7e-bd098f5fe793
```

### `rctl peers get`

Lists Peers in pages, or shows a single Peer when you pass `REF`.

```text theme={null}
rctl peers get [REF] [-i] [-c <value>] [-e <value>] [-s <value>] [-x]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | No | Reference to a Peer. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |
| `-s, --size=<value>` | `50` | Number of items to return per page. |
| `-x, --extended` | `false` | Show extended columns, including `Ref`. |

Example:

```bash theme={null}
rctl peers get --extended
```

```text theme={null}
Ref                                  Name                Username   AOR                      Max Contacts   Balancing Algorithm Session Affinity
6f941c63-880c-419a-a72a-4a107cbaf5c5 Asterisk Conference conference sip:conference@sip.local 1              Round Robin         Yes
```

### `rctl peers describe`

Shows every field of a Peer.

```text theme={null}
rctl peers describe [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Peer. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl peers describe 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl peers update`

Updates an existing Peer.

```text theme={null}
rctl peers update REF [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to an existing Peer. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts: The same prompts as `create`, except `Username`, which you can't change.

Example:

```bash theme={null}
rctl peers update 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Updating Peer Asterisk Conf... 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl peers delete`

Deletes a Peer.

```text theme={null}
rctl peers delete [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Peer. The command fails without it. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl peers delete 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Deleting item 80181ca6-d4aa-4575-9375-8f72b07d5555... Done
```

## Trunks

Commands under `rctl trunks`. For field details, see [Trunks](/reference/resources/trunks).

### `rctl trunks create`

Creates a new Trunk.

```text theme={null}
rctl trunks create [-i] [-c <value>] [-e <value>]
```

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts:

| Prompt | Field | Notes |
| - | - | - |
| Friendly Name | `name` | Required. Up to 60 characters. |
| Inbound SIP URI | `inboundUri` | Required. An FQDN or IP address, such as `sip.t01.provider.net`. |
| IP Access Control List | `accessControlListRef` | Pick from existing ACLs, or `None`. |
| Inbound Credentials | `inboundCredentialsRef` | Pick from existing Credentials, or `None`. |
| Outbound Credentials | `outboundCredentialsRef` | Pick from existing Credentials, or `None`. |
| Send Register? | `sendRegister` | Defaults to no. |
| Add an Outbound SIP URI? | `uris` | Defaults to no. |
| Host | `uris[].host` | Required. An FQDN or IP address. |
| Port | `uris[].port` | Defaults to `5060`. |
| Transport | `uris[].transport` | `UDP` (default), `TCP`, or `TLS`. |
| User Part | `uris[].user` | Optional. No spaces. |
| Priority | `uris[].priority` | 0 to 65535. Defaults to `10`. |
| Weight | `uris[].weight` | 1 to 65535. Defaults to `10`. |
| Add another Outbound SIP URI? | - | Repeats the outbound URI prompts. |

Example:

```bash theme={null}
rctl trunks create
```

```text theme={null}
Creating Trunk T01... b148b4b4-6884-4c06-bb7e-bd098f5fe793
```

### `rctl trunks get`

Lists Trunks in pages, or shows a single Trunk when you pass `REF`.

```text theme={null}
rctl trunks get [REF] [-i] [-c <value>] [-e <value>] [-s <value>] [-x]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | No | Reference to a Trunk. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |
| `-s, --size=<value>` | `50` | Number of items to return per page. |
| `-x, --extended` | `false` | Show extended columns, including `Ref`. |

Example:

```bash theme={null}
rctl trunks get --extended
```

```text theme={null}
Ref                                  Name   Inbound SIP URI
8cde8ea9-3c58-4dbe-b2cf-23c4413dd4cc Local  sip.t01.provider.net
```

### `rctl trunks describe`

Shows every field of a Trunk.

```text theme={null}
rctl trunks describe [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Trunk. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl trunks describe 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl trunks update`

Updates an existing Trunk.

```text theme={null}
rctl trunks update REF [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to an existing Trunk. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Prompts: The same prompts as `create`, pre-filled with the current values.

Example:

```bash theme={null}
rctl trunks update 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Updating Trunk T01... 80181ca6-d4aa-4575-9375-8f72b07d5555
```

### `rctl trunks delete`

Deletes a Trunk.

```text theme={null}
rctl trunks delete [REF] [-i] [-c <value>] [-e <value>]
```

| Argument | Required | Description |
| - | - | - |
| `REF` | Yes | Reference to the Trunk. The command fails without it. |

| Flag | Default | Description |
| - | - | - |
| `-c, --cacert=<value>` | - | Path to the CA certificate used to verify the server. |
| `-e, --endpoint=<value>` | `localhost:51908` | Endpoint of the Routr API server. |
| `-i, --insecure` | `false` | Allow insecure connections to the Routr API server. |

Example:

```bash theme={null}
rctl trunks delete 80181ca6-d4aa-4575-9375-8f72b07d5555
```

```text theme={null}
Deleting item 80181ca6-d4aa-4575-9375-8f72b07d5555... Done
```

## Shell completion

### `rctl autocomplete`

Prints instructions to install shell completion for `rctl`.

```text theme={null}
rctl autocomplete [SHELL] [-r]
```

| Argument | Required | Description |
| - | - | - |
| `SHELL` | No | Shell type, such as `bash` or `zsh`. |

| Flag | Default | Description |
| - | - | - |
| `-r, --refresh-cache` | - | Refresh the completion cache without printing instructions. |

Example:

```bash theme={null}
rctl autocomplete zsh
```

## Plugins

`rctl` includes the oclif plugin commands, so you can add your own commands to it. See [Extend rctl](/guides/extend-rctl).

### `rctl plugins`

Lists installed plugins.

```text theme={null}
rctl plugins [--core]
```

| Flag | Default | Description |
| - | - | - |
| `--core` | - | Show core plugins. |

Example:

```bash theme={null}
rctl plugins
```

### `rctl plugins:install`

Installs a plugin from npm or a Git URL. A user-installed plugin overrides a core plugin that has a command with the same name.

```text theme={null}
rctl plugins:install PLUGIN...
```

| Argument | Required | Description |
| - | - | - |
| `PLUGIN` | Yes | Plugin to install: an npm package, a Git URL, or `user/repo`. |

| Flag | Default | Description |
| - | - | - |
| `-f, --force` | - | Run yarn install with the force flag. |
| `-h, --help` | - | Show CLI help. |
| `-v, --verbose` | - | Show verbose output. |

Aliases: `rctl plugins add`.

Example:

```bash theme={null}
rctl plugins:install someuser/someplugin
```

### `rctl plugins:inspect`

Shows installation properties of a plugin.

```text theme={null}
rctl plugins:inspect PLUGIN...
```

| Argument | Required | Description |
| - | - | - |
| `PLUGIN` | No | Plugin to inspect. Defaults to `.`. |

| Flag | Default | Description |
| - | - | - |
| `-h, --help` | - | Show CLI help. |
| `-v, --verbose` | - | Show verbose output. |
| `--json` | - | Format output as JSON. |

Example:

```bash theme={null}
rctl plugins:inspect myplugin
```

### `rctl plugins:link`

Links a local plugin into the CLI for development. A linked plugin overrides user-installed and core plugins.

```text theme={null}
rctl plugins:link PLUGIN
```

| Argument | Required | Description |
| - | - | - |
| `PATH` | No | Path to the plugin. Defaults to `.`. |

| Flag | Default | Description |
| - | - | - |
| `-h, --help` | - | Show CLI help. |
| `-v, --verbose` | - | Show verbose output. |

Example:

```bash theme={null}
rctl plugins:link ./my-plugin
```

### `rctl plugins:uninstall`

Removes a plugin from the CLI.

```text theme={null}
rctl plugins:uninstall PLUGIN...
```

| Argument | Required | Description |
| - | - | - |
| `PLUGIN` | Yes | Plugin to uninstall. |

| Flag | Default | Description |
| - | - | - |
| `-h, --help` | - | Show CLI help. |
| `-v, --verbose` | - | Show verbose output. |

Aliases: `rctl plugins unlink`, `rctl plugins remove`.

Example:

```bash theme={null}
rctl plugins:uninstall myplugin
```

### `rctl plugins update`

Updates installed plugins.

```text theme={null}
rctl plugins update [-h] [-v]
```

| Flag | Default | Description |
| - | - | - |
| `-h, --help` | - | Show CLI help. |
| `-v, --verbose` | - | Show verbose output. |

Example:

```bash theme={null}
rctl plugins update
```

## Related

> **[Manage resources with rctl](/guides/manage-resources-with-rctl)**
>
> Create a Domain, Agents, and a Trunk step by step.

> **[Connect resources](/reference/resources/overview)**
>
> Every field, type, and constraint for each resource.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.