1use reqwest;
12use serde::{Deserialize, Serialize};
13
14use super::{configuration, Error};
15use crate::{apis::ResponseContent, models};
16
17#[derive(Debug, Clone, Serialize, Deserialize)]
19#[serde(untagged)]
20pub enum OrganizationsOrganizationIdBillingGetError {
21 UnknownValue(serde_json::Value),
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize)]
26#[serde(untagged)]
27pub enum OrganizationsOrganizationIdBillingHistoryGetError {
28 UnknownValue(serde_json::Value),
29}
30
31#[derive(Debug, Clone, Serialize, Deserialize)]
33#[serde(untagged)]
34pub enum OrganizationsOrganizationIdBillingInvoicesGetError {
35 UnknownValue(serde_json::Value),
36}
37
38#[derive(Debug, Clone, Serialize, Deserialize)]
40#[serde(untagged)]
41pub enum OrganizationsOrganizationIdBillingMetadataGetError {
42 UnknownValue(serde_json::Value),
43}
44
45#[derive(Debug, Clone, Serialize, Deserialize)]
47#[serde(untagged)]
48pub enum OrganizationsOrganizationIdBillingPaymentMethodGetError {
49 UnknownValue(serde_json::Value),
50}
51
52#[derive(Debug, Clone, Serialize, Deserialize)]
54#[serde(untagged)]
55pub enum OrganizationsOrganizationIdBillingPaymentMethodPutError {
56 UnknownValue(serde_json::Value),
57}
58
59#[derive(Debug, Clone, Serialize, Deserialize)]
62#[serde(untagged)]
63pub enum OrganizationsOrganizationIdBillingPaymentMethodVerifyBankAccountPostError {
64 UnknownValue(serde_json::Value),
65}
66
67#[derive(Debug, Clone, Serialize, Deserialize)]
70#[serde(untagged)]
71pub enum OrganizationsOrganizationIdBillingRestartSubscriptionPostError {
72 UnknownValue(serde_json::Value),
73}
74
75#[derive(Debug, Clone, Serialize, Deserialize)]
77#[serde(untagged)]
78pub enum OrganizationsOrganizationIdBillingTaxInformationGetError {
79 UnknownValue(serde_json::Value),
80}
81
82#[derive(Debug, Clone, Serialize, Deserialize)]
84#[serde(untagged)]
85pub enum OrganizationsOrganizationIdBillingTaxInformationPutError {
86 UnknownValue(serde_json::Value),
87}
88
89#[derive(Debug, Clone, Serialize, Deserialize)]
91#[serde(untagged)]
92pub enum OrganizationsOrganizationIdBillingTransactionsGetError {
93 UnknownValue(serde_json::Value),
94}
95
96pub async fn organizations_organization_id_billing_get(
97 configuration: &configuration::Configuration,
98 organization_id: uuid::Uuid,
99) -> Result<(), Error<OrganizationsOrganizationIdBillingGetError>> {
100 let local_var_configuration = configuration;
101
102 let local_var_client = &local_var_configuration.client;
103
104 let local_var_uri_str = format!(
105 "{}/organizations/{organizationId}/billing",
106 local_var_configuration.base_path,
107 organizationId = crate::apis::urlencode(organization_id.to_string())
108 );
109 let mut local_var_req_builder =
110 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
111
112 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
113 local_var_req_builder =
114 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
115 }
116 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
117 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
118 };
119
120 let local_var_req = local_var_req_builder.build()?;
121 let local_var_resp = local_var_client.execute(local_var_req).await?;
122
123 let local_var_status = local_var_resp.status();
124 let local_var_content = local_var_resp.text().await?;
125
126 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
127 Ok(())
128 } else {
129 let local_var_entity: Option<OrganizationsOrganizationIdBillingGetError> =
130 serde_json::from_str(&local_var_content).ok();
131 let local_var_error = ResponseContent {
132 status: local_var_status,
133 content: local_var_content,
134 entity: local_var_entity,
135 };
136 Err(Error::ResponseError(local_var_error))
137 }
138}
139
140pub async fn organizations_organization_id_billing_history_get(
141 configuration: &configuration::Configuration,
142 organization_id: uuid::Uuid,
143) -> Result<(), Error<OrganizationsOrganizationIdBillingHistoryGetError>> {
144 let local_var_configuration = configuration;
145
146 let local_var_client = &local_var_configuration.client;
147
148 let local_var_uri_str = format!(
149 "{}/organizations/{organizationId}/billing/history",
150 local_var_configuration.base_path,
151 organizationId = crate::apis::urlencode(organization_id.to_string())
152 );
153 let mut local_var_req_builder =
154 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
155
156 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
157 local_var_req_builder =
158 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
159 }
160 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
161 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
162 };
163
164 let local_var_req = local_var_req_builder.build()?;
165 let local_var_resp = local_var_client.execute(local_var_req).await?;
166
167 let local_var_status = local_var_resp.status();
168 let local_var_content = local_var_resp.text().await?;
169
170 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
171 Ok(())
172 } else {
173 let local_var_entity: Option<OrganizationsOrganizationIdBillingHistoryGetError> =
174 serde_json::from_str(&local_var_content).ok();
175 let local_var_error = ResponseContent {
176 status: local_var_status,
177 content: local_var_content,
178 entity: local_var_entity,
179 };
180 Err(Error::ResponseError(local_var_error))
181 }
182}
183
184pub async fn organizations_organization_id_billing_invoices_get(
185 configuration: &configuration::Configuration,
186 organization_id: uuid::Uuid,
187 status: Option<&str>,
188 start_after: Option<&str>,
189) -> Result<(), Error<OrganizationsOrganizationIdBillingInvoicesGetError>> {
190 let local_var_configuration = configuration;
191
192 let local_var_client = &local_var_configuration.client;
193
194 let local_var_uri_str = format!(
195 "{}/organizations/{organizationId}/billing/invoices",
196 local_var_configuration.base_path,
197 organizationId = crate::apis::urlencode(organization_id.to_string())
198 );
199 let mut local_var_req_builder =
200 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
201
202 if let Some(ref local_var_str) = status {
203 local_var_req_builder =
204 local_var_req_builder.query(&[("status", &local_var_str.to_string())]);
205 }
206 if let Some(ref local_var_str) = start_after {
207 local_var_req_builder =
208 local_var_req_builder.query(&[("startAfter", &local_var_str.to_string())]);
209 }
210 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
211 local_var_req_builder =
212 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
213 }
214 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
215 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
216 };
217
218 let local_var_req = local_var_req_builder.build()?;
219 let local_var_resp = local_var_client.execute(local_var_req).await?;
220
221 let local_var_status = local_var_resp.status();
222 let local_var_content = local_var_resp.text().await?;
223
224 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
225 Ok(())
226 } else {
227 let local_var_entity: Option<OrganizationsOrganizationIdBillingInvoicesGetError> =
228 serde_json::from_str(&local_var_content).ok();
229 let local_var_error = ResponseContent {
230 status: local_var_status,
231 content: local_var_content,
232 entity: local_var_entity,
233 };
234 Err(Error::ResponseError(local_var_error))
235 }
236}
237
238pub async fn organizations_organization_id_billing_metadata_get(
239 configuration: &configuration::Configuration,
240 organization_id: uuid::Uuid,
241) -> Result<(), Error<OrganizationsOrganizationIdBillingMetadataGetError>> {
242 let local_var_configuration = configuration;
243
244 let local_var_client = &local_var_configuration.client;
245
246 let local_var_uri_str = format!(
247 "{}/organizations/{organizationId}/billing/metadata",
248 local_var_configuration.base_path,
249 organizationId = crate::apis::urlencode(organization_id.to_string())
250 );
251 let mut local_var_req_builder =
252 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
253
254 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
255 local_var_req_builder =
256 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
257 }
258 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
259 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
260 };
261
262 let local_var_req = local_var_req_builder.build()?;
263 let local_var_resp = local_var_client.execute(local_var_req).await?;
264
265 let local_var_status = local_var_resp.status();
266 let local_var_content = local_var_resp.text().await?;
267
268 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
269 Ok(())
270 } else {
271 let local_var_entity: Option<OrganizationsOrganizationIdBillingMetadataGetError> =
272 serde_json::from_str(&local_var_content).ok();
273 let local_var_error = ResponseContent {
274 status: local_var_status,
275 content: local_var_content,
276 entity: local_var_entity,
277 };
278 Err(Error::ResponseError(local_var_error))
279 }
280}
281
282pub async fn organizations_organization_id_billing_payment_method_get(
283 configuration: &configuration::Configuration,
284 organization_id: uuid::Uuid,
285) -> Result<(), Error<OrganizationsOrganizationIdBillingPaymentMethodGetError>> {
286 let local_var_configuration = configuration;
287
288 let local_var_client = &local_var_configuration.client;
289
290 let local_var_uri_str = format!(
291 "{}/organizations/{organizationId}/billing/payment-method",
292 local_var_configuration.base_path,
293 organizationId = crate::apis::urlencode(organization_id.to_string())
294 );
295 let mut local_var_req_builder =
296 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
297
298 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
299 local_var_req_builder =
300 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
301 }
302 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
303 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
304 };
305
306 let local_var_req = local_var_req_builder.build()?;
307 let local_var_resp = local_var_client.execute(local_var_req).await?;
308
309 let local_var_status = local_var_resp.status();
310 let local_var_content = local_var_resp.text().await?;
311
312 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
313 Ok(())
314 } else {
315 let local_var_entity: Option<OrganizationsOrganizationIdBillingPaymentMethodGetError> =
316 serde_json::from_str(&local_var_content).ok();
317 let local_var_error = ResponseContent {
318 status: local_var_status,
319 content: local_var_content,
320 entity: local_var_entity,
321 };
322 Err(Error::ResponseError(local_var_error))
323 }
324}
325
326pub async fn organizations_organization_id_billing_payment_method_put(
327 configuration: &configuration::Configuration,
328 organization_id: uuid::Uuid,
329 update_payment_method_request_body: Option<models::UpdatePaymentMethodRequestBody>,
330) -> Result<(), Error<OrganizationsOrganizationIdBillingPaymentMethodPutError>> {
331 let local_var_configuration = configuration;
332
333 let local_var_client = &local_var_configuration.client;
334
335 let local_var_uri_str = format!(
336 "{}/organizations/{organizationId}/billing/payment-method",
337 local_var_configuration.base_path,
338 organizationId = crate::apis::urlencode(organization_id.to_string())
339 );
340 let mut local_var_req_builder =
341 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
342
343 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
344 local_var_req_builder =
345 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
346 }
347 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
348 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
349 };
350 local_var_req_builder = local_var_req_builder.json(&update_payment_method_request_body);
351
352 let local_var_req = local_var_req_builder.build()?;
353 let local_var_resp = local_var_client.execute(local_var_req).await?;
354
355 let local_var_status = local_var_resp.status();
356 let local_var_content = local_var_resp.text().await?;
357
358 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
359 Ok(())
360 } else {
361 let local_var_entity: Option<OrganizationsOrganizationIdBillingPaymentMethodPutError> =
362 serde_json::from_str(&local_var_content).ok();
363 let local_var_error = ResponseContent {
364 status: local_var_status,
365 content: local_var_content,
366 entity: local_var_entity,
367 };
368 Err(Error::ResponseError(local_var_error))
369 }
370}
371
372pub async fn organizations_organization_id_billing_payment_method_verify_bank_account_post(
373 configuration: &configuration::Configuration,
374 organization_id: uuid::Uuid,
375 verify_bank_account_request_body: Option<models::VerifyBankAccountRequestBody>,
376) -> Result<(), Error<OrganizationsOrganizationIdBillingPaymentMethodVerifyBankAccountPostError>> {
377 let local_var_configuration = configuration;
378
379 let local_var_client = &local_var_configuration.client;
380
381 let local_var_uri_str = format!(
382 "{}/organizations/{organizationId}/billing/payment-method/verify-bank-account",
383 local_var_configuration.base_path,
384 organizationId = crate::apis::urlencode(organization_id.to_string())
385 );
386 let mut local_var_req_builder =
387 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
388
389 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
390 local_var_req_builder =
391 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
392 }
393 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
394 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
395 };
396 local_var_req_builder = local_var_req_builder.json(&verify_bank_account_request_body);
397
398 let local_var_req = local_var_req_builder.build()?;
399 let local_var_resp = local_var_client.execute(local_var_req).await?;
400
401 let local_var_status = local_var_resp.status();
402 let local_var_content = local_var_resp.text().await?;
403
404 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
405 Ok(())
406 } else {
407 let local_var_entity: Option<
408 OrganizationsOrganizationIdBillingPaymentMethodVerifyBankAccountPostError,
409 > = serde_json::from_str(&local_var_content).ok();
410 let local_var_error = ResponseContent {
411 status: local_var_status,
412 content: local_var_content,
413 entity: local_var_entity,
414 };
415 Err(Error::ResponseError(local_var_error))
416 }
417}
418
419pub async fn organizations_organization_id_billing_restart_subscription_post(
420 configuration: &configuration::Configuration,
421 organization_id: uuid::Uuid,
422 organization_create_request_model: Option<models::OrganizationCreateRequestModel>,
423) -> Result<(), Error<OrganizationsOrganizationIdBillingRestartSubscriptionPostError>> {
424 let local_var_configuration = configuration;
425
426 let local_var_client = &local_var_configuration.client;
427
428 let local_var_uri_str = format!(
429 "{}/organizations/{organizationId}/billing/restart-subscription",
430 local_var_configuration.base_path,
431 organizationId = crate::apis::urlencode(organization_id.to_string())
432 );
433 let mut local_var_req_builder =
434 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
435
436 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
437 local_var_req_builder =
438 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
439 }
440 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
441 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
442 };
443 local_var_req_builder = local_var_req_builder.json(&organization_create_request_model);
444
445 let local_var_req = local_var_req_builder.build()?;
446 let local_var_resp = local_var_client.execute(local_var_req).await?;
447
448 let local_var_status = local_var_resp.status();
449 let local_var_content = local_var_resp.text().await?;
450
451 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
452 Ok(())
453 } else {
454 let local_var_entity: Option<
455 OrganizationsOrganizationIdBillingRestartSubscriptionPostError,
456 > = serde_json::from_str(&local_var_content).ok();
457 let local_var_error = ResponseContent {
458 status: local_var_status,
459 content: local_var_content,
460 entity: local_var_entity,
461 };
462 Err(Error::ResponseError(local_var_error))
463 }
464}
465
466pub async fn organizations_organization_id_billing_tax_information_get(
467 configuration: &configuration::Configuration,
468 organization_id: uuid::Uuid,
469) -> Result<(), Error<OrganizationsOrganizationIdBillingTaxInformationGetError>> {
470 let local_var_configuration = configuration;
471
472 let local_var_client = &local_var_configuration.client;
473
474 let local_var_uri_str = format!(
475 "{}/organizations/{organizationId}/billing/tax-information",
476 local_var_configuration.base_path,
477 organizationId = crate::apis::urlencode(organization_id.to_string())
478 );
479 let mut local_var_req_builder =
480 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
481
482 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
483 local_var_req_builder =
484 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
485 }
486 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
487 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
488 };
489
490 let local_var_req = local_var_req_builder.build()?;
491 let local_var_resp = local_var_client.execute(local_var_req).await?;
492
493 let local_var_status = local_var_resp.status();
494 let local_var_content = local_var_resp.text().await?;
495
496 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
497 Ok(())
498 } else {
499 let local_var_entity: Option<OrganizationsOrganizationIdBillingTaxInformationGetError> =
500 serde_json::from_str(&local_var_content).ok();
501 let local_var_error = ResponseContent {
502 status: local_var_status,
503 content: local_var_content,
504 entity: local_var_entity,
505 };
506 Err(Error::ResponseError(local_var_error))
507 }
508}
509
510pub async fn organizations_organization_id_billing_tax_information_put(
511 configuration: &configuration::Configuration,
512 organization_id: uuid::Uuid,
513 tax_information_request_body: Option<models::TaxInformationRequestBody>,
514) -> Result<(), Error<OrganizationsOrganizationIdBillingTaxInformationPutError>> {
515 let local_var_configuration = configuration;
516
517 let local_var_client = &local_var_configuration.client;
518
519 let local_var_uri_str = format!(
520 "{}/organizations/{organizationId}/billing/tax-information",
521 local_var_configuration.base_path,
522 organizationId = crate::apis::urlencode(organization_id.to_string())
523 );
524 let mut local_var_req_builder =
525 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
526
527 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
528 local_var_req_builder =
529 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
530 }
531 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
532 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
533 };
534 local_var_req_builder = local_var_req_builder.json(&tax_information_request_body);
535
536 let local_var_req = local_var_req_builder.build()?;
537 let local_var_resp = local_var_client.execute(local_var_req).await?;
538
539 let local_var_status = local_var_resp.status();
540 let local_var_content = local_var_resp.text().await?;
541
542 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
543 Ok(())
544 } else {
545 let local_var_entity: Option<OrganizationsOrganizationIdBillingTaxInformationPutError> =
546 serde_json::from_str(&local_var_content).ok();
547 let local_var_error = ResponseContent {
548 status: local_var_status,
549 content: local_var_content,
550 entity: local_var_entity,
551 };
552 Err(Error::ResponseError(local_var_error))
553 }
554}
555
556pub async fn organizations_organization_id_billing_transactions_get(
557 configuration: &configuration::Configuration,
558 organization_id: uuid::Uuid,
559 start_after: Option<String>,
560) -> Result<(), Error<OrganizationsOrganizationIdBillingTransactionsGetError>> {
561 let local_var_configuration = configuration;
562
563 let local_var_client = &local_var_configuration.client;
564
565 let local_var_uri_str = format!(
566 "{}/organizations/{organizationId}/billing/transactions",
567 local_var_configuration.base_path,
568 organizationId = crate::apis::urlencode(organization_id.to_string())
569 );
570 let mut local_var_req_builder =
571 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
572
573 if let Some(ref local_var_str) = start_after {
574 local_var_req_builder =
575 local_var_req_builder.query(&[("startAfter", &local_var_str.to_string())]);
576 }
577 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
578 local_var_req_builder =
579 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
580 }
581 if let Some(ref local_var_token) = local_var_configuration.oauth_access_token {
582 local_var_req_builder = local_var_req_builder.bearer_auth(local_var_token.to_owned());
583 };
584
585 let local_var_req = local_var_req_builder.build()?;
586 let local_var_resp = local_var_client.execute(local_var_req).await?;
587
588 let local_var_status = local_var_resp.status();
589 let local_var_content = local_var_resp.text().await?;
590
591 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
592 Ok(())
593 } else {
594 let local_var_entity: Option<OrganizationsOrganizationIdBillingTransactionsGetError> =
595 serde_json::from_str(&local_var_content).ok();
596 let local_var_error = ResponseContent {
597 status: local_var_status,
598 content: local_var_content,
599 entity: local_var_entity,
600 };
601 Err(Error::ResponseError(local_var_error))
602 }
603}