From b270233549fb646d382b34ffd28d375d087ffff2 Mon Sep 17 00:00:00 2001 From: "Crom (Thibaut CHARLES)" Date: Wed, 13 Dec 2017 14:12:27 +0100 Subject: [PATCH 01/23] Add createRoom guest_can_join parameter --- api/client-server/create_room.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/api/client-server/create_room.yaml b/api/client-server/create_room.yaml index d1a0e97a..88938022 100644 --- a/api/client-server/create_room.yaml +++ b/api/client-server/create_room.yaml @@ -179,6 +179,10 @@ paths: This flag makes the server set the ``is_direct`` flag on the ``m.room.member`` events sent to the users in ``invite`` and ``invite_3pid``. See `Direct Messaging`_ for more information. + guest_can_join: + type: boolean + description: |- + Allows guests to join the room. See `Guest Access`_ for more information. responses: 200: description: Information about the newly created room. From 42c1031cdf5a5cfc15ae486c8293759032f592d3 Mon Sep 17 00:00:00 2001 From: Thibaut CHARLES Date: Wed, 13 Dec 2017 16:26:09 +0100 Subject: [PATCH 02/23] updated changelog --- changelogs/client_server.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/changelogs/client_server.rst b/changelogs/client_server.rst index 4a26c302..3f0da0e9 100644 --- a/changelogs/client_server.rst +++ b/changelogs/client_server.rst @@ -61,6 +61,8 @@ r0.3.0 - Add ``m.room.pinned_events`` state event for rooms. (`#1007 `_). - Add mention of ability to send Access Token via an Authorization Header. + - Add ``guest_can_join`` parameter to ``POST /createRoom`` + (`#1093 `_). - New endpoints: From 97445195f65487337f8ef2438fecca02e2259d3f Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Sun, 17 Dec 2017 23:42:44 +0000 Subject: [PATCH 03/23] add user_directory --- api/client-server/users.yaml | 93 +++++++++++++++++++++++++++++ specification/client_server_api.rst | 7 +++ 2 files changed, 100 insertions(+) create mode 100644 api/client-server/users.yaml diff --git a/api/client-server/users.yaml b/api/client-server/users.yaml new file mode 100644 index 00000000..e04faac8 --- /dev/null +++ b/api/client-server/users.yaml @@ -0,0 +1,93 @@ +# Copyright 2016 OpenMarket Ltd +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +swagger: '2.0' +info: + title: "Matrix Client-Server Profile API" + version: "1.0.0" +host: localhost:8008 +schemes: + - https + - http +basePath: /_matrix/client/%CLIENT_MAJOR_VERSION% +consumes: + - application/json +produces: + - application/json +securityDefinitions: + $ref: definitions/security.yaml +paths: + "/user_directory/search": + post: + summary: Searches the user directory. + description: |- + This API paginates over search results of the user directory. + security: + - accessToken: [] + parameters: + - in: body + name: body + schema: + type: object + properties: + search_term: + type: string + description: The term to search for + example: "foo" + limit: + type: number + description: The maximum number of results to return + example: 10 + required: ["search_term"] + responses: + 200: + description: The results of the paginated search. + examples: + application/json: { + "results": [ + { + "user_id": "@foo:bar.com", + "display_name": "Foo", + "avatar_url": "mxc://bar.com/foo" + } + ], + "limited": false + } + schema: + type: object + required: ["results", "limited"] + properties: + results: + type: array + items: + title: User + type: object + properties: + user_id: + type: string + example: "@foo:bar.com" + display_name: + type: string + example: "Foo" + avatar_url: + type: string + example: "mxc://bar.com/foo" + limited: + type: boolean + description: Indicates if the result list has been truncated by the limit. + 429: + description: This request was rate-limited. + schema: + "$ref": "definitions/error.yaml" + tags: + - User data diff --git a/specification/client_server_api.rst b/specification/client_server_api.rst index e68aea43..2586041d 100644 --- a/specification/client_server_api.rst +++ b/specification/client_server_api.rst @@ -1335,6 +1335,13 @@ Listing rooms {{list_public_rooms_cs_http_api}} + +Users +----- + +{{users_cs_http_api}} + + Profiles -------- From 1f7d4cd9d07891ad2f122faa1109ffa4758b38da Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Sun, 17 Dec 2017 23:45:55 +0000 Subject: [PATCH 04/23] add changelog entry --- changelogs/client_server.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/changelogs/client_server.rst b/changelogs/client_server.rst index 4a26c302..faae2476 100644 --- a/changelogs/client_server.rst +++ b/changelogs/client_server.rst @@ -76,6 +76,9 @@ r0.3.0 - ``GET /media/{version}/preview_url`` (`#1064 `_). + - ``POST /user_directory/search`` + (`#1096 `_). + - Spec clarifications: - Add endpoints and logic for invites and third-party invites to the federation From b80f38e11b62ef0ca35e9e8acb557aba867036c0 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 18 Dec 2017 13:30:37 +0000 Subject: [PATCH 05/23] fix changelog entry --- changelogs/client_server.rst | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/changelogs/client_server.rst b/changelogs/client_server.rst index faae2476..13d895fa 100644 --- a/changelogs/client_server.rst +++ b/changelogs/client_server.rst @@ -1,7 +1,12 @@ Unreleased changes ================== -No changes as yet. +- Changes to the API which will be backwards-compatible for clients: + + - New endpoints: + + - ``POST /user_directory/search`` + (`#1096 `_). r0.3.0 ====== @@ -76,9 +81,6 @@ r0.3.0 - ``GET /media/{version}/preview_url`` (`#1064 `_). - - ``POST /user_directory/search`` - (`#1096 `_). - - Spec clarifications: - Add endpoints and logic for invites and third-party invites to the federation From d9a4ddbf65b2b1dc9aadcc19f3a6ec1283c4779c Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 18 Dec 2017 13:34:26 +0000 Subject: [PATCH 06/23] Mark `home_server` field deprecated This is spelt wrong, and is redundant to user_id, so let's stop people using it. --- api/client-server/login.yaml | 8 ++++++-- api/client-server/registration.yaml | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/api/client-server/login.yaml b/api/client-server/login.yaml index ff3eb392..d5bd0f73 100644 --- a/api/client-server/login.yaml +++ b/api/client-server/login.yaml @@ -96,7 +96,6 @@ paths: application/json: { "user_id": "@cheeky_monkey:matrix.org", "access_token": "abc123", - "home_server": "matrix.org", "device_id": "GHTYAJCE" } schema: @@ -112,7 +111,12 @@ paths: This access token can then be used to authorize other requests. home_server: type: string - description: The hostname of the homeserver on which the account has been registered. + description: |- + The server_name of the homeserver on which the account has been registered. + + **Deprecated**. Clients should extract the server_name from + ``user_id`` if they require it. Note also that ``homeserver`` + is not spelt this way. device_id: type: string description: |- diff --git a/api/client-server/registration.yaml b/api/client-server/registration.yaml index 52693f5b..50839f4e 100644 --- a/api/client-server/registration.yaml +++ b/api/client-server/registration.yaml @@ -124,7 +124,6 @@ paths: application/json: { "user_id": "@cheeky_monkey:matrix.org", "access_token": "abc123", - "home_server": "matrix.org", "device_id": "GHTYAJCE" } schema: @@ -144,7 +143,12 @@ paths: This access token can then be used to authorize other requests. home_server: type: string - description: The hostname of the homeserver on which the account has been registered. + description: |- + The server_name of the homeserver on which the account has been registered. + + **Deprecated**. Clients should extract the server_name from + ``user_id`` if they require it. Note also that ``homeserver`` + is not spelt this way. device_id: type: string description: |- From 6a524be585ed01ef688f2441184152be221bb3e1 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 18 Dec 2017 13:37:30 +0000 Subject: [PATCH 07/23] changelog --- changelogs/client_server.rst | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/changelogs/client_server.rst b/changelogs/client_server.rst index 4a26c302..b0fb8426 100644 --- a/changelogs/client_server.rst +++ b/changelogs/client_server.rst @@ -1,7 +1,11 @@ Unreleased changes ================== -No changes as yet. +- Spec clarifications: + + - Mark ``home_server`` return field for ``/login`` and ``/register`` + endpoints as deprecated + (`#1097 `_). r0.3.0 ====== From a36f8ba00d0803c8727cbc84fb77cd4e7c3d1451 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 18 Dec 2017 14:16:25 +0000 Subject: [PATCH 08/23] Forbid colons in MXIDs There is a single (AS) user on matrix.org who has a colon in their localpart, but I suspect that is an artifact of old bridge code and won't work over federation anyway. Colons in MXIDs are particularly harmful because they make it impossible to split mxids into local- and remote-parts --- specification/appendices/identifier_grammar.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/appendices/identifier_grammar.rst b/specification/appendices/identifier_grammar.rst index d53f61ac..e85bf410 100644 --- a/specification/appendices/identifier_grammar.rst +++ b/specification/appendices/identifier_grammar.rst @@ -139,7 +139,7 @@ history includes events with a ``sender`` which does not conform. In order to handle these rooms successfully, clients and servers MUST accept user IDs with localparts from the expanded character set:: - extended_user_id_char = %x21-7E + extended_user_id_char = %x21-39 / %x3B-7F ; all ascii printing chars except : Mapping from other character sets <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< From 00b28495a63b18a1a436966ccb673e1e4a0c431b Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 18 Dec 2017 14:48:56 +0000 Subject: [PATCH 09/23] Explain how to split an mxid --- api/client-server/login.yaml | 7 ++++--- api/client-server/registration.yaml | 7 ++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/api/client-server/login.yaml b/api/client-server/login.yaml index d5bd0f73..03a1622c 100644 --- a/api/client-server/login.yaml +++ b/api/client-server/login.yaml @@ -112,11 +112,12 @@ paths: home_server: type: string description: |- - The server_name of the homeserver on which the account has been registered. + The server_name of the homeserver on which the account has + been registered. **Deprecated**. Clients should extract the server_name from - ``user_id`` if they require it. Note also that ``homeserver`` - is not spelt this way. + ``user_id`` (by splitting at the first colon) if they require + it. Note also that ``homeserver`` is not spelt this way. device_id: type: string description: |- diff --git a/api/client-server/registration.yaml b/api/client-server/registration.yaml index 50839f4e..fd8f6832 100644 --- a/api/client-server/registration.yaml +++ b/api/client-server/registration.yaml @@ -144,11 +144,12 @@ paths: home_server: type: string description: |- - The server_name of the homeserver on which the account has been registered. + The server_name of the homeserver on which the account has + been registered. **Deprecated**. Clients should extract the server_name from - ``user_id`` if they require it. Note also that ``homeserver`` - is not spelt this way. + ``user_id`` (by splitting at the first colon) if they require + it. Note also that ``homeserver`` is not spelt this way. device_id: type: string description: |- From d219cbc97886d23700bab26486dff6079f629bcd Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 18 Dec 2017 16:54:11 +0000 Subject: [PATCH 10/23] apply points from review --- api/client-server/users.yaml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/api/client-server/users.yaml b/api/client-server/users.yaml index e04faac8..ff24967a 100644 --- a/api/client-server/users.yaml +++ b/api/client-server/users.yaml @@ -1,4 +1,4 @@ -# Copyright 2016 OpenMarket Ltd +# Copyright 2017 New Vector Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -13,7 +13,7 @@ # limitations under the License. swagger: '2.0' info: - title: "Matrix Client-Server Profile API" + title: "Matrix Client-Server User Directory API" version: "1.0.0" host: localhost:8008 schemes: @@ -31,7 +31,9 @@ paths: post: summary: Searches the user directory. description: |- - This API paginates over search results of the user directory. + This API performs a server-side search over all users registered on the server. + Searches MXID and displayname case-insesitively for users that you share a room with or that are in public rooms. + operationId: postUserDirectorySearch security: - accessToken: [] parameters: @@ -46,12 +48,12 @@ paths: example: "foo" limit: type: number - description: The maximum number of results to return + description: The maximum number of results to return (10 if omitted), with a maximum of 50 example: 10 required: ["search_term"] responses: 200: - description: The results of the paginated search. + description: The results of the search. examples: application/json: { "results": [ @@ -69,9 +71,11 @@ paths: properties: results: type: array + description: Ordered by rank and then whether or not profile info is available. items: title: User type: object + require: ["user_id"] properties: user_id: type: string From 3d8fe6e0903a0071f1d2080a9813d04f70d69541 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 18 Dec 2017 17:01:52 +0000 Subject: [PATCH 11/23] merge profiles with user directory into user data, also fix typo --- api/client-server/users.yaml | 5 ++++- specification/client_server_api.rst | 9 ++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/api/client-server/users.yaml b/api/client-server/users.yaml index ff24967a..cecf9424 100644 --- a/api/client-server/users.yaml +++ b/api/client-server/users.yaml @@ -75,17 +75,20 @@ paths: items: title: User type: object - require: ["user_id"] + required: ["user_id"] properties: user_id: type: string example: "@foo:bar.com" + description: The MXID of the user. display_name: type: string example: "Foo" + description: The display name of the user, if one exists. avatar_url: type: string example: "mxc://bar.com/foo" + description: The avatar url, as an MXC, if one exists. limited: type: boolean description: Indicates if the result list has been truncated by the limit. diff --git a/specification/client_server_api.rst b/specification/client_server_api.rst index 2586041d..e40aa6f1 100644 --- a/specification/client_server_api.rst +++ b/specification/client_server_api.rst @@ -1336,14 +1336,17 @@ Listing rooms {{list_public_rooms_cs_http_api}} -Users ------ +User Data +--------- + +User Directory +~~~~~~~~~~~~~~ {{users_cs_http_api}} Profiles --------- +~~~~~~~~ {{profile_cs_http_api}} From 1fb7647021014cb27a39c721bcf9180f12a8894b Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 18 Dec 2017 17:58:35 +0000 Subject: [PATCH 12/23] send_join: clarify auth_chain description The auth_chain field should contain all of the auth events required to auth the state events, as well as those required to auth the join event itself. (cf https://github.com/matrix-org/synapse/blob/e148438/synapse/handlers/federation.py#L1076-L1077). --- specification/server_server_api.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/specification/server_server_api.rst b/specification/server_server_api.rst index 0770e38e..d97f9d1f 100644 --- a/specification/server_server_api.rst +++ b/specification/server_server_api.rst @@ -941,11 +941,11 @@ following keys: ============== ===== ============ Key Type Description ============== ===== ============ -``auth_chain`` List A list of events giving the authorization chain for this - join event +``auth_chain`` List A list of events giving the all of the events in the auth + chains for the join event and the events in ``state``. ``state`` List A complete list of the prevailing state events at the instant just before accepting the new ``m.room.member`` - event + event. ============== ===== ============ .. TODO-spec From 15ca952cc3898acfa41bf18dbcdf9cfaa8daee2c Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Wed, 20 Dec 2017 10:10:02 +0000 Subject: [PATCH 13/23] remove spurious word --- specification/server_server_api.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/server_server_api.rst b/specification/server_server_api.rst index d97f9d1f..43874321 100644 --- a/specification/server_server_api.rst +++ b/specification/server_server_api.rst @@ -941,7 +941,7 @@ following keys: ============== ===== ============ Key Type Description ============== ===== ============ -``auth_chain`` List A list of events giving the all of the events in the auth +``auth_chain`` List A list of events giving all of the events in the auth chains for the join event and the events in ``state``. ``state`` List A complete list of the prevailing state events at the instant just before accepting the new ``m.room.member`` From 784adade9bc0332359d815036c53722aed82e3b4 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 21 Dec 2017 17:45:26 +0000 Subject: [PATCH 14/23] changes based on Pull Request feedback --- api/client-server/users.yaml | 8 ++++---- specification/client_server_api.rst | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/api/client-server/users.yaml b/api/client-server/users.yaml index cecf9424..1734e3bb 100644 --- a/api/client-server/users.yaml +++ b/api/client-server/users.yaml @@ -32,8 +32,8 @@ paths: summary: Searches the user directory. description: |- This API performs a server-side search over all users registered on the server. - Searches MXID and displayname case-insesitively for users that you share a room with or that are in public rooms. - operationId: postUserDirectorySearch + It searches user ID and displayname case-insensitively for users that you share a room with or that are in public rooms. + operationId: searchUserDirectory security: - accessToken: [] parameters: @@ -48,7 +48,7 @@ paths: example: "foo" limit: type: number - description: The maximum number of results to return (10 if omitted), with a maximum of 50 + description: The maximum number of results to return (Defaults to 10). example: 10 required: ["search_term"] responses: @@ -80,7 +80,7 @@ paths: user_id: type: string example: "@foo:bar.com" - description: The MXID of the user. + description: The user's matrix user ID. display_name: type: string example: "Foo" diff --git a/specification/client_server_api.rst b/specification/client_server_api.rst index e40aa6f1..326ff282 100644 --- a/specification/client_server_api.rst +++ b/specification/client_server_api.rst @@ -1351,7 +1351,7 @@ Profiles {{profile_cs_http_api}} Events on Change of Profile Information -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ++++++++++++++++++++++++++++++++++++++++ Because the profile display name and avatar information are likely to be used in many places of a client's display, changes to these fields cause an automatic propagation event to occur, informing likely-interested parties of the new From 1674b0e3b5ab8c9d6c46e9cf52acadfd315ba601 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 10 Jan 2018 17:43:35 +0000 Subject: [PATCH 15/23] Doc /keys/query 'token' param --- api/client-server/keys.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/api/client-server/keys.yaml b/api/client-server/keys.yaml index 096e63b3..313e30f4 100644 --- a/api/client-server/keys.yaml +++ b/api/client-server/keys.yaml @@ -1,4 +1,5 @@ # Copyright 2016 OpenMarket Ltd +# Copyright 2018 New Vector Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -131,6 +132,13 @@ paths: description: "device ID" example: "@alice:example.com": [] + token: + type: string + description: |- + If the client is fetching keys as a result of a device update received + in a sync request, this should be the 'since' token of that sync request, + or any later sync token. This allows the server to ensure its response + contains the keys advertised by the notification in that sync. required: - device_keys From bb0bbedb873b16ca8486d7e11fc978697657792a Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 10 Jan 2018 17:46:25 +0000 Subject: [PATCH 16/23] indenting --- api/client-server/keys.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/client-server/keys.yaml b/api/client-server/keys.yaml index 313e30f4..317a1295 100644 --- a/api/client-server/keys.yaml +++ b/api/client-server/keys.yaml @@ -137,7 +137,7 @@ paths: description: |- If the client is fetching keys as a result of a device update received in a sync request, this should be the 'since' token of that sync request, - or any later sync token. This allows the server to ensure its response + or any later sync token. This allows the server to ensure its response contains the keys advertised by the notification in that sync. required: - device_keys From 7c6a97e82c903d2cdb173f163c527a51bce6df9f Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 10 Jan 2018 17:57:00 +0000 Subject: [PATCH 17/23] Add PR 1104 to changelog --- changelogs/client_server.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/changelogs/client_server.rst b/changelogs/client_server.rst index 8d5f4559..0f6d6e91 100644 --- a/changelogs/client_server.rst +++ b/changelogs/client_server.rst @@ -14,6 +14,10 @@ Unreleased changes endpoints as deprecated (`#1097 `_). +- Changes to the API which will be backwards-compatible for clients: + - Add 'token' parameter to /keys/query endpoint + (`#1104 `_). + r0.3.0 ====== From 2e684bcc4bc38294fa33af9c9e125facc97f52b8 Mon Sep 17 00:00:00 2001 From: Richard van der Hoff Date: Mon, 15 Jan 2018 09:13:31 +0000 Subject: [PATCH 18/23] fix readme typo --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 5ceeae5f..5c9edac7 100644 --- a/README.rst +++ b/README.rst @@ -172,7 +172,7 @@ Examples: `improvement `_ ---------------------------------------------------------------------------- -A suggestion for a relaatively simple improvement to the protocol. +A suggestion for a relatively simple improvement to the protocol. Examples: From ca09415e803cda522c0166dfb78cc62355aef40a Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 17 Jan 2018 11:16:48 +0000 Subject: [PATCH 19/23] Fix /keys/changes response to reflect reality --- api/client-server/keys.yaml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/api/client-server/keys.yaml b/api/client-server/keys.yaml index 317a1295..1b821dea 100644 --- a/api/client-server/keys.yaml +++ b/api/client-server/keys.yaml @@ -336,7 +336,7 @@ paths: schema: type: object properties: - changes: + changed: type: array items: type: string @@ -344,5 +344,14 @@ paths: The Matrix User IDs of all users who updated their device identity keys. example: ["@alice:example.com", "@bob:example.org"] + left: + type: array + items: + type: string + description: |- + The Matrix User IDs of all users who may have left an + end-to-end encrypted room that the user is joined to. + identity keys. + example: ["@clara:example.com", "@doug:example.org"] tags: - End-to-end encryption From 2a9a9e757e10da1b8583afb836ada956b2468a80 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 17 Jan 2018 11:20:26 +0000 Subject: [PATCH 20/23] add changelog --- changelogs/client_server.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/changelogs/client_server.rst b/changelogs/client_server.rst index 0f6d6e91..27f37d57 100644 --- a/changelogs/client_server.rst +++ b/changelogs/client_server.rst @@ -13,6 +13,8 @@ Unreleased changes - Mark ``home_server`` return field for ``/login`` and ``/register`` endpoints as deprecated (`#1097 `_). + - Fix response format of ``/keys/changes`` endpoint + (`#1106 `_) - Changes to the API which will be backwards-compatible for clients: - Add 'token' parameter to /keys/query endpoint From fa0eb2405f349c8af61fd8616cc6148fc3f47b42 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 17 Jan 2018 11:25:09 +0000 Subject: [PATCH 21/23] all rooms, not any, and remove extra words --- api/client-server/keys.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/api/client-server/keys.yaml b/api/client-server/keys.yaml index 1b821dea..5fb6318e 100644 --- a/api/client-server/keys.yaml +++ b/api/client-server/keys.yaml @@ -349,9 +349,9 @@ paths: items: type: string description: |- - The Matrix User IDs of all users who may have left an - end-to-end encrypted room that the user is joined to. - identity keys. + The Matrix User IDs of all users who may have left all + the end-to-end encrypted rooms they previously shared + with the user. example: ["@clara:example.com", "@doug:example.org"] tags: - End-to-end encryption From 849a7662fea03f3f7bc51f3aaa028f6b9a85281c Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 18 Jan 2018 16:08:18 +0000 Subject: [PATCH 22/23] Fix changelog, hopefully --- changelogs/client_server.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/changelogs/client_server.rst b/changelogs/client_server.rst index 27f37d57..4788ba4a 100644 --- a/changelogs/client_server.rst +++ b/changelogs/client_server.rst @@ -17,6 +17,7 @@ Unreleased changes (`#1106 `_) - Changes to the API which will be backwards-compatible for clients: + - Add 'token' parameter to /keys/query endpoint (`#1104 `_). From 7e94cd5a0bff5b3c9cc50ebb231db2d2419cbae6 Mon Sep 17 00:00:00 2001 From: Nathan Musoke Date: Sat, 20 Jan 2018 19:15:01 +1300 Subject: [PATCH 23/23] Typo in client-server spec: ether -> either --- specification/client_server_api.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/client_server_api.rst b/specification/client_server_api.rst index 326ff282..464d20ae 100644 --- a/specification/client_server_api.rst +++ b/specification/client_server_api.rst @@ -192,7 +192,7 @@ requests can be handled correctly. By default, the `Login`_ and `Registration`_ processes auto-generate a new ``device_id``. A client is also free to generate its own ``device_id`` or, -provided the user remains the same, reuse a device: in ether case the client +provided the user remains the same, reuse a device: in either case the client should pass the ``device_id`` in the request body. If the client sets the ``device_id``, the server will invalidate any access token previously assigned to that device. There is therefore at most one active access token assigned to