---
title: "Set domain catch-all"
method: PUT
path: "/api/domains/{domain}/email/catch-all"
tags: ["Email"]
---

# Set domain catch-all

`PUT /api/domains/{domain}/email/catch-all`

## Request

- Base URL: `https://domani.run`
- URL: `https://domani.run/api/domains/{domain}/email/catch-all`
- Auth: HTTP bearer

Route every email sent to an unmatched address on the domain into a designated mailbox. Anything that does not match a mailbox, subaddress, or alias lands in the catch-all. The mailbox must already exist on the domain. It changes mail for the whole domain, so a mailbox-confined token gets 403 MAILBOX_CONFINED.

## Path parameters

- `domain` string, required

## Request body

- object
  - `mailbox` string, required: Catch-all mailbox - a bare slug or full address on this domain

## Response `200`

Catch-all set

- object
  - `domain` string
  - `catch_all` string, nullable
  - `hint` string

## Other responses

- `403`: A mailbox-confined token cannot change mail for the whole domain (MAILBOX_CONFINED)

---

[API](https://skmtc.dev/domani/apis/domani-run-api.md) · [All operations](https://skmtc.dev/domani/apis/domani-run-api/llms.txt) · [OpenAPI document](https://skmtc.dev/domani/apis/domani-run-api/revisions/7679f8159533?raw)
