diff options
author | Richard van der Hoff <richard@matrix.org> | 2016-07-22 14:52:53 +0100 |
---|---|---|
committer | Richard van der Hoff <richard@matrix.org> | 2016-07-26 07:35:48 +0100 |
commit | 436bffd15fb8382a0d2dddd3c6f7a077ba751da2 (patch) | |
tree | d4c3857cb66386bf48f06293ae8ae28a558073ca /synapse/rest/client/v2_alpha/devices.py | |
parent | Log when adding listeners (diff) | |
download | synapse-436bffd15fb8382a0d2dddd3c6f7a077ba751da2.tar.xz |
Implement deleting devices
Diffstat (limited to 'synapse/rest/client/v2_alpha/devices.py')
-rw-r--r-- | synapse/rest/client/v2_alpha/devices.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/synapse/rest/client/v2_alpha/devices.py b/synapse/rest/client/v2_alpha/devices.py index 8b9ab4f674..30ef8b3da9 100644 --- a/synapse/rest/client/v2_alpha/devices.py +++ b/synapse/rest/client/v2_alpha/devices.py @@ -70,6 +70,20 @@ class DeviceRestServlet(RestServlet): ) defer.returnValue((200, device)) + @defer.inlineCallbacks + def on_DELETE(self, request, device_id): + # XXX: it's not completely obvious we want to expose this endpoint. + # It allows the client to delete access tokens, which feels like a + # thing which merits extra auth. But if we want to do the interactive- + # auth dance, we should really make it possible to delete more than one + # device at a time. + requester = yield self.auth.get_user_by_req(request) + yield self.device_handler.delete_device( + requester.user.to_string(), + device_id, + ) + defer.returnValue((200, {})) + def register_servlets(hs, http_server): DevicesRestServlet(hs).register(http_server) |