From 8350b88a3dee942769603c5599521ac081aed4f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Tue, 16 Dec 2025 20:39:06 +0100 Subject: [PATCH 01/13] Spec Account management for OAuth 2.0 API MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As per MSC4191. Signed-off-by: Kévin Commaille --- content/client-server-api/_index.md | 52 ++++++++++++++++++- .../client-server/oauth_server_metadata.yaml | 26 ++++++++++ 2 files changed, 77 insertions(+), 1 deletion(-) diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index 2460776f..63308090 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -640,7 +640,7 @@ manage their account like [changing their password](#password-management), [deactivating their account](#account-deactivation). With the OAuth 2.0 API, all account management is done via the homeserver's web -UI. +UI that can be accessed by users via the [account management URL](#oauth-20-account-management). ### Legacy API @@ -2262,6 +2262,56 @@ The server SHOULD return one of the following responses: - For other errors, the server returns a `400 Bad Request` response with error details +#### Account management {id="oauth-20-account-management"} + +{{% added-in v="1.17" %}} + +All account management is done via the homeserver’s web UI as all endpoints that +require User-Interactive Authentication are unsupported by this authentication +API. + +This specification defines extensions to the [OAuth Authorization Server +Metadata registry](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#authorization-server-metadata) +to offer clients a way to deep-link to the account management capabilities of +the homeserver to allow the user to complete the account management operations +in a browser. + +##### Account management URL discovery + +The [OAuth 2.0 authorization server metadata](#server-metadata-discovery) is +extended to include the following fields: + +| Field | Description | +|----------------------------------------|-------------------------------------------------------------------------------------------------| +| `account_management_uri` | The URL where the user is able to access the account management capabilities of the homeserver. | +| `account_management_actions_supported` | An array of actions that the account management URL supports, as defined below. | + +##### Account management URL parameters + +The account management URL MAY accept the following query parameters: + +| Parameter | Description | +|-------------|---------------------------------------------------------------------------------------------------------------------------------------| +| `action` | **Optional**. The action that the user wishes to take. Must match one of the actions in `account_management_actions_supported` above. | +| `device_id` | **Optional**. Identifies a particular Matrix device ID for actions that support it. | + +If the `org.matrix.device_view` or `org.matrix.device_delete` actions are +advertised as supported by the server then the server SHOULD support the +`device_id` parameter. + +##### Account management URL actions + +The following account management actions are defined: + +| Action | Description | +|----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------| +| `org.matrix.profile` | The user wishes to view/edit their profile (name, avatar, contact details). | +| `org.matrix.devices_list` | The user wishes to view a list of their devices. | +| `org.matrix.device_view` | The user wishes to view the details of a specific device. A `device_id` should be provided. | +| `org.matrix.device_delete` | The user wishes to delete/log out a specific device. A `device_id` should be provided. | +| `org.matrix.account_deactivate` | The user wishes to deactivate their account. | +| `org.matrix.cross_signing_reset` | The user wishes to reset their cross-signing identity. Servers SHOULD use this action in the URL of the [`m.oauth`](#oauth-authentication) UIA type. | + ### Account moderation #### Account locking diff --git a/data/api/client-server/oauth_server_metadata.yaml b/data/api/client-server/oauth_server_metadata.yaml index 4cdb3aa6..fb976c56 100644 --- a/data/api/client-server/oauth_server_metadata.yaml +++ b/data/api/client-server/oauth_server_metadata.yaml @@ -139,6 +139,32 @@ paths: items: type: string description: A prompt value that the server supports. + account_management_uri: + x-addedInMatrixVersion: "1.17" + type: string + format: uri + description: |- + The URL where the user is able to access the account management capabilities + of the homeserver. + + This is an extension [defined in this specification](/client-server-api/#oauth-20-account-management). + account_management_uri_supported: + x-addedInMatrixVersion: "1.17" + type: array + description: |- + List of actions that the account management URL supports. + + This is an extension [defined in this specification](/client-server-api/#oauth-20-account-management). + items: + type: string + enum: + - "org.matrix.profile" + - "org.matrix.devices_list" + - "org.matrix.device_view" + - "org.matrix.device_delete" + - "org.matrix.account_deactivate" + - "org.matrix.cross_signing_reset" + description: An action that the account management URL supports. required: - issuer - authorization_endpoint From 80c6ffd1d845822f9ba93a163133de23a6a63456 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Tue, 16 Dec 2025 20:42:27 +0100 Subject: [PATCH 02/13] Add changelog MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- changelogs/client_server/newsfragments/2270.feature | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelogs/client_server/newsfragments/2270.feature diff --git a/changelogs/client_server/newsfragments/2270.feature b/changelogs/client_server/newsfragments/2270.feature new file mode 100644 index 00000000..b675c947 --- /dev/null +++ b/changelogs/client_server/newsfragments/2270.feature @@ -0,0 +1 @@ +Add the account management capabilities for the OAuth 2.0 authentication API, as per [MSC4191](https://github.com/matrix-org/matrix-spec-proposals/pull/4191). From 293012d12f9cf21cdc0312115f8436376d0a53db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Wed, 17 Dec 2025 12:12:44 +0100 Subject: [PATCH 03/13] Fix field name MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- data/api/client-server/oauth_server_metadata.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/api/client-server/oauth_server_metadata.yaml b/data/api/client-server/oauth_server_metadata.yaml index fb976c56..a122ef30 100644 --- a/data/api/client-server/oauth_server_metadata.yaml +++ b/data/api/client-server/oauth_server_metadata.yaml @@ -148,7 +148,7 @@ paths: of the homeserver. This is an extension [defined in this specification](/client-server-api/#oauth-20-account-management). - account_management_uri_supported: + account_management_actions_supported: x-addedInMatrixVersion: "1.17" type: array description: |- From 70d20057436b4e8d326e30cfaab928a852450bd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Fri, 19 Dec 2025 10:37:39 +0100 Subject: [PATCH 04/13] Bump Matrix version MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- content/client-server-api/_index.md | 2 +- data/api/client-server/oauth_server_metadata.yaml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index 63308090..49482cbb 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -2264,7 +2264,7 @@ The server SHOULD return one of the following responses: #### Account management {id="oauth-20-account-management"} -{{% added-in v="1.17" %}} +{{% added-in v="1.18" %}} All account management is done via the homeserver’s web UI as all endpoints that require User-Interactive Authentication are unsupported by this authentication diff --git a/data/api/client-server/oauth_server_metadata.yaml b/data/api/client-server/oauth_server_metadata.yaml index a122ef30..ab02e0b0 100644 --- a/data/api/client-server/oauth_server_metadata.yaml +++ b/data/api/client-server/oauth_server_metadata.yaml @@ -140,7 +140,7 @@ paths: type: string description: A prompt value that the server supports. account_management_uri: - x-addedInMatrixVersion: "1.17" + x-addedInMatrixVersion: "1.18" type: string format: uri description: |- @@ -149,7 +149,7 @@ paths: This is an extension [defined in this specification](/client-server-api/#oauth-20-account-management). account_management_actions_supported: - x-addedInMatrixVersion: "1.17" + x-addedInMatrixVersion: "1.18" type: array description: |- List of actions that the account management URL supports. From c8ae75a342fa2b245d784d9247711be94cae9463 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= <76261501+zecakeh@users.noreply.github.com> Date: Wed, 7 Jan 2026 14:55:24 +0100 Subject: [PATCH 05/13] Apply suggestions from code review Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> --- content/client-server-api/_index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index 49482cbb..f7b00f34 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -2266,7 +2266,7 @@ The server SHOULD return one of the following responses: {{% added-in v="1.18" %}} -All account management is done via the homeserver’s web UI as all endpoints that +All account management is done via the homeserver's web UI as all endpoints that require User-Interactive Authentication are unsupported by this authentication API. @@ -2307,8 +2307,8 @@ The following account management actions are defined: |----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------| | `org.matrix.profile` | The user wishes to view/edit their profile (name, avatar, contact details). | | `org.matrix.devices_list` | The user wishes to view a list of their devices. | -| `org.matrix.device_view` | The user wishes to view the details of a specific device. A `device_id` should be provided. | -| `org.matrix.device_delete` | The user wishes to delete/log out a specific device. A `device_id` should be provided. | +| `org.matrix.device_view` | The user wishes to view the details of a specific device. A `device_id` SHOULD be provided. | +| `org.matrix.device_delete` | The user wishes to delete/log out a specific device. A `device_id` SHOULD be provided. | | `org.matrix.account_deactivate` | The user wishes to deactivate their account. | | `org.matrix.cross_signing_reset` | The user wishes to reset their cross-signing identity. Servers SHOULD use this action in the URL of the [`m.oauth`](#oauth-authentication) UIA type. | From edea11e61010b7e670fca3bad95be41b45d8b9f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Wed, 7 Jan 2026 14:57:02 +0100 Subject: [PATCH 06/13] Remove justification MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- content/client-server-api/_index.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index f7b00f34..468f2ae3 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -2266,9 +2266,7 @@ The server SHOULD return one of the following responses: {{% added-in v="1.18" %}} -All account management is done via the homeserver's web UI as all endpoints that -require User-Interactive Authentication are unsupported by this authentication -API. +All account management is done via the homeserver's web UI. This specification defines extensions to the [OAuth Authorization Server Metadata registry](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#authorization-server-metadata) From 6e7c8a6da0d5192c94b0dbb15eed6bc84b8ed5d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Wed, 7 Jan 2026 14:59:58 +0100 Subject: [PATCH 07/13] Add fields to example MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- data/api/client-server/oauth_server_metadata.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/data/api/client-server/oauth_server_metadata.yaml b/data/api/client-server/oauth_server_metadata.yaml index ab02e0b0..719a1e16 100644 --- a/data/api/client-server/oauth_server_metadata.yaml +++ b/data/api/client-server/oauth_server_metadata.yaml @@ -185,6 +185,15 @@ paths: "grant_types_supported": ["authorization_code", "refresh_token"], "response_modes_supported": ["query", "fragment"], "code_challenge_methods_supported": ["S256"], + "account_management_uri": "https://account.example.com/manage", + "account_management_actions_supported": [ + "org.matrix.profile", + "org.matrix.devices_list", + "org.matrix.device_view", + "org.matrix.device_delete", + "org.matrix.account_deactivate", + "org.matrix.cross_signing_reset", + ], } tags: - Session management From e018a60843937454d0a63ecc44dab14090bca743 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Thu, 15 Jan 2026 10:41:07 +0100 Subject: [PATCH 08/13] Use definition shortcode for account management server metadata MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- content/client-server-api/_index.md | 7 ++----- .../oauth2-account-management-action.yaml | 9 +++++++++ ...auth2-account-management-server-metadata.yaml | 16 ++++++++++++++++ 3 files changed, 27 insertions(+), 5 deletions(-) create mode 100644 data/schemas/oauth2-account-management-action.yaml create mode 100644 data/schemas/oauth2-account-management-server-metadata.yaml diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index 468f2ae3..b4b630a8 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -2277,12 +2277,9 @@ in a browser. ##### Account management URL discovery The [OAuth 2.0 authorization server metadata](#server-metadata-discovery) is -extended to include the following fields: +extended to include the following **optional** fields. -| Field | Description | -|----------------------------------------|-------------------------------------------------------------------------------------------------| -| `account_management_uri` | The URL where the user is able to access the account management capabilities of the homeserver. | -| `account_management_actions_supported` | An array of actions that the account management URL supports, as defined below. | +{{% definition path="schemas/oauth2-account-management-server-metadata" %}} ##### Account management URL parameters diff --git a/data/schemas/oauth2-account-management-action.yaml b/data/schemas/oauth2-account-management-action.yaml new file mode 100644 index 00000000..a63660fc --- /dev/null +++ b/data/schemas/oauth2-account-management-action.yaml @@ -0,0 +1,9 @@ +type: string +enum: + - "org.matrix.profile" + - "org.matrix.devices_list" + - "org.matrix.device_view" + - "org.matrix.device_delete" + - "org.matrix.account_deactivate" + - "org.matrix.cross_signing_reset" +description: An action that the account management URL supports. diff --git a/data/schemas/oauth2-account-management-server-metadata.yaml b/data/schemas/oauth2-account-management-server-metadata.yaml new file mode 100644 index 00000000..89e740ad --- /dev/null +++ b/data/schemas/oauth2-account-management-server-metadata.yaml @@ -0,0 +1,16 @@ +type: object +title: OAuth 2.0 Server Metadata Account Management Extension +properties: + account_management_uri: + type: string + format: uri + description: |- + The URL where the user is able to access the account management capabilities of the + homeserver. + account_management_actions_supported: + type: array + description: |- + List of [actions](/client-server-api/#account-management-url-actions) that the account + management URL supports. + items: + $ref: ./oauth2-account-management-action.yaml From b77dd245c6e3f5c9c5397897c19275d3096e1325 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Thu, 15 Jan 2026 10:41:45 +0100 Subject: [PATCH 09/13] Use definition shortcode for account management URL query parameters MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- content/client-server-api/_index.md | 11 ++--------- data/schemas/oauth2-account-management-url.yaml | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 9 deletions(-) create mode 100644 data/schemas/oauth2-account-management-url.yaml diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index b4b630a8..67d12553 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -2283,16 +2283,9 @@ extended to include the following **optional** fields. ##### Account management URL parameters -The account management URL MAY accept the following query parameters: +The account management URL MAY accept the following minimum query parameters. -| Parameter | Description | -|-------------|---------------------------------------------------------------------------------------------------------------------------------------| -| `action` | **Optional**. The action that the user wishes to take. Must match one of the actions in `account_management_actions_supported` above. | -| `device_id` | **Optional**. Identifies a particular Matrix device ID for actions that support it. | - -If the `org.matrix.device_view` or `org.matrix.device_delete` actions are -advertised as supported by the server then the server SHOULD support the -`device_id` parameter. +{{% definition path="schemas/oauth2-account-management-url" %}} ##### Account management URL actions diff --git a/data/schemas/oauth2-account-management-url.yaml b/data/schemas/oauth2-account-management-url.yaml new file mode 100644 index 00000000..aef3b6d5 --- /dev/null +++ b/data/schemas/oauth2-account-management-url.yaml @@ -0,0 +1,16 @@ +type: object +title: OAuth 2.0 Account Management URL Query Parameters +properties: + action: + $ref: ./oauth2-account-management-action.yaml + description: |- + The action that the user wishes to take. Must match one of the actions advertised by the + server in [`account_management_actions_supported`](/client-server-api/#account-management-url-discovery). + device_id: + type: string + description: |- + For Matrix-specific actions, the user's device ID. Actions which don't support the device ID + will ignore it. + + If the `org.matrix.device_view` or `org.matrix.device_delete` actions are advertised as + supported by the server then the server SHOULD support the `device_id` parameter. From 3b596415817b487fec759a620692a934b2afe4cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Thu, 15 Jan 2026 10:42:11 +0100 Subject: [PATCH 10/13] Apply suggestion for account management actions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- content/client-server-api/_index.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/content/client-server-api/_index.md b/content/client-server-api/_index.md index 67d12553..40779e33 100644 --- a/content/client-server-api/_index.md +++ b/content/client-server-api/_index.md @@ -2289,7 +2289,9 @@ The account management URL MAY accept the following minimum query parameters. ##### Account management URL actions -The following account management actions are defined: +Account management actions are unique to the application. They SHOULD follow the +[Common Namespaced Identifier Grammar](/appendices/#common-namespaced-identifier-grammar) +where feasible. The Matrix-specific actions are: | Action | Description | |----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------| From 7bf08cfef63c7f1553f775d5e63b06111f4316d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Thu, 15 Jan 2026 11:26:16 +0100 Subject: [PATCH 11/13] Add copyright and license MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- data/schemas/oauth2-account-management-action.yaml | 13 +++++++++++++ .../oauth2-account-management-server-metadata.yaml | 13 +++++++++++++ data/schemas/oauth2-account-management-url.yaml | 13 +++++++++++++ 3 files changed, 39 insertions(+) diff --git a/data/schemas/oauth2-account-management-action.yaml b/data/schemas/oauth2-account-management-action.yaml index a63660fc..299a73b6 100644 --- a/data/schemas/oauth2-account-management-action.yaml +++ b/data/schemas/oauth2-account-management-action.yaml @@ -1,3 +1,16 @@ +# Copyright 2026 The Matrix.org Foundation C.I.C. +# +# 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. type: string enum: - "org.matrix.profile" diff --git a/data/schemas/oauth2-account-management-server-metadata.yaml b/data/schemas/oauth2-account-management-server-metadata.yaml index 89e740ad..56672911 100644 --- a/data/schemas/oauth2-account-management-server-metadata.yaml +++ b/data/schemas/oauth2-account-management-server-metadata.yaml @@ -1,3 +1,16 @@ +# Copyright 2026 The Matrix.org Foundation C.I.C. +# +# 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. type: object title: OAuth 2.0 Server Metadata Account Management Extension properties: diff --git a/data/schemas/oauth2-account-management-url.yaml b/data/schemas/oauth2-account-management-url.yaml index aef3b6d5..797b80ed 100644 --- a/data/schemas/oauth2-account-management-url.yaml +++ b/data/schemas/oauth2-account-management-url.yaml @@ -1,3 +1,16 @@ +# Copyright 2026 The Matrix.org Foundation C.I.C. +# +# 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. type: object title: OAuth 2.0 Account Management URL Query Parameters properties: From 68881a07b106b891fd6770c16b4e6a8fc15c0f03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Sat, 17 Jan 2026 10:04:41 +0100 Subject: [PATCH 12/13] Remove enum for actions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It doesn't make sense to have the action schema in a separate file now that only the `type` is shared. Signed-off-by: Kévin Commaille --- .../oauth2-account-management-action.yaml | 22 ------------------- ...h2-account-management-server-metadata.yaml | 3 ++- .../oauth2-account-management-url.yaml | 2 +- 3 files changed, 3 insertions(+), 24 deletions(-) delete mode 100644 data/schemas/oauth2-account-management-action.yaml diff --git a/data/schemas/oauth2-account-management-action.yaml b/data/schemas/oauth2-account-management-action.yaml deleted file mode 100644 index 299a73b6..00000000 --- a/data/schemas/oauth2-account-management-action.yaml +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright 2026 The Matrix.org Foundation C.I.C. -# -# 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. -type: string -enum: - - "org.matrix.profile" - - "org.matrix.devices_list" - - "org.matrix.device_view" - - "org.matrix.device_delete" - - "org.matrix.account_deactivate" - - "org.matrix.cross_signing_reset" -description: An action that the account management URL supports. diff --git a/data/schemas/oauth2-account-management-server-metadata.yaml b/data/schemas/oauth2-account-management-server-metadata.yaml index 56672911..847380ff 100644 --- a/data/schemas/oauth2-account-management-server-metadata.yaml +++ b/data/schemas/oauth2-account-management-server-metadata.yaml @@ -26,4 +26,5 @@ properties: List of [actions](/client-server-api/#account-management-url-actions) that the account management URL supports. items: - $ref: ./oauth2-account-management-action.yaml + type: string + description: An action that the account management URL supports. diff --git a/data/schemas/oauth2-account-management-url.yaml b/data/schemas/oauth2-account-management-url.yaml index 797b80ed..d6220841 100644 --- a/data/schemas/oauth2-account-management-url.yaml +++ b/data/schemas/oauth2-account-management-url.yaml @@ -15,7 +15,7 @@ type: object title: OAuth 2.0 Account Management URL Query Parameters properties: action: - $ref: ./oauth2-account-management-action.yaml + type: string description: |- The action that the user wishes to take. Must match one of the actions advertised by the server in [`account_management_actions_supported`](/client-server-api/#account-management-url-discovery). From 2633f6f185929cad60da6bac0eaa8a07a3ce4d72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=A9vin=20Commaille?= Date: Sat, 17 Jan 2026 10:07:45 +0100 Subject: [PATCH 13/13] Use "server" instead of "homeserver" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Kévin Commaille --- data/schemas/oauth2-account-management-server-metadata.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/schemas/oauth2-account-management-server-metadata.yaml b/data/schemas/oauth2-account-management-server-metadata.yaml index 847380ff..7bb43db4 100644 --- a/data/schemas/oauth2-account-management-server-metadata.yaml +++ b/data/schemas/oauth2-account-management-server-metadata.yaml @@ -19,7 +19,7 @@ properties: format: uri description: |- The URL where the user is able to access the account management capabilities of the - homeserver. + server. account_management_actions_supported: type: array description: |-