deriv_api_schema/
buy_request.rs

1
2// Generated automatically by schema_generator.rs - DO NOT EDIT.
3// Source: ./deriv-api-docs/config/v3/buy/send.json
4
5// Use direct crate names for imports
6use serde::{Deserialize, Serialize};
7use serde_json::Value;
8
9
10
11// Import required types from the *same* crate
12use crate::parameters::Parameters;
13
14/// Buy a Contract
15#[derive(Debug, Clone, Serialize, Deserialize)]
16#[serde(rename_all = "snake_case")]
17pub struct BuyRequest {
18    /// Either the ID received from a Price Proposal (`proposal` call), or `1` if contract buy parameters are passed in the `parameters` field.\n
19    // Correct serde attribute construction - Use helper
20    
21    pub buy: String,
22    /// [Optional] The login id of the user. Mandatory when multiple tokens were provided during authorize.\n
23    // Correct serde attribute construction - Use helper
24    #[serde(skip_serializing_if = "Option::is_none")] 
25    pub loginid: Option<String>,
26    /// [Optional] Used to pass the parameters for contract buy.\n
27    // Correct serde attribute construction - Use helper
28    #[serde(skip_serializing_if = "Option::is_none")] 
29    pub parameters: Option<Parameters>,
30    /// [Optional] Used to pass data through the websocket, which may be retrieved via the `echo_req` output field.\n
31    // Correct serde attribute construction - Use helper
32    #[serde(skip_serializing_if = "Option::is_none")] 
33    pub passthrough: Option<Value>,
34    /// Maximum price at which to purchase the contract.\n
35    // Correct serde attribute construction - Use helper
36    
37    pub price: String,
38    /// [Optional] Used to map request to response.\n
39    // Correct serde attribute construction - Use helper
40    #[serde(skip_serializing_if = "Option::is_none")] 
41    pub req_id: Option<i64>,
42    /// [Optional] `1` to stream.\n
43    // Correct serde attribute construction - Use helper
44    #[serde(skip_serializing_if = "Option::is_none")] 
45    pub subscribe: Option<i64>,
46}
47