---
title: "Changes to Read canonical messages and a room cursor in one snapshot"
method: POST
path: "/v1/chat/rooms/{roomId}/messages/snapshot"
---

# Changes to Read canonical messages and a room cursor in one snapshot

`POST /v1/chat/rooms/{roomId}/messages/snapshot`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 7 of 87 revisions.

- **2026-10-26** `97ecc6caa9a3`: 4 info
- **2026-10-25** `8d368659667e`: 596 breaking, 598 info
- **2026-10-23** `c32e4c511ac5`: 2 info
- **2026-10-15** `c3b07d60c348`: 2 breaking, 24 info
- **2026-10-12** `e2cc50ac0860`: 2 info
- **2026-10-07** `440fd2d98e59`: 22 info
- **2026-10-04** `ec3c2c8d9c62`: 1 info

## Changes

- **2026-10-26** `97ecc6caa9a3`: 4 info
  - added the optional property `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/recap_content/anyOf[#/components/schemas/RecapContent]/translations/de` to the response with the `200` status
  - added the optional property `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/recap_content/anyOf[#/components/schemas/RecapContent]/translations/es` to the response with the `200` status
  - added the optional property `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/recap_content/anyOf[#/components/schemas/RecapContent]/translations/de` to the response with the `200` status
  - added the optional property `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/recap_content/anyOf[#/components/schemas/RecapContent]/translations/es` to the response with the `200` status
- **2026-10-25** `8d368659667e`: 596 breaking, 598 info
  - the response property `latestPage/messages/items/attachments/items/blur_hash` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/duration` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/external_url` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/message_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/s3_key` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/signed_url` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/signed_url_expires_at` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/thumbnail_url` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/uploaded_at` became nullable for the status `200`
  - the response property `latestPage/messages/items/attachments/items/url` became nullable for the status `200`
  - the response property `latestPage/messages/items/content` became nullable for the status `200`
  - the response property `latestPage/messages/items/deleted_at` became nullable for the status `200`
  - the response property `latestPage/messages/items/edited_at` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/content` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/deleted_at` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/bio` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/clan/anyOf[subschema #1]/banner_url` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/clan/anyOf[subschema #1]/chat_room_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/clan/anyOf[subschema #1]/description` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/clan/anyOf[subschema #1]/image_url` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/clan_fee_rebate_rate` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/clan_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/deleted_at` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/fee_rebate_override_rate` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/fee_rebate_rate` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/invite_code_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/last_online` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/last_online_mobile` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/last_reset_at` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/main_signer_quorum_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/max_market_order_slippage` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/referral_code` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/referral_code_alt` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/referred_by_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/telegram_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/wallet_address` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/wallets/items/signer_quorum_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/x_username` became nullable for the status `200`
  - the response property `latestPage/messages/items/forwarded_from_id` became nullable for the status `200`
  - the response property `latestPage/messages/items/link_preview/anyOf[#/components/schemas/LinkPreview]/description` became nullable for the status `200`
  - …1154 more
- **2026-10-23** `c32e4c511ac5`: 2 info
  - added the optional property `latestPage/messages/items/reactions/items/users/items/reacted_at` to the response with the `200` status
  - added the optional property `messages/items/reactions/items/users/items/reacted_at` to the response with the `200` status
- **2026-10-15** `c3b07d60c348`: 2 breaking, 24 info
  - the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response's property type changed from `string` to no type for status `200`
  - the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response's property type changed from `string` to no type for status `200`
  - added `#/components/schemas/ChatMessagePlatform` to the `latestPage/messages/items/platform` response property `anyOf` list for the response status `200`
  - added `#/components/schemas/ChatMessagePlatform` to the `messages/items/platform` response property `anyOf` list for the response status `200`
  - added `subschema #1, subschema #2` to the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property `anyOf` list for the response status `200`
  - added `subschema #1, subschema #2` to the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property `anyOf` list for the response status `200`
  - removed `subschema #1` from the `latestPage/messages/items/platform` response property `anyOf` list for the response status `200`
  - removed `subschema #1` from the `messages/items/platform` response property `anyOf` list for the response status `200`
  - removed the `chart_note` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `chart_note` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `copy_trade` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `copy_trade` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_added` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_added` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_closed` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_closed` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_flipped` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_flipped` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_opened` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_opened` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_reduced` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `position_reduced` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `recap` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `recap` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `standalone` enum value from the `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
  - removed the `standalone` enum value from the `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/type` response property for the response status `200`
- **2026-10-12** `e2cc50ac0860`: 2 info
  - added the optional property `latestPage/messages/items/command_execution` to the response with the `200` status
  - added the optional property `messages/items/command_execution` to the response with the `200` status
- **2026-10-07** `440fd2d98e59`: 22 info
  - added the optional property `latestPage/messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/mentioned_users/items/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/pinned_by/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/callerCopyProfileId` to the response with the `200` status
  - added the optional property `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/copiedUser/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/copiers/items/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/mentioned_users/items/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/user/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/reply_to/anyOf[#/components/schemas/ReplyToMessage]/mentioned_users/items/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/reply_to/anyOf[#/components/schemas/ReplyToMessage]/user/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `latestPage/messages/items/user/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `messages/items/forwarded_from/anyOf[#/components/schemas/ForwardedFromMessage]/user/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `messages/items/mentioned_users/items/callerActions` to the response with the `200` status
  - added the optional property `messages/items/pinned_by/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/callerCopyProfileId` to the response with the `200` status
  - added the optional property `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/copiedUser/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/copiers/items/callerActions` to the response with the `200` status
  - added the optional property `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/mentioned_users/items/callerActions` to the response with the `200` status
  - added the optional property `messages/items/quoted_post/anyOf[#/components/schemas/BasePost]/user/callerActions` to the response with the `200` status
  - added the optional property `messages/items/reply_to/anyOf[#/components/schemas/ReplyToMessage]/mentioned_users/items/callerActions` to the response with the `200` status
  - added the optional property `messages/items/reply_to/anyOf[#/components/schemas/ReplyToMessage]/user/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
  - added the optional property `messages/items/user/anyOf[#/components/schemas/PublicUser]/callerActions` to the response with the `200` status
- **2026-10-04** `ec3c2c8d9c62`: 1 info
  - endpoint added

---

[Operation](https://skmtc.dev/legend/apis/legend-api/docs/v1/chat/rooms/:roomId/messages/snapshot/post.md) - [API](https://skmtc.dev/legend/apis/legend-api.md) - [Page](https://skmtc.dev/legend/apis/legend-api/changes/v1/chat/rooms/:roomId/messages/snapshot/post)
