Proposals for changes to the matrix specification
Breaking Changes
prev_content
field is now returned inside the unsigned
property of events, rather than at the top level, as per MSC3442. (#3524)aliases
property from the chunks returned by /publicRooms
, as per MSC2432. (#3624)New Endpoints
GET /_matrix/client/v1/rooms/{roomId}/hierarchy
) as per MSC2946. (#3610)/_matrix/client/v1/register/m.login.registration_token/validity
as per MSC3231. (#3616)Backwards Compatible Changes
/_matrix/client/r0/login
to accept a m.login.appservice
, as per MSC2778. (#3324)restricted
rooms as per MSC3083, MSC3289, and MSC3375. (#3387)is_guest
to /account/whoami
as per MSC3069. (#3605)m.set_displayname
, m.set_avatar_url
, and m.3pid_changes
capabilities as per MSC3283. (#3614)Spec Clarifications
AesHmacSha2KeyDescription
consistent with KeyDescription
in marking name
as optional. (#3481)m.location
events (#3492)403 M_FORBIDDEN
error code to /profile/{userId}
as per MSC3550. (#3530)/sync
API, including a fix to an ASCII art diagram. (#3543)base_url
in client well_known
may or may not include trailing slash. (#3562)m.olm.v1.curve25519-aes-sha2
messages. (#3573)New Endpoints
GET /_matrix/federation/v1/hierarchy/{roomId}
) as per MSC2946. (#3610, #3660)Backwards Compatible Changes
Spec Clarifications
GET /_matrix/federation/v1/event_auth/{roomId}/{eventId}
does not return the auth chain for the full state of the room. (#3583)Spec Clarifications
GET /_matrix/app/v1/thirdparty/protocol/{protocol}
. (#3675)Backwards Compatible Changes
Spec Clarifications
Spec Clarifications
Backwards Compatible Changes
Spec Clarifications
unsigned
data of a Federation PDU. (#3522)knock
-> leave
in v7, v8, and v9. (#3694)Backwards Compatible Changes
Breaking Changes
curve25519-hkdf-sha256
key agreement method for SAS verification, and deprecate old method as per MSC2630. (#2687)m.key.verification.ready
and m.key.verification.done
to key verification framework as per MSC2366. (#3139)Deprecations
m.key.verification.request
as per MSC3122. (#3199)New Endpoints
/room_keys/*
) endpoints as per MSC1219. (#2387, #2639)POST /keys/device_signing/upload
and POST /keys/signatures/upload
as per MSC1756. (#2536)/knock
endpoint as per MSC2403. (#3154)/login/sso/redirect/{idpId}
as per MSC2858. (#3163)Removed Endpoints
m.login.oauth2
and m.login.token
user-interactive authentication mechanisms as per MSC2610 and MSC2611. (#2609)Backwards Compatible Changes
POST /keys/query
as per MSC1756. (#2536)device_id
parameter to login fallback as per MSC2604. (#2709)reason
on all membership events and related endpoints as per MSC2367. (#2795)M_NOT_FOUND
error to push rule endpoints as per MSC2663. (#2796)reason
and score
parameters optional in the content reporting API as per MSC2414. (#2807)color
attribute as per MSC2422. (#3098)<details>
and <summary>
to the suggested HTML subset as per MSC2184. (#3100)m.login.sso
as per MSC2858. (#3163)device_id
to /account/whoami
response as per MSC2033. (#3166)FAIL_PROMPT
as per MSC2284. (#3169)v3
as a starting point instead of r0
as per MSC2844. (#3421)Spec Clarifications
age
and unsigned
being shown in the wrong places. (#2591)room_id
from /sync
examples. (#2629)title
s. (#2647)m.key.verification.accept
and secret storage. (#2653)highlight
tweak for consistency. (#2670)state
for /sync
with lazy-loading. (#2754)m.room.redaction
event. (#2814)messages
as a required JSON body field in PUT /_matrix/client/r0/sendToDevice/{eventType}/{txnId}
calls. (#2928)client_secret
request body parameters so that they do not include invalid characters. (#2985)m.presence
. (#3091)Access-Control-Allow-Headers
recommendation to fit CORS specification. (#3225)replacement_room
is a room ID in m.room.tombstone
events. (#3233)/sync
, /rooms/{room_id}/messages
, /initialSync
, /rooms/{room_id}/initialSync
, and /notifications
. (#3353)redacted_because
is meant to work. (#3411)mimetype
from EncryptedFile
examples, as per MSC2582. (#3412)/versions
endpoint. (#3420)threepid_creds
. (#3471)New Endpoints
Backwards Compatible Changes
GET /user/keys
and GET /user/devices/{userId}
, m.device_list_update
EDU, and a new m.signing_key_update
EDU as per MSC1756. (#2536)Spec Clarifications
GET /_matrix/federation/v1/make_join/{roomId}/{userId}
can return a 404 if the room is unknown. (#2688)/_matrix/federation/v1/user/devices/{userId}
response which actually returns "self_signing_key"
instead of "self_signing_keys"
. (#3312)<hostname>
TLS certificate is needed rather than <delegated_hostname>
for SRV delegation. (#3322)prev_events
. (#3340)Spec Clarifications
New Endpoints
Removed Endpoints
Spec Clarifications
/versions
endpoint. (#3459)Spec Clarifications
/rooms/{roomId}/aliases
for retrieving local aliases for a room. (#2562).m.rule.contains_user_name
default push rule to set the highlight tweak. (#2519)event_id
is returned when sending events. (#2525)/createRoom
. (#2571)POST /publicRooms
endpoint for filtering the room directory. (#2305)/send_join
and /send_leave
endpoints per MSC1802. (#2547)prev_events
and auth_events
for PDUs. (#2538)/send
endpoint. (#2560)/send_join
. (#2575)id_access_token
as a required request parameter to a few
endpoints which require an id_server
parameter as part of
MSC2140.
(#2255)POST /account/3pid/unbind
for removing a 3PID from an identity
server.
(#2282)M_USER_DEACTIVATED
error code.
(#2234)bind_msisdn
and bind_email
from /register
now that the
identity server's bind endpoint requires authentication.
(#2279)m.identity_server
account data for tracking the user's
preferred identity server.
(#2281)id_server
and make it optional in several places.
(#2310)m.room.message$m.notice
schema.
(#2125)url
field of certain
m.room.message
msgtypes.
(#2129)m.key.verification.start
and its
m.sas.v1
variant.
(#2132).m.rule.room_one_to_one
push rule.
(#2152)/rooms/:roomId/event/:eventId
returns a Matrix error.
(#2204)state_key
check on .m.rule.tombstone
.
(#2223)m.room_key_request
action
value, setting it from
cancel_request
to request_cancellation
.
(#2247)submit_url
field is without authentication.
(#2341)/context
.
(#2344)/sync
.
(#2345)/account
, /account/register
, and /account/logout
to
authenticate with the identity server.
(#2255)/hash_details
and a new /lookup
endpoint for performing
hashed association lookups.
(#2287)access_token
parameter in the open_id endpoint.
(#1906)valid_until_ts
behaves with respect to room version.
(#2080)/keys/*
endpoints
when no key ID is requested.
(#2097)