---
title: "bird email ip-pools workspaces"
description: "Choose which workspaces send through a pool"
canonical: "https://bird.com/docs/cli/reference/email-ip-pools-workspaces"
---

# `bird email ip-pools workspaces`

## Usage

```bash
bird email ip-pools workspaces
```

## Description

Workspaces without assignments use Bird's shared pool. Assigned workspaces send through
their permitted pools, with one default. Change that default and remove saved references
before removing access.

Reads return JSON; list is paginated. Mutations take flags and/or a --body-file JSON body (flags overriding); run --example to print the body shape or --dry-run to preview the request. Destructive commands require --yes.

## Procedure

**Assign an IP pool to a workspace**

Let a workspace send through an organization pool. On the first assignment, the pool becomes the default unless `is_default: false` keeps shared sending. Later assignments change the default only with `is_default: true`.

Requires: A dedicated pool needs an IP that is not pending cancellation before it can become a workspace's default. Assigning a pool with warming IPs also requires shared pool access.

1. `bird email ip-pools workspaces assign` — Repeating the request returns the same assignment.

**Remove an IP pool from a workspace**

Stop a workspace from sending through a pool. Its default pool, and a pool its mailboxes, SMTP settings, or draft, scheduled, or unfinished broadcasts still name, cannot be removed. Finished broadcast history does not block removal.

Requires: The pool must not be the workspace's default; make another assigned pool the default first.

Requires: No mailbox, SMTP setting, or draft, scheduled, or unfinished broadcast in the workspace may still name the pool. Finished broadcast history does not block removal.

1. `bird email ip-pools workspaces remove` — Removing an assignment that does not exist succeeds.

## Commands

| Name                                                             | Description                         |
| ---------------------------------------------------------------- | ----------------------------------- |
| [`assign`](/docs/cli/reference/email-ip-pools-workspaces-assign) | Assign an IP pool to a workspace    |
| [`list`](/docs/cli/reference/email-ip-pools-workspaces-list)     | List workspaces assigned an IP pool |
| [`remove`](/docs/cli/reference/email-ip-pools-workspaces-remove) | Remove an IP pool from a workspace  |

## Related resources

- [Should I use a Bird SDK or call the API directly?](/explained/platform/should-i-use-an-sdk-or-call-the-api-directly) (answer)
- [Build your first integration](/learn/paths/integration) (course)
- [Send your first email](/docs/get-started/send-your-first-email) (docs)

[Get an implementation brief](/learn/workspace?topic=api-basics)
