---
title: "Changes to Mark a thread read up to a message"
method: PUT
path: "/threads/{id}/read"
---

# Changes to Mark a thread read up to a message

`PUT /threads/{id}/read`

> Every recorded change to this operation, newest first.
> 32 revisions in range; 1 not diffed.

## Timeline

Changed in 5 of 32 revisions.

- **2026-10-21** `0360ea8d4f3d`: 65 warning
- **2026-10-21** `5279a7bed7ac`: 55 warning
- **2026-10-09** `6c9e8a907166`: 85 warning, 5 info
- **2026-10-07** `8c9748ec969b`: 5 warning
- **2026-10-04** `5df70dfeeab3`: 1 info

## Changes

- **2026-10-21** `0360ea8d4f3d`: 65 warning
  - added the new `agent_changed` enum value to the `error/code` response property for the response status `400`
  - added the new `agent_changed` enum value to the `error/code` response property for the response status `401`
  - added the new `agent_changed` enum value to the `error/code` response property for the response status `403`
  - added the new `agent_changed` enum value to the `error/code` response property for the response status `404`
  - added the new `agent_changed` enum value to the `error/code` response property for the response status `429`
  - added the new `agent_limit` enum value to the `error/code` response property for the response status `400`
  - added the new `agent_limit` enum value to the `error/code` response property for the response status `401`
  - added the new `agent_limit` enum value to the `error/code` response property for the response status `403`
  - added the new `agent_limit` enum value to the `error/code` response property for the response status `404`
  - added the new `agent_limit` enum value to the `error/code` response property for the response status `429`
  - added the new `already_member` enum value to the `error/code` response property for the response status `400`
  - added the new `already_member` enum value to the `error/code` response property for the response status `401`
  - added the new `already_member` enum value to the `error/code` response property for the response status `403`
  - added the new `already_member` enum value to the `error/code` response property for the response status `404`
  - added the new `already_member` enum value to the `error/code` response property for the response status `429`
  - added the new `directory_limit` enum value to the `error/code` response property for the response status `400`
  - added the new `directory_limit` enum value to the `error/code` response property for the response status `401`
  - added the new `directory_limit` enum value to the `error/code` response property for the response status `403`
  - added the new `directory_limit` enum value to the `error/code` response property for the response status `404`
  - added the new `directory_limit` enum value to the `error/code` response property for the response status `429`
  - added the new `invitation_accepted` enum value to the `error/code` response property for the response status `400`
  - added the new `invitation_accepted` enum value to the `error/code` response property for the response status `401`
  - added the new `invitation_accepted` enum value to the `error/code` response property for the response status `403`
  - added the new `invitation_accepted` enum value to the `error/code` response property for the response status `404`
  - added the new `invitation_accepted` enum value to the `error/code` response property for the response status `429`
  - added the new `invitation_changed` enum value to the `error/code` response property for the response status `400`
  - added the new `invitation_changed` enum value to the `error/code` response property for the response status `401`
  - added the new `invitation_changed` enum value to the `error/code` response property for the response status `403`
  - added the new `invitation_changed` enum value to the `error/code` response property for the response status `404`
  - added the new `invitation_changed` enum value to the `error/code` response property for the response status `429`
  - added the new `invitation_pending` enum value to the `error/code` response property for the response status `400`
  - added the new `invitation_pending` enum value to the `error/code` response property for the response status `401`
  - added the new `invitation_pending` enum value to the `error/code` response property for the response status `403`
  - added the new `invitation_pending` enum value to the `error/code` response property for the response status `404`
  - added the new `invitation_pending` enum value to the `error/code` response property for the response status `429`
  - added the new `invitation_sending` enum value to the `error/code` response property for the response status `400`
  - added the new `invitation_sending` enum value to the `error/code` response property for the response status `401`
  - added the new `invitation_sending` enum value to the `error/code` response property for the response status `403`
  - added the new `invitation_sending` enum value to the `error/code` response property for the response status `404`
  - added the new `invitation_sending` enum value to the `error/code` response property for the response status `429`
  - …25 more
- **2026-10-21** `5279a7bed7ac`: 55 warning
  - added the new `archive_busy` enum value to the `error/code` response property for the response status `400`
  - added the new `archive_busy` enum value to the `error/code` response property for the response status `401`
  - added the new `archive_busy` enum value to the `error/code` response property for the response status `403`
  - added the new `archive_busy` enum value to the `error/code` response property for the response status `404`
  - added the new `archive_busy` enum value to the `error/code` response property for the response status `429`
  - added the new `archive_invalid` enum value to the `error/code` response property for the response status `400`
  - added the new `archive_invalid` enum value to the `error/code` response property for the response status `401`
  - added the new `archive_invalid` enum value to the `error/code` response property for the response status `403`
  - added the new `archive_invalid` enum value to the `error/code` response property for the response status `404`
  - added the new `archive_invalid` enum value to the `error/code` response property for the response status `429`
  - added the new `archive_limit_exceeded` enum value to the `error/code` response property for the response status `400`
  - added the new `archive_limit_exceeded` enum value to the `error/code` response property for the response status `401`
  - added the new `archive_limit_exceeded` enum value to the `error/code` response property for the response status `403`
  - added the new `archive_limit_exceeded` enum value to the `error/code` response property for the response status `404`
  - added the new `archive_limit_exceeded` enum value to the `error/code` response property for the response status `429`
  - added the new `archive_unsafe_path` enum value to the `error/code` response property for the response status `400`
  - added the new `archive_unsafe_path` enum value to the `error/code` response property for the response status `401`
  - added the new `archive_unsafe_path` enum value to the `error/code` response property for the response status `403`
  - added the new `archive_unsafe_path` enum value to the `error/code` response property for the response status `404`
  - added the new `archive_unsafe_path` enum value to the `error/code` response property for the response status `429`
  - added the new `archive_unsupported` enum value to the `error/code` response property for the response status `400`
  - added the new `archive_unsupported` enum value to the `error/code` response property for the response status `401`
  - added the new `archive_unsupported` enum value to the `error/code` response property for the response status `403`
  - added the new `archive_unsupported` enum value to the `error/code` response property for the response status `404`
  - added the new `archive_unsupported` enum value to the `error/code` response property for the response status `429`
  - added the new `attachment_name_ambiguous` enum value to the `error/code` response property for the response status `400`
  - added the new `attachment_name_ambiguous` enum value to the `error/code` response property for the response status `401`
  - added the new `attachment_name_ambiguous` enum value to the `error/code` response property for the response status `403`
  - added the new `attachment_name_ambiguous` enum value to the `error/code` response property for the response status `404`
  - added the new `attachment_name_ambiguous` enum value to the `error/code` response property for the response status `429`
  - added the new `attachment_not_archive` enum value to the `error/code` response property for the response status `400`
  - added the new `attachment_not_archive` enum value to the `error/code` response property for the response status `401`
  - added the new `attachment_not_archive` enum value to the `error/code` response property for the response status `403`
  - added the new `attachment_not_archive` enum value to the `error/code` response property for the response status `404`
  - added the new `attachment_not_archive` enum value to the `error/code` response property for the response status `429`
  - added the new `latest_message_mismatch` enum value to the `error/code` response property for the response status `400`
  - added the new `latest_message_mismatch` enum value to the `error/code` response property for the response status `401`
  - added the new `latest_message_mismatch` enum value to the `error/code` response property for the response status `403`
  - added the new `latest_message_mismatch` enum value to the `error/code` response property for the response status `404`
  - added the new `latest_message_mismatch` enum value to the `error/code` response property for the response status `429`
  - …15 more
- **2026-10-09** `6c9e8a907166`: 85 warning, 5 info
  - added the new `address_taken` enum value to the `error/code` response property for the response status `400`
  - added the new `address_taken` enum value to the `error/code` response property for the response status `401`
  - added the new `address_taken` enum value to the `error/code` response property for the response status `403`
  - added the new `address_taken` enum value to the `error/code` response property for the response status `404`
  - added the new `address_taken` enum value to the `error/code` response property for the response status `429`
  - added the new `attachment_changed` enum value to the `error/code` response property for the response status `400`
  - added the new `attachment_changed` enum value to the `error/code` response property for the response status `401`
  - added the new `attachment_changed` enum value to the `error/code` response property for the response status `403`
  - added the new `attachment_changed` enum value to the `error/code` response property for the response status `404`
  - added the new `attachment_changed` enum value to the `error/code` response property for the response status `429`
  - added the new `attachment_integrity_failed` enum value to the `error/code` response property for the response status `400`
  - added the new `attachment_integrity_failed` enum value to the `error/code` response property for the response status `401`
  - added the new `attachment_integrity_failed` enum value to the `error/code` response property for the response status `403`
  - added the new `attachment_integrity_failed` enum value to the `error/code` response property for the response status `404`
  - added the new `attachment_integrity_failed` enum value to the `error/code` response property for the response status `429`
  - added the new `attachment_limit_exceeded` enum value to the `error/code` response property for the response status `400`
  - added the new `attachment_limit_exceeded` enum value to the `error/code` response property for the response status `401`
  - added the new `attachment_limit_exceeded` enum value to the `error/code` response property for the response status `403`
  - added the new `attachment_limit_exceeded` enum value to the `error/code` response property for the response status `404`
  - added the new `attachment_limit_exceeded` enum value to the `error/code` response property for the response status `429`
  - added the new `attachment_not_ready` enum value to the `error/code` response property for the response status `400`
  - added the new `attachment_not_ready` enum value to the `error/code` response property for the response status `401`
  - added the new `attachment_not_ready` enum value to the `error/code` response property for the response status `403`
  - added the new `attachment_not_ready` enum value to the `error/code` response property for the response status `404`
  - added the new `attachment_not_ready` enum value to the `error/code` response property for the response status `429`
  - added the new `attachment_storage_unavailable` enum value to the `error/code` response property for the response status `400`
  - added the new `attachment_storage_unavailable` enum value to the `error/code` response property for the response status `401`
  - added the new `attachment_storage_unavailable` enum value to the `error/code` response property for the response status `403`
  - added the new `attachment_storage_unavailable` enum value to the `error/code` response property for the response status `404`
  - added the new `attachment_storage_unavailable` enum value to the `error/code` response property for the response status `429`
  - added the new `content_discarded` enum value to the `error/code` response property for the response status `400`
  - added the new `content_discarded` enum value to the `error/code` response property for the response status `401`
  - added the new `content_discarded` enum value to the `error/code` response property for the response status `403`
  - added the new `content_discarded` enum value to the `error/code` response property for the response status `404`
  - added the new `content_discarded` enum value to the `error/code` response property for the response status `429`
  - added the new `domain_cannot_send` enum value to the `error/code` response property for the response status `400`
  - added the new `domain_cannot_send` enum value to the `error/code` response property for the response status `401`
  - added the new `domain_cannot_send` enum value to the `error/code` response property for the response status `403`
  - added the new `domain_cannot_send` enum value to the `error/code` response property for the response status `404`
  - added the new `domain_cannot_send` enum value to the `error/code` response property for the response status `429`
  - …50 more
- **2026-10-07** `8c9748ec969b`: 5 warning
  - added the new `pull_subscription_requires_agent_connection` enum value to the `error/code` response property for the response status `400`
  - added the new `pull_subscription_requires_agent_connection` enum value to the `error/code` response property for the response status `401`
  - added the new `pull_subscription_requires_agent_connection` enum value to the `error/code` response property for the response status `403`
  - added the new `pull_subscription_requires_agent_connection` enum value to the `error/code` response property for the response status `404`
  - added the new `pull_subscription_requires_agent_connection` enum value to the `error/code` response property for the response status `429`
- **2026-10-04** `5df70dfeeab3`: 1 info
  - endpoint added

---

[Operation](https://skmtc.dev/primitive/apis/primitive-api/docs/threads/:id/read/put.md) - [API](https://skmtc.dev/primitive/apis/primitive-api.md) - [Page](https://skmtc.dev/primitive/apis/primitive-api/changes/threads/:id/read/put)
