---
title: "Update the READ/UNREAD status for selected letters. The default status is READ."
method: POST
path: "/epost/v2/letters/read"
tags: ["ePost Digital Letterbox"]
---

# Update the READ/UNREAD status for selected letters. The default status is READ.

`POST /epost/v2/letters/read`

## Request

- Base URL: `https://api.klara.ch`
- URL: `https://api.klara.ch/epost/v2/letters/read`
- Auth: one of:
  - API key in header `X-API-KEY`
  - HTTP bearer

## Request body

- ReadLetters: Letters with read status
  - `readStatus` 'READ' | 'UNREAD', required: Marked the given letters as READ/UNREAD status. Default is READ
  - `letterIds` string[], required: Letter ids

## Response `200`

Successful operation

- object
  - `processed_count` integer
  - `skipped_count` integer
  - `failed_count` integer
  - `results` LetterReadUnreadResult[]
    - `letter_id` string
    - `status` string
    - `reason` string

## Other responses

- `207`: Partial success
- `401`: No Authorization header found or invalid token<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `403`: The current user is not allowed to access this company data<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `404`: Resource not found<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `429`: API rate limit exceeded<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.
- `500`: Something went wrong on our side while processing the request. Please kindly contact our support.<br/><br/>Failures detected by a downstream service carry that service's own <code>code</code>, which this reference does not enumerate, so the <code>code</code> field may hold a value not documented here. Treat an unrecognised code as a generic failure of the status it arrives with, and do not branch on a code this reference does not list.

---

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