renegade_sdk/renegade_wallet_client/actions/
admin_get_order.rs

1//! Fetch a given order managed by the relayer by its ID
2
3use renegade_external_api::http::admin::ADMIN_GET_ORDER_BY_ID_ROUTE;
4use renegade_external_api::types::{ApiAdminOrder, GetOrderAdminResponse};
5use uuid::Uuid;
6
7use crate::{RenegadeClientError, actions::construct_http_path, client::RenegadeClient};
8
9// --- Public Actions --- //
10impl RenegadeClient {
11    /// Look up an order by its ID
12    pub async fn admin_get_order(
13        &self,
14        order_id: Uuid,
15    ) -> Result<ApiAdminOrder, RenegadeClientError> {
16        let admin_relayer_client = self.get_admin_client()?;
17
18        let path = construct_http_path!(ADMIN_GET_ORDER_BY_ID_ROUTE, "order_id" => order_id);
19
20        let GetOrderAdminResponse { order, .. } = admin_relayer_client.get(&path).await?;
21        Ok(order)
22    }
23}