dendrite icon indicating copy to clipboard operation
dendrite copied to clipboard

Missing Admin API

Open melroy89 opened this issue 4 years ago • 7 comments
trafficstars

Description:

There is no admin API implemented yet. This allows home servers to list the users on their homeserver. And list the rooms on their home servers including the complexity per room.

These Admin features are actually quite useful for homeserver owners, allowing to have better insides into the Dendrite server. And manage the server instance.

melroy89 avatar Feb 12 '21 10:02 melroy89

Please not that Admin API is Synapse specific and is not part of Matrix API yet: https://github.com/matrix-org/matrix-doc/issues/1411

PiotrKozimor avatar Oct 08 '21 12:10 PiotrKozimor

Well, there is something here: https://matrix.org/docs/spec/client_server/r0.6.1#id129

But needs to be expended.

melroy89 avatar Oct 18 '21 21:10 melroy89

Since the admin in synapse isn't properly matrix, is there any plan to come up with a dendrite specific api? Or what is the expected way to administer a dendrite server?

benyanke avatar Nov 29 '21 15:11 benyanke

I'm too wondering if more admin APIs will be added? It's a bit unfortunate that one can't disable or remove user accounts for example.

trading-peter avatar Jun 24 '22 14:06 trading-peter

If you can't do basic admin operations on the dendrite server. I can't use dendrite at all. This is a major issue for me to adopt Dendrite as my default server.

melroy89 avatar Jul 31 '22 15:07 melroy89

Recent discussion highlighted some specific administration endpoints necessary for public administration to mitigate abuse:

  1. Purge Room (i.e. evacuate room, delete associated media from mediaapi, remove memberships)
  2. Purge User (i.e. evacuate user, delete user account, delete associated media)
  3. Force Room Membership

Based on initial discussions, the purge user administration API endpoint would likely require storing user in mediaapi which @S7evinK mentioned would likely be a part of mediaapi refactoring.

There was discussion about including purging of messages for a purged user but this could be seen as damaging to recipients of those messages.


Separately, one member of the discussion had to go through and manually purge a room from their db by:

  • Evacuating the Room
  • Deleting the relevant room from roomserver_published
  • Changing roomserver_rooms state_snapshot_nid to 0 for the relevant room
  • Deleting media from the media db
  • They also had to remove membership from syncapi_memberships due to an attempted join after evacuating the room.

This method is not recommended for use. Most administrators should wait until an administration API endpoint is added for purging a room.

timaeos avatar Aug 13 '22 17:08 timaeos

hi, any news about adminapi?

onlineapps-cloud avatar Mar 19 '23 17:03 onlineapps-cloud