Skip to main content

highlevel_api/apis/payments/
types.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize, Default)]
4#[serde(rename_all = "camelCase")]
5pub struct GetOrdersParams {
6    pub location_id: String,
7    #[serde(skip_serializing_if = "Option::is_none")]
8    pub limit: Option<u32>,
9    #[serde(skip_serializing_if = "Option::is_none")]
10    pub offset: Option<u32>,
11    #[serde(skip_serializing_if = "Option::is_none")]
12    pub contact_id: Option<String>,
13    #[serde(skip_serializing_if = "Option::is_none")]
14    pub funnel_product_id: Option<String>,
15    #[serde(skip_serializing_if = "Option::is_none")]
16    pub payment_mode: Option<String>,
17    #[serde(skip_serializing_if = "Option::is_none")]
18    pub start_at: Option<String>,
19    #[serde(skip_serializing_if = "Option::is_none")]
20    pub end_at: Option<String>,
21}
22
23#[derive(Debug, Clone, Serialize, Deserialize)]
24#[serde(rename_all = "camelCase")]
25pub struct Order {
26    pub id: String,
27    pub location_id: String,
28    pub contact_id: Option<String>,
29    pub status: Option<String>,
30    pub amount: Option<f64>,
31    pub currency: Option<String>,
32    pub date_added: Option<String>,
33}
34
35#[derive(Debug, Clone, Serialize, Deserialize)]
36pub struct GetOrdersResponse {
37    pub orders: Vec<Order>,
38    pub total: Option<u64>,
39}
40
41#[derive(Debug, Clone, Serialize, Deserialize)]
42pub struct GetOrderResponse {
43    pub order: Order,
44}
45
46#[derive(Debug, Clone, Serialize, Deserialize, Default)]
47#[serde(rename_all = "camelCase")]
48pub struct GetTransactionsParams {
49    pub location_id: String,
50    #[serde(skip_serializing_if = "Option::is_none")]
51    pub limit: Option<u32>,
52    #[serde(skip_serializing_if = "Option::is_none")]
53    pub offset: Option<u32>,
54    #[serde(skip_serializing_if = "Option::is_none")]
55    pub contact_id: Option<String>,
56    #[serde(skip_serializing_if = "Option::is_none")]
57    pub entity_id: Option<String>,
58    #[serde(skip_serializing_if = "Option::is_none")]
59    pub entity_source_type: Option<String>,
60    #[serde(skip_serializing_if = "Option::is_none")]
61    pub subscription_id: Option<String>,
62    #[serde(skip_serializing_if = "Option::is_none")]
63    pub payment_mode: Option<String>,
64    #[serde(skip_serializing_if = "Option::is_none")]
65    pub start_at: Option<String>,
66    #[serde(skip_serializing_if = "Option::is_none")]
67    pub end_at: Option<String>,
68}
69
70#[derive(Debug, Clone, Serialize, Deserialize)]
71#[serde(rename_all = "camelCase")]
72pub struct Transaction {
73    pub id: String,
74    pub location_id: String,
75    pub amount: Option<f64>,
76    pub currency: Option<String>,
77    pub status: Option<String>,
78    pub contact_id: Option<String>,
79    pub date_added: Option<String>,
80}
81
82#[derive(Debug, Clone, Serialize, Deserialize)]
83pub struct GetTransactionsResponse {
84    pub transactions: Vec<Transaction>,
85    pub total: Option<u64>,
86}
87
88#[derive(Debug, Clone, Serialize, Deserialize)]
89pub struct GetTransactionResponse {
90    pub transaction: Transaction,
91}
92
93#[derive(Debug, Clone, Serialize, Deserialize, Default)]
94#[serde(rename_all = "camelCase")]
95pub struct GetSubscriptionsParams {
96    pub location_id: String,
97    #[serde(skip_serializing_if = "Option::is_none")]
98    pub limit: Option<u32>,
99    #[serde(skip_serializing_if = "Option::is_none")]
100    pub offset: Option<u32>,
101    #[serde(skip_serializing_if = "Option::is_none")]
102    pub contact_id: Option<String>,
103    #[serde(skip_serializing_if = "Option::is_none")]
104    pub entity_id: Option<String>,
105    #[serde(skip_serializing_if = "Option::is_none")]
106    pub payment_mode: Option<String>,
107    #[serde(skip_serializing_if = "Option::is_none")]
108    pub start_at: Option<String>,
109    #[serde(skip_serializing_if = "Option::is_none")]
110    pub end_at: Option<String>,
111}
112
113#[derive(Debug, Clone, Serialize, Deserialize)]
114#[serde(rename_all = "camelCase")]
115pub struct Subscription {
116    pub id: String,
117    pub location_id: String,
118    pub contact_id: Option<String>,
119    pub status: Option<String>,
120    pub amount: Option<f64>,
121    pub currency: Option<String>,
122    pub date_added: Option<String>,
123}
124
125#[derive(Debug, Clone, Serialize, Deserialize)]
126pub struct GetSubscriptionsResponse {
127    pub subscriptions: Vec<Subscription>,
128    pub total: Option<u64>,
129}