From e9f219d53b81d1a9e78c9aa1df85057702dbf5d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= <76261501+zecakeh@users.noreply.github.com> Date: Tue, 27 Jan 2026 09:51:50 +0100 Subject: [PATCH] Spec MSC4169: Backwards-compatible redaction sending using /send (#2298) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Spec MSC4169: Backwards-compatible redaction sending using /send Signed-off-by: Kévin Commaille * Add changelog Signed-off-by: Kévin Commaille * Apply suggestions Signed-off-by: Kévin Commaille --------- Signed-off-by: Kévin Commaille --- changelogs/client_server/newsfragments/2298.feature | 1 + content/client-server-api/_index.md | 8 ++++++++ data/api/client-server/room_send.yaml | 9 +++++++++ 3 files changed, 18 insertions(+) create mode 100644 changelogs/client_server/newsfragments/2298.feature diff --git a/changelogs/client_server/newsfragments/2298.feature b/changelogs/client_server/newsfragments/2298.feature new file mode 100644 index 00000000..9f55d7ee --- /dev/null +++ b/changelogs/client_server/newsfragments/2298.feature @@ -0,0 +1 @@ +Add support for `m.room.redaction` events at the `PUT /rooms/{roomId}/send/{eventType}/{txnId}` endpoint, as per [MSC4169](https://github.com/matrix-org/matrix-spec-proposals/pull/4169). diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index 6f680fde..1bc8fdbc 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -3315,6 +3315,14 @@ the topic to be removed from the room. #### Client behaviour +{{% changed-in v="1.18" %}} + +If the server advertises support for a spec version that supports it, clients +MAY use the [`PUT /rooms/{roomId}/send/{eventType}/{txnId}`](#put_matrixclientv3roomsroomidsendeventtypetxnid) +endpoint to send `m.room.redaction` events in all room versions. + +They can also use the following endpoint. + {{% http-api spec="client-server" api="redaction" %}} ### Forming relationships between events diff --git a/data/api/client-server/room_send.yaml b/data/api/client-server/room_send.yaml index 25d8a75b..5c3d0019 100644 --- a/data/api/client-server/room_send.yaml +++ b/data/api/client-server/room_send.yaml @@ -20,6 +20,10 @@ paths: "/rooms/{roomId}/send/{eventType}/{txnId}": put: summary: Send a message event to the given room. + x-changedInMatrixVersion: + "1.18": |- + Homeservers must support sending `m.room.redaction` events with this endpoint + for all room versions. description: |- This endpoint is used to send a message event to a room. Message events allow access to historical events and pagination, making them suited @@ -28,6 +32,11 @@ paths: The body of the request should be the content object of the event; the fields in this object will vary depending on the type of event. See [Room Events](/client-server-api/#room-events) for the m. event specification. + + Homeservers MUST allow clients to send `m.room.redaction` events with this + endpoint for all room versions. In rooms with a version older than 11 they + MUST move the `redacts` property inside the `content` to the top level of + the event. operationId: sendMessage security: - accessTokenQuery: []