diff --git a/CHANGELOG.md b/CHANGELOG.md index 4748c444..67b38a61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,3 +19,4 @@ Improvements: * Add `contains_url` to `r0::filter::RoomEventFilter` (introduced upstream in r0.3.0) * Update `r0::account::change_password` from r0.3.0 to r0.6.0 * Add optional `auth` field +* Add `r0::device::delete_devices` (introduced upstream in r0.4.0) diff --git a/src/r0.rs b/src/r0.rs index 2bd7ab9d..1a57c5f9 100644 --- a/src/r0.rs +++ b/src/r0.rs @@ -6,6 +6,7 @@ pub mod appservice; pub mod config; pub mod contact; pub mod context; +pub mod device; pub mod directory; pub mod filter; pub mod media; diff --git a/src/r0/device.rs b/src/r0/device.rs new file mode 100644 index 00000000..e15727b9 --- /dev/null +++ b/src/r0/device.rs @@ -0,0 +1,3 @@ +//! Endpoints for managing devices. + +pub mod delete_devices; diff --git a/src/r0/device/delete_devices.rs b/src/r0/device/delete_devices.rs new file mode 100644 index 00000000..6f8795e9 --- /dev/null +++ b/src/r0/device/delete_devices.rs @@ -0,0 +1,26 @@ +//! [POST /_matrix/client/r0/delete_devices](https://matrix.org/docs/spec/client_server/r0.6.0#post-matrix-client-r0-delete-devices) + +use crate::r0::account::AuthenticationData; +use ruma_api::ruma_api; + +ruma_api! { + metadata { + description: "Delete specified devices", + method: POST, + path: "/_matrix/client/r0/delete_devices", + name: "delete_devices", + rate_limited: false, + requires_authentication: true, + } + + request { + /// List of devices to delete. + devices: Vec, + + /// Additional authentication information for the user-interactive authentication API. + #[serde(skip_serializing_if = "Option::is_none")] + auth: Option, + } + + response { } +}