use ruma::{
OwnedRoomId, OwnedRoomOrAliasId, OwnedUserId,
api::{auth_scheme::AccessToken, request, response},
metadata,
};
metadata! {
method: POST,
rate_limited: false,
authentication: AccessToken,
path: "/_synapse/admin/v1/join/{room_id_or_alias}",
}
#[request]
pub struct Request {
#[ruma_api(path)]
pub room_id_or_alias: OwnedRoomOrAliasId,
pub user_id: OwnedUserId,
}
#[response]
pub struct Response {
pub room_id: OwnedRoomId,
}
impl Request {
pub fn new(room_id_or_alias: OwnedRoomOrAliasId, user_id: OwnedUserId) -> Self {
Self { room_id_or_alias, user_id }
}
}
impl Response {
pub fn new(room_id: OwnedRoomId) -> Self {
Self { room_id }
}
}