---
title: "Discard a quarantined message"
method: POST
path: "/v1/mailboxes/{id}/messages/{messageId}/discard"
tags: ["Mailboxes"]
---

# Discard a quarantined message

`POST /v1/mailboxes/{id}/messages/{messageId}/discard`

## Request

- Base URL: `https://api.samva.dev`
- URL: `https://api.samva.dev/v1/mailboxes/{id}/messages/{messageId}/discard`
- Auth: API key in header `x-api-key`

Removes a held message from the mailbox's quarantine for good: it leaves the quarantine list, never reaches a thread, and can no longer be released. Quarantined and isolated (malware) messages can both be discarded. Publishes one `mailbox.message.discarded` event; discarding it again returns the same result and publishes nothing. A released message is in its thread and cannot be discarded: 409. Only a person can discard; API keys never hold `quarantine.release`.

## Path parameters

- `id` string, required
- `messageId` string, required

## Response `200`

MailboxQuarantinedMessage

- MailboxQuarantinedMessage
  - `id` string, required
  - `disposition` 'quarantined' | 'isolated', required
  - `reason` 'spam' | 'dmarc' | 'virus' | 'virus_unscanned' | 'phishing' | 'fraud' | 'prompt_injection', required
  - `source` 'receipt' | 'classifier', required
  - `from` object, required
    - `address` string, required
    - `name` string, nullable, required
  - `subject` string, nullable, required
  - `receivedAt` string, required
  - `heldAt` string, required
  - `releasedAt` string, nullable, required
  - `threadId` string, required
  - `discardedAt` string, nullable, required

## Other responses

- `401`: UnauthorizedError
- `403`: ForbiddenError
- `404`: ResourceNotFoundError
- `409`: ConflictError
- `422`: ValidationError
- `500`: InternalError
- `502`: BillingProviderError
- `504`: GatewayTimeoutError

---

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