1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// Generated automatically by schema_generator.rs - DO NOT EDIT.
// Source: ./deriv-api-docs/config/v3/app_markup_details/send.json
// Use direct crate names for imports
use serde::{Deserialize, Serialize};
use serde_json::Value;
// Import required types from the *same* crate
use crate::description::Description;
use crate::sort::Sort;
use crate::sort_field_item::SortFieldItem;
/// Retrieve details of `app_markup` according to criteria specified.
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub struct AppMarkupDetailsRequest {
/// [Optional] Specific application `app_id` to report on.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub app_id: Option<i64>,
/// Must be `1`\n
// Correct serde attribute construction - Use helper
pub app_markup_details: i64,
/// [Optional] Specific client loginid to report on, like CR12345\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub client_loginid: Option<String>,
/// Start date (epoch or YYYY-MM-DD HH:MM:SS). Results are inclusive of this time.\n
// Correct serde attribute construction - Use helper
pub date_from: String,
/// End date (epoch or YYYY-MM-DD HH::MM::SS). Results are inclusive of this time.\n
// Correct serde attribute construction - Use helper
pub date_to: String,
/// [Optional] If set to 1, will return `app_markup` transaction details.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<Description>,
/// [Optional] Apply upper limit to count of transactions received.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub limit: Option<f64>,
/// [Optional] The login id of the user. Mandatory when multiple tokens were provided during authorize.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub loginid: Option<String>,
/// [Optional] Number of transactions to skip.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub offset: Option<i64>,
/// [Optional] Used to pass data through the websocket, which may be retrieved via the `echo_req` output field.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub passthrough: Option<Value>,
/// [Optional] Used to map request to response.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub req_id: Option<i64>,
/// [Optional] Sort direction on `transaction_time`. Other fields sort order is ASC.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub sort: Option<Sort>,
/// [Optional] One or more of the specified fields to sort on. Default sort field is by `transaction_time`.\n
// Correct serde attribute construction - Use helper
#[serde(skip_serializing_if = "Option::is_none")]
pub sort_fields: Option<Vec<SortFieldItem>>,
}