1use crate::{
2 error::SdkErr,
3 meta::{
4 blockchains::BlockchainMeta, messaging_protocols::MessagingProtocols, meta::Meta,
5 swappers::SwapperMeta,
6 },
7};
8
9impl super::Client {
10 pub async fn meta(&self) -> Result<Meta, SdkErr> {
12 let url = format!(
13 "{}/{}?apiKey={}",
14 self.config.api_url, "basic/meta", self.config.api_key
15 );
16
17 println!("url: {:?}", url);
18
19 let body: Meta = ureq::get(&url).call()?.into_json()?;
20 Ok(body)
21 }
22
23 pub async fn chains(&self) -> Result<Vec<BlockchainMeta>, SdkErr> {
25 let url = format!(
26 "{}/{}?apiKey={}",
27 self.config.api_url, "basic/meta/blockchains", self.config.api_key
28 );
29
30 let body: Vec<BlockchainMeta> = ureq::get(&url).call()?.into_json()?;
31 Ok(body)
32 }
33
34 pub async fn swappers(&self) -> Result<Vec<SwapperMeta>, SdkErr> {
36 let url = format!(
37 "{}/{}?apiKey={}",
38 self.config.api_url, "basic/meta/swappers", self.config.api_key
39 );
40
41 let body: Vec<SwapperMeta> = ureq::get(&url).call()?.into_json()?;
42 Ok(body)
43 }
44
45 pub async fn messaging_protocols(&self) -> Result<MessagingProtocols, SdkErr> {
47 let url = format!(
48 "{}/{}?apiKey={}",
49 self.config.api_url, "basic/meta/messaging-protocols", self.config.api_key
50 );
51
52 let body: MessagingProtocols = ureq::get(&url).call()?.into_json()?;
53 Ok(body)
54 }
55}