1use reqwest;
13
14use crate::apis::ResponseContent;
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum PaymentRequestsArchivePaymentRequestError {
22 Status400(Vec<crate::models::ValidationProblemDetailsInner>),
23 Status403(),
24 Status404(),
25 UnknownValue(serde_json::Value),
26}
27
28#[derive(Debug, Clone, Serialize, Deserialize)]
30#[serde(untagged)]
31pub enum PaymentRequestsCreatePaymentRequestError {
32 Status400(Vec<crate::models::ValidationProblemDetailsInner>),
33 Status403(),
34 UnknownValue(serde_json::Value),
35}
36
37#[derive(Debug, Clone, Serialize, Deserialize)]
39#[serde(untagged)]
40pub enum PaymentRequestsGetPaymentRequestError {
41 Status403(),
42 Status404(),
43 UnknownValue(serde_json::Value),
44}
45
46#[derive(Debug, Clone, Serialize, Deserialize)]
48#[serde(untagged)]
49pub enum PaymentRequestsGetPaymentRequestsError {
50 UnknownValue(serde_json::Value),
51}
52
53#[derive(Debug, Clone, Serialize, Deserialize)]
55#[serde(untagged)]
56pub enum PaymentRequestsUpdatePaymentRequestError {
57 Status400(Vec<crate::models::ValidationProblemDetailsInner>),
58 Status403(),
59 UnknownValue(serde_json::Value),
60}
61
62
63pub async fn payment_requests_archive_payment_request(configuration: &configuration::Configuration, store_id: &str, payment_request_id: &str) -> Result<(), Error<PaymentRequestsArchivePaymentRequestError>> {
65 let local_var_configuration = configuration;
66
67 let local_var_client = &local_var_configuration.client;
68
69 let local_var_uri_str = format!("{}/api/v1/stores/{storeId}/payment-requests/{paymentRequestId}", local_var_configuration.base_path, storeId=crate::apis::urlencode(store_id), paymentRequestId=crate::apis::urlencode(payment_request_id));
70 let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
71
72 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
73 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
74 }
75 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
76 let local_var_key = local_var_apikey.key.clone();
77 let local_var_value = match local_var_apikey.prefix {
78 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
79 None => local_var_key,
80 };
81 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
82 };
83 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
84 local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
85 };
86
87 let local_var_req = local_var_req_builder.build()?;
88 let local_var_resp = local_var_client.execute(local_var_req).await?;
89
90 let local_var_status = local_var_resp.status();
91 let local_var_content = local_var_resp.text().await?;
92
93 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
94 Ok(())
95 } else {
96 let local_var_entity: Option<PaymentRequestsArchivePaymentRequestError> = serde_json::from_str(&local_var_content).ok();
97 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
98 Err(Error::ResponseError(local_var_error))
99 }
100}
101
102pub async fn payment_requests_create_payment_request(configuration: &configuration::Configuration, store_id: &str, payment_request_base_data: crate::models::PaymentRequestBaseData) -> Result<crate::models::PaymentRequestData, Error<PaymentRequestsCreatePaymentRequestError>> {
104 let local_var_configuration = configuration;
105
106 let local_var_client = &local_var_configuration.client;
107
108 let local_var_uri_str = format!("{}/api/v1/stores/{storeId}/payment-requests", local_var_configuration.base_path, storeId=crate::apis::urlencode(store_id));
109 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
110
111 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
112 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
113 }
114 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
115 let local_var_key = local_var_apikey.key.clone();
116 let local_var_value = match local_var_apikey.prefix {
117 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
118 None => local_var_key,
119 };
120 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
121 };
122 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
123 local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
124 };
125 local_var_req_builder = local_var_req_builder.json(&payment_request_base_data);
126
127 let local_var_req = local_var_req_builder.build()?;
128 let local_var_resp = local_var_client.execute(local_var_req).await?;
129
130 let local_var_status = local_var_resp.status();
131 let local_var_content = local_var_resp.text().await?;
132
133 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
134 serde_json::from_str(&local_var_content).map_err(Error::from)
135 } else {
136 let local_var_entity: Option<PaymentRequestsCreatePaymentRequestError> = serde_json::from_str(&local_var_content).ok();
137 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
138 Err(Error::ResponseError(local_var_error))
139 }
140}
141
142pub async fn payment_requests_get_payment_request(configuration: &configuration::Configuration, store_id: &str, payment_request_id: &str) -> Result<crate::models::PaymentRequestData, Error<PaymentRequestsGetPaymentRequestError>> {
144 let local_var_configuration = configuration;
145
146 let local_var_client = &local_var_configuration.client;
147
148 let local_var_uri_str = format!("{}/api/v1/stores/{storeId}/payment-requests/{paymentRequestId}", local_var_configuration.base_path, storeId=crate::apis::urlencode(store_id), paymentRequestId=crate::apis::urlencode(payment_request_id));
149 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
150
151 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
152 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
153 }
154 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
155 let local_var_key = local_var_apikey.key.clone();
156 let local_var_value = match local_var_apikey.prefix {
157 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
158 None => local_var_key,
159 };
160 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
161 };
162 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
163 local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
164 };
165
166 let local_var_req = local_var_req_builder.build()?;
167 let local_var_resp = local_var_client.execute(local_var_req).await?;
168
169 let local_var_status = local_var_resp.status();
170 let local_var_content = local_var_resp.text().await?;
171
172 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
173 serde_json::from_str(&local_var_content).map_err(Error::from)
174 } else {
175 let local_var_entity: Option<PaymentRequestsGetPaymentRequestError> = serde_json::from_str(&local_var_content).ok();
176 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
177 Err(Error::ResponseError(local_var_error))
178 }
179}
180
181pub async fn payment_requests_get_payment_requests(configuration: &configuration::Configuration, store_id: &str) -> Result<Vec<crate::models::PaymentRequestData>, Error<PaymentRequestsGetPaymentRequestsError>> {
183 let local_var_configuration = configuration;
184
185 let local_var_client = &local_var_configuration.client;
186
187 let local_var_uri_str = format!("{}/api/v1/stores/{storeId}/payment-requests", local_var_configuration.base_path, storeId=crate::apis::urlencode(store_id));
188 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
189
190 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
191 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
192 }
193 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
194 let local_var_key = local_var_apikey.key.clone();
195 let local_var_value = match local_var_apikey.prefix {
196 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
197 None => local_var_key,
198 };
199 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
200 };
201 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
202 local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
203 };
204
205 let local_var_req = local_var_req_builder.build()?;
206 let local_var_resp = local_var_client.execute(local_var_req).await?;
207
208 let local_var_status = local_var_resp.status();
209 let local_var_content = local_var_resp.text().await?;
210
211 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
212 serde_json::from_str(&local_var_content).map_err(Error::from)
213 } else {
214 let local_var_entity: Option<PaymentRequestsGetPaymentRequestsError> = serde_json::from_str(&local_var_content).ok();
215 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
216 Err(Error::ResponseError(local_var_error))
217 }
218}
219
220pub async fn payment_requests_update_payment_request(configuration: &configuration::Configuration, store_id: &str, payment_request_id: &str, payment_request_base_data: crate::models::PaymentRequestBaseData) -> Result<crate::models::PaymentRequestData, Error<PaymentRequestsUpdatePaymentRequestError>> {
222 let local_var_configuration = configuration;
223
224 let local_var_client = &local_var_configuration.client;
225
226 let local_var_uri_str = format!("{}/api/v1/stores/{storeId}/payment-requests/{paymentRequestId}", local_var_configuration.base_path, storeId=crate::apis::urlencode(store_id), paymentRequestId=crate::apis::urlencode(payment_request_id));
227 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
228
229 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
230 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
231 }
232 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
233 let local_var_key = local_var_apikey.key.clone();
234 let local_var_value = match local_var_apikey.prefix {
235 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
236 None => local_var_key,
237 };
238 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
239 };
240 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
241 local_var_req_builder = local_var_req_builder.basic_auth(local_var_auth_conf.0.to_owned(), local_var_auth_conf.1.to_owned());
242 };
243 local_var_req_builder = local_var_req_builder.json(&payment_request_base_data);
244
245 let local_var_req = local_var_req_builder.build()?;
246 let local_var_resp = local_var_client.execute(local_var_req).await?;
247
248 let local_var_status = local_var_resp.status();
249 let local_var_content = local_var_resp.text().await?;
250
251 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
252 serde_json::from_str(&local_var_content).map_err(Error::from)
253 } else {
254 let local_var_entity: Option<PaymentRequestsUpdatePaymentRequestError> = serde_json::from_str(&local_var_content).ok();
255 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
256 Err(Error::ResponseError(local_var_error))
257 }
258}
259