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

# Account Exclusions API: Block Entire Company Domains

> Block an entire company domain from Topo outreach. Suppress competitive accounts, current customers, and other domains with time-bound or permanent exclusions.

Account exclusions prevent Topo from contacting anyone at a company, regardless of which sequences or lists they appear in. Each rule targets a company by `domain` (for example, `competitor.com`). Exclusions can be permanent or time-limited via the optional `until` field, and carry a structured `reason` code to help you report on and audit your blocklist.

<Note>
  Read endpoints require the `account_exclusions:read` scope. Create, update, and delete endpoints require `account_exclusions:write`. Contact exclusions have their own `contact_exclusions:*` scopes.
</Note>

## Create an exclusion

`POST /v1/account-exclusions` requires `domain` and `reason`. Optional fields include `message` (a free-form operator note) and `until` (an RFC 3339 timestamp after which the exclusion expires — omit for a permanent block).

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
curl -X POST https://api.topo.io/v1/account-exclusions \
  -H "Authorization: Bearer topo_live_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "competitor.com",
    "reason": "COMPETITOR"
  }'
```

## List and manage exclusions

`GET /v1/account-exclusions` returns every account exclusion in your workspace with the standard [pagination envelope](/api-reference/pagination-filtering). Filter by `domain`, `reason`, or creation timestamps.

`GET /v1/account-exclusions/{exclusion_id}` fetches a single rule. `PATCH` updates mutable fields (`reason`, `message`, `until`). `DELETE` permanently removes the exclusion.

To block a single person without suppressing their entire company, use [contact exclusions](/api-reference/contact-exclusions).

## Exclusion reasons

Every account exclusion carries a `reason` field. Valid values are:

| Value                 | Description                                             |
| --------------------- | ------------------------------------------------------- |
| `UNSUBSCRIBED`        | Person or account has opted out.                        |
| `CONTACT_REFUSED`     | Contact explicitly asked not to be reached.             |
| `BOUNCED`             | Email hard-bounced.                                     |
| `WRONG_PERSON`        | Contact is not the right person at the company.         |
| `LEFT_COMPANY`        | Contact has left the company.                           |
| `BAD_TIMING`          | Not a good time — revisit later.                        |
| `OUT_OF_OFFICE`       | Temporarily unavailable.                                |
| `MEETING`             | Already in progress with this contact.                  |
| `INTERESTED`          | Contact has expressed interest through another channel. |
| `COMPETITOR`          | Account is a direct competitor.                         |
| `REFERRAL`            | Came in through a referral channel; handle separately.  |
| `EXCLUDE_FROM_SEARCH` | Suppress from Topo's prospecting search.                |
| `EXCLUDE_FROM_CRM`    | Imported CRM suppression.                               |
| `OTHER`               | None of the above.                                      |
| `UNKNOWN`             | Reason not recorded.                                    |
