neptunium_http/endpoints/guild/
toggle_guild_text_channel_flexible_names.rs1use bon::Builder;
2use neptunium_model::{
3 guild::Guild,
4 id::{Id, marker::GuildMarker},
5};
6use reqwest::Method;
7use serde_json::json;
8
9use crate::{endpoints::Endpoint, request::Request};
10
11#[derive(Builder, Copy, Clone, Debug)]
12pub struct ToggleGuildTextChannelFlexibleNames {
13 pub guild_id: Id<GuildMarker>,
14 pub enabled: bool,
15}
16
17impl Endpoint for ToggleGuildTextChannelFlexibleNames {
18 type Response = Guild;
19
20 fn into_request(self) -> crate::request::Request {
21 Request::builder()
22 .method(Method::PATCH)
23 .body(
24 json!({
25 "enabled": self.enabled,
26 })
27 .to_string(),
28 )
29 .path(format!(
30 "/guilds/{}/text-channel-flexible-names",
31 self.guild_id
32 ))
33 .build()
34 }
35}