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: []