---
title: "openemail addresses"
description: "Every command in this namespace, with its arguments, flags and examples."
url: "https://openemail.uk/docs/cli/reference/addresses"
area: "CLI"
category: "Reference"
---

# openemail addresses

Every command in this namespace, with its arguments, flags and examples.

## Commands

### `openemail addresses list`

List the addresses and domains this key may send as

```bash
openemail addresses list [flags]
```

Answers the question behind an unexplained 403 `from_address_forbidden`: which addresses this key may put in `from`. It returns one page of the addresses created on the workspace's domains, alphabetically, each with a `canSend` verdict for this key, plus the domains themselves.

`unrestricted` is true when the key is narrowed by nothing, in which case the API accepts any local-part on the workspace's domains, including ones nobody has created. A key can be narrowed by whole domains, by individual addresses, or by both, and any of those makes `unrestricted` false. `canSend` is then true only for an enabled address the key covers, either because its domain is one of the whole domains the key holds or because the address itself is on its address list. A disabled address always reports `canSend` false.

The SDK reshapes the wire envelope: the server's `data` array arrives as `addresses`, so the result is a single object rather than a list.

Add `--all` to walk every page: a table on a terminal, one JSON object per line when piped or with `--ndjson`, and one JSON document with `--json`, shaped as Returns describes. `--max <n>` stops after that many items.

- Scopes: `emails:send`.
- Needs a sign-in.
- Aliases: `ls`.

**Flags**

- `--limit <n>` (default `25`): Page size, from 1 to 100. The server defaults to 25.
- `--cursor <value>`: The `nextCursor` of the previous page. Leave it out for the first page.
- `--all`: Fetch every page and stream the items as they arrive.
- `--max <n>`: Stop after this many items. Implies `--all`.
- `--ndjson`: Print every item as one JSON object per line. Implies `--all`

**Examples**

```bash
openemail addresses list
```

Walk every page and stop after 100 items

```bash
openemail addresses list --all --max 100
```

One JSON object per line when piped

```bash
openemail addresses list --all > addresses.ndjson
```

Also available in: API [`GET /addresses`](https://openemail.uk/docs/api/reference/account#get-addresses); SDK [`addresses.list()`](https://openemail.uk/docs/sdk/reference/addresses#list).
