---
title: "Upsert per-user dismiss/snooze/done state for an inbox item"
method: PATCH
path: "/api/inbox-state"
tags: ["Inbox State"]
---

# Upsert per-user dismiss/snooze/done state for an inbox item

`PATCH /api/inbox-state`

## Request body

- object
  - `userId` string, required
  - `itemType` 'approval' | 'credential_missing' | 'broken_task' | 'to_read' | 'to_start_template', required
  - `itemId` string, required
  - `status` 'open' | 'snoozed' | 'dismissed' | 'done', required
  - `snoozeUntil` string, date-time

## Response `200`

Upserted inbox state row

- object
  - `item` InboxItemState, required
    - `id` string, required
    - `userId` string, required
    - `itemType` 'approval' | 'credential_missing' | 'broken_task' | 'to_read' | 'to_start_template', required
    - `itemId` string, required
    - `status` 'open' | 'snoozed' | 'dismissed' | 'done', required
    - `snoozeUntil` string
    - `dismissedAt` string
    - `doneAt` string
    - `createdAt` string, required
    - `lastUpdatedAt` string, required

## Other responses

- `400` — Validation error
- `401` — Unauthorized

---

[API](https://skmtc.net/desplega-ai/apis/agent-swarm-api.md) · [All operations](https://skmtc.net/desplega-ai/apis/agent-swarm-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/desplega-ai/agent-swarm-api/versions/0375890be8c4/schema)
