dfns-sdk-rust 0.2.0

Dfns API SDK for Rust
Documentation
// Code generated by rust-sdk-generator. DO NOT EDIT.

#![allow(clippy::all)]

/// List Swaps
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ListSwapsResponse {
    #[serde(rename = "items")]
    pub items: Vec<crate::types::Swap>,
    #[serde(
        rename = "nextPageToken",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub next_page_token: Option<String>,
}

/// Query parameters for the ListSwapsQuery operation.
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ListSwapsQuery {
    #[serde(rename = "limit", default, skip_serializing_if = "Option::is_none")]
    pub limit: Option<i64>,
    #[serde(
        rename = "paginationToken",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub pagination_token: Option<String>,
}

/// Request body for the createSwap operation.
pub type CreateSwapRequest = serde_json::Value;

/// Create Swap
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct CreateSwapResponse {
    #[serde(rename = "id")]
    pub id: String,
    #[serde(rename = "quoteId")]
    pub quote_id: String,
    #[serde(rename = "reference")]
    pub reference: serde_json::Value,
    #[serde(rename = "walletId")]
    pub wallet_id: String,
    #[serde(rename = "targetWalletId")]
    pub target_wallet_id: String,
    #[serde(rename = "status")]
    pub status: String,
    #[serde(rename = "provider")]
    pub provider: String,
    #[serde(
        rename = "feeSponsorId",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub fee_sponsor_id: Option<String>,
    #[serde(rename = "quotedSourceAsset")]
    pub quoted_source_asset: serde_json::Value,
    #[serde(rename = "quotedTargetAsset")]
    pub quoted_target_asset: serde_json::Value,
    #[serde(rename = "slippageBps")]
    pub slippage_bps: f64,
    #[serde(rename = "dateCreated")]
    pub date_created: String,
    #[serde(rename = "requestBody")]
    pub request_body: serde_json::Value,
    #[serde(rename = "requester")]
    pub requester: crate::types::Requester,
    #[serde(
        rename = "failureReason",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub failure_reason: Option<String>,
    #[serde(
        rename = "protocolStatus",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub protocol_status: Option<String>,
}

/// Request body for the requestSwapQuote operation.
pub type RequestSwapQuoteRequest = serde_json::Value;

/// Request Swap Quote
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct RequestSwapQuoteResponse {
    #[serde(rename = "id")]
    pub id: String,
    #[serde(rename = "walletId")]
    pub wallet_id: String,
    #[serde(
        rename = "targetWalletId",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub target_wallet_id: Option<String>,
    #[serde(rename = "provider")]
    pub provider: String,
    #[serde(rename = "sourceAsset")]
    pub source_asset: serde_json::Value,
    #[serde(rename = "targetAsset")]
    pub target_asset: serde_json::Value,
    #[serde(rename = "slippageBps")]
    pub slippage_bps: i64,
    #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
    pub fee: Option<String>,
    #[serde(rename = "dateCreated")]
    pub date_created: String,
    #[serde(rename = "requestBody")]
    pub request_body: serde_json::Value,
    #[serde(rename = "requester")]
    pub requester: crate::types::Requester,
}

/// Get Swap
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct GetSwapResponse {
    #[serde(rename = "id")]
    pub id: String,
    #[serde(rename = "quoteId")]
    pub quote_id: String,
    #[serde(rename = "reference")]
    pub reference: serde_json::Value,
    #[serde(rename = "walletId")]
    pub wallet_id: String,
    #[serde(rename = "targetWalletId")]
    pub target_wallet_id: String,
    #[serde(rename = "status")]
    pub status: String,
    #[serde(rename = "provider")]
    pub provider: String,
    #[serde(
        rename = "feeSponsorId",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub fee_sponsor_id: Option<String>,
    #[serde(rename = "quotedSourceAsset")]
    pub quoted_source_asset: serde_json::Value,
    #[serde(rename = "quotedTargetAsset")]
    pub quoted_target_asset: serde_json::Value,
    #[serde(rename = "slippageBps")]
    pub slippage_bps: f64,
    #[serde(rename = "dateCreated")]
    pub date_created: String,
    #[serde(rename = "requestBody")]
    pub request_body: serde_json::Value,
    #[serde(rename = "requester")]
    pub requester: crate::types::Requester,
    #[serde(
        rename = "failureReason",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub failure_reason: Option<String>,
    #[serde(
        rename = "protocolStatus",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub protocol_status: Option<String>,
}

/// Get Swap Quote
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct GetSwapQuoteResponse {
    #[serde(rename = "id")]
    pub id: String,
    #[serde(rename = "walletId")]
    pub wallet_id: String,
    #[serde(
        rename = "targetWalletId",
        default,
        skip_serializing_if = "Option::is_none"
    )]
    pub target_wallet_id: Option<String>,
    #[serde(rename = "provider")]
    pub provider: String,
    #[serde(rename = "sourceAsset")]
    pub source_asset: serde_json::Value,
    #[serde(rename = "targetAsset")]
    pub target_asset: serde_json::Value,
    #[serde(rename = "slippageBps")]
    pub slippage_bps: i64,
    #[serde(rename = "fee", default, skip_serializing_if = "Option::is_none")]
    pub fee: Option<String>,
    #[serde(rename = "dateCreated")]
    pub date_created: String,
    #[serde(rename = "requestBody")]
    pub request_body: serde_json::Value,
    #[serde(rename = "requester")]
    pub requester: crate::types::Requester,
}