---
title: "Update message state (read/unread, restore, flag, move to folder)"
method: PATCH
path: "/v1/messages/{id}"
tags: ["Messages"]
---

# Update message state (read/unread, restore, flag, move to folder)

`PATCH /v1/messages/{id}`

## Request

- Base URL: `https://api.usemektup.com`
- URL: `https://api.usemektup.com/v1/messages/{id}`
- Auth: HTTP bearer

Any combination in one call. At least one field required.

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `read` boolean
  - `deleted` false: Only false is accepted here (restore from trash) - use DELETE to delete
  - `flagged` boolean
  - `folderId` string, uuid, nullable: Must belong to the same mailbox as the message, or null

## Response `204`

Updated

## Other responses

- `400`: Invalid request
- `404`: Not found on this account (tenant-isolated - never reveals another account's data)

---

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