twilio/request/
fetch_media.rs1use serde_json::json;
2use crate::model::*;
3use crate::TwilioClient;
4#[derive(Clone)]
8pub struct FetchMediaRequest<'a> {
9 pub(crate) http_client: &'a TwilioClient,
10 pub account_sid: String,
11 pub message_sid: String,
12 pub sid: String,
13}
14impl<'a> FetchMediaRequest<'a> {
15 pub async fn send(
16 self,
17 ) -> ::httpclient::InMemoryResult<ApiV2010AccountMessageMedia> {
18 let mut r = self
19 .http_client
20 .client
21 .get(
22 &format!(
23 "/2010-04-01/Accounts/{account_sid}/Messages/{message_sid}/Media/{sid}.json",
24 account_sid = self.account_sid, message_sid = self.message_sid, sid =
25 self.sid
26 ),
27 );
28 r = self.http_client.authenticate(r);
29 let res = r.send_awaiting_body().await?;
30 res.json()
31 }
32}
33impl<'a> ::std::future::IntoFuture for FetchMediaRequest<'a> {
34 type Output = httpclient::InMemoryResult<ApiV2010AccountMessageMedia>;
35 type IntoFuture = ::futures::future::BoxFuture<'a, Self::Output>;
36 fn into_future(self) -> Self::IntoFuture {
37 Box::pin(self.send())
38 }
39}