matrix-org / matrix-spec

The Matrix protocol specification
Apache License 2.0
195 stars 96 forks source link

Spec appropriate admin APIs #328

Open turt2live opened 6 years ago

turt2live commented 6 years ago

Synapse has a number of admin APIs, some of which are useful outside of synapse. The whole lot needs to be gone through to figure out what is useful and what isn't.

This is to support things like https://github.com/matrix-org/matrix-python-sdk/pull/247 which wish to actually use these APIs.

turt2live commented 5 years ago

worth noting that Synapse has moved its APIs out of the /_matrix namespace, so it's a matter of creating a MSC to add them.

ara4n commented 3 years ago

The only reasons that synapse's admin APIs were never part of the Matrix spec were:

In practice, both of these concerns were bogus - admin APIs would be tiny relative to the spec as it stands today; the features they provide aren't Synapse specific; and it's sabotaging our ability to expose sensible administration functions in Matrix (c.f. discussions like https://github.com/vector-im/element-meta/issues/466). It's got even worse since Synapse decided to move its admin features to /_synapse, which typically isn't exposed to the public.

So: we should fix this.

ShadowJonathan commented 3 years ago

I suggest to slowly expand the "circle" of admin apis that'll be out there, though, and to have the conversation with existing homeserver developers on which apis would be the best to implement (beyond the delete/remove/purge room API suggested above), i'm personally still thinking the latter case is true in some shape or form, but lets be cautious.

richvdh commented 3 years ago

+1 to what @ShadowJonathan said. Let's consider which admin APIs we need in the Matrix protocol, and specify them appropriately with MSCs.

If you try to standardise the whole of the Synapse-specific admin API at once, then it'll get massively bogged down.

This isn't really a job for the spec team - it's for application developers to create MSCs proposing the admin apis they would like to see. Accordingly, I'm removing the P1 label here.

richvdh commented 3 years ago

Incidentally, there's already a "Server admin" section in the spec: https://matrix.org/docs/spec/client_server/r0.6.1#id129. It just needs expanding a bit...

melroy89 commented 2 years ago

Incidentally, there's already a "Server admin" section in the spec: https://matrix.org/docs/spec/client_server/r0.6.1#id129. It just needs expanding a bit...

I fully agree. Any process on that?