Skip to main content

neptunium_http/endpoints/channel/messages/
fetch_message.rs

1use bon::Builder;
2use neptunium_model::{
3    channel::message::Message,
4    id::{
5        Id,
6        marker::{ChannelMarker, MessageMarker},
7    },
8};
9use reqwest::Method;
10
11use crate::{endpoints::Endpoint, request::Request};
12
13#[derive(Builder, Copy, Clone, Debug)]
14pub struct FetchMessage {
15    pub channel_id: Id<ChannelMarker>,
16    pub message_id: Id<MessageMarker>,
17}
18
19impl Endpoint for FetchMessage {
20    type Response = Message;
21
22    fn into_request(self) -> crate::request::Request {
23        Request::builder()
24            .method(Method::GET)
25            .path(format!(
26                "/channels/{}/messages/{}",
27                self.channel_id, self.message_id
28            ))
29            .build()
30    }
31}