---
title: "Update Mailzero assistant settings"
method: PUT
path: "/api/assistant/settings"
tags: ["Mailzero Assistant"]
---

# Update Mailzero assistant settings

`PUT /api/assistant/settings`

## Request

- Base URL: `https://domani.run`
- URL: `https://domani.run/api/assistant/settings`
- Auth: HTTP bearer

Explicitly enables, pauses, resumes, or scopes assistant processing. Sending mailbox_ids: [] disables every mailbox and cancels a running history import. Resuming requires the current consent version. Mail receipt remains independent. Requires the assistant:write scope.

## Request body

- object
  - `enabled` boolean: Show Today Decisions and generate drafts on demand
  - `shadow_enabled` boolean: Analyze mail without surfacing Decisions
  - `paused` boolean
  - `mailbox_ids` string[]: Owned mailbox IDs to process; an empty array disables everything
  - `agent_mailbox_ids` string[]: Mailboxes operated by your agents. Their items appear in the agents section of Today instead of Needs you.
  - `history_window_days` integer
  - `attachment_vision` boolean

## Response `200`

Updated settings

- object
  - `ok` boolean
  - `enabled` boolean
  - `shadow_enabled` boolean
  - `paused` boolean
  - `mailbox_ids` string[]

## Other responses

- `400`: Invalid settings or no mailbox enabled (INVALID_INPUT, MAILBOX_REQUIRED)
- `401`: Missing or invalid API key
- `403`: A mailbox is not owned by the caller (MAILBOX_SCOPE_DENIED)
- `409`: Consent must be reviewed before enabling (AI_CONSENT_REQUIRED)
- `429`: Rate limit exceeded - wait and retry

---

[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)
