ruma_client_api/directory/
set_room_visibility.rs1pub mod v3 {
6 use ruma_common::{
11 api::{request, response, Metadata},
12 metadata, OwnedRoomId,
13 };
14
15 use crate::room::Visibility;
16
17 const METADATA: Metadata = metadata! {
18 method: PUT,
19 rate_limited: false,
20 authentication: AccessToken,
21 history: {
22 1.0 => "/_matrix/client/r0/directory/list/room/:room_id",
23 1.1 => "/_matrix/client/v3/directory/list/room/:room_id",
24 }
25 };
26
27 #[request(error = crate::Error)]
29 pub struct Request {
30 #[ruma_api(path)]
32 pub room_id: OwnedRoomId,
33
34 pub visibility: Visibility,
36 }
37
38 #[response(error = crate::Error)]
40 #[derive(Default)]
41 pub struct Response {}
42
43 impl Request {
44 pub fn new(room_id: OwnedRoomId, visibility: Visibility) -> Self {
46 Self { room_id, visibility }
47 }
48 }
49
50 impl Response {
51 pub fn new() -> Self {
53 Self {}
54 }
55 }
56}