MSC4447: Move OpenID userinfo endpoint out of /_matrix/federation#4447
Open
gingershaped wants to merge 3 commits into
Open
MSC4447: Move OpenID userinfo endpoint out of /_matrix/federation#4447gingershaped wants to merge 3 commits into
/_matrix/federation#4447gingershaped wants to merge 3 commits into
Conversation
/_matrix/federation/_matrix/federation
velikopter
reviewed
Apr 6, 2026
Co-authored-by: Helix K <vel@riseup.net>
turt2live
reviewed
Apr 6, 2026
Member
There was a problem hiding this comment.
Implementation requirements:
- Server (serving)
- Application (using)
turt2live
requested changes
Apr 6, 2026
Member
turt2live
left a comment
There was a problem hiding this comment.
This is early review on MSC structure rather than contents
| @@ -0,0 +1,25 @@ | |||
| # MSC4447: Move OpenID userinfo endpoint out of `/_matrix/federation` | |||
|
|
|||
| The Matrix specification includes [an endpoint](https://spec.matrix.org/v1.17/server-server-api/#get_matrixfederationv1openiduserinfo), `/_matrix/federation/v1/openid/userinfo`, which allows a client to prove its identity to an external service. This endpoint is used by the [lk-jwt-service](https://github.com/element-hq/lk-jwt-service), among others. However, its location in the server-to-server API is strange -- it requires no authentication, and, unlike every other endpoint under `/_matrix/federation`, it isn't intended for use by other homeservers. This proposal moves it to a new endpoint prefix, `/_matrix/openid`, to separate it from the federation endpoints which it is unrelated to. | |||
Member
There was a problem hiding this comment.
Please limit lines to ~100 characters
|
|
||
| ## Unstable prefix | ||
|
|
||
| No unstable name for the new endpoint is proposed, as introducing one would defeat the purpose of this proposal. Servers MAY indicate their support for this proposal by setting the `org.continuwuity.msc4447` field of `unstable_features` to `true` under [`/_matrix/client/versions`](https://spec.matrix.org/v1.17/client-server-api/#get_matrixclientversions). |
Member
There was a problem hiding this comment.
The new path would need to be served under an unstable namespace. Though it's unlikely to change shape over the course of this MSC, it's still possible.
tonkku107
reviewed
Apr 6, 2026
|
|
||
| ## Proposal | ||
|
|
||
| [`GET /_matrix/federation/v1/openid/userinfo`](https://spec.matrix.org/v1.17/server-server-api/#get_matrixfederationv1openiduserinfo) is moved to a new location, `GET /_matrix/openid/v1/userinfo`. No changes are made to the behavior of the endpoint itself. The old endpoint is marked for deprecation and removal in a future version of the Matrix specification. |
Contributor
There was a problem hiding this comment.
Since this endpoint is some weird cut down version of OpenID Connect, we should probably seek to replace the endpoint with the proper oauth2 next-gen auth that recently landed in the spec instead of renaming it with no changes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rendered
Implementations:
Conflict of interest declaration: I am a maintainer of the Continuwuity homeserver. This pull request was written as part of my work on Continuwuity.
Signed-off-by: Ginger ginger@gingershaped.computer