Skip to main content

bitwarden_api_api/apis/
provider_billing_v_next_api.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use std::sync::Arc;
12
13use async_trait::async_trait;
14#[cfg(feature = "mockall")]
15use mockall::automock;
16use reqwest;
17use serde::{Deserialize, Serialize, de::Error as _};
18
19use super::{Error, configuration};
20use crate::{
21    apis::{AuthRequired, ContentType, ResponseContent},
22    models,
23};
24
25#[cfg_attr(feature = "mockall", automock)]
26#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
27#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
28pub trait ProviderBillingVNextApi: Send + Sync {
29    /// POST /providers/{providerId}/billing/vnext/credit/bitpay
30    async fn add_credit_via_bit_pay<'a>(
31        &self,
32        provider_id: &'a str,
33        id: Option<uuid::Uuid>,
34        name: Option<&'a str>,
35        business_name: Option<&'a str>,
36        business_address1: Option<&'a str>,
37        business_address2: Option<&'a str>,
38        business_address3: Option<&'a str>,
39        business_country: Option<&'a str>,
40        business_tax_number: Option<&'a str>,
41        billing_email: Option<&'a str>,
42        billing_phone: Option<&'a str>,
43        status: Option<models::ProviderStatusType>,
44        use_events: Option<bool>,
45        r#type: Option<models::ProviderType>,
46        enabled: Option<bool>,
47        creation_date: Option<String>,
48        revision_date: Option<String>,
49        gateway: Option<models::GatewayType>,
50        gateway_customer_id: Option<&'a str>,
51        gateway_subscription_id: Option<&'a str>,
52        discount_id: Option<&'a str>,
53        bit_pay_credit_request: Option<models::BitPayCreditRequest>,
54    ) -> Result<(), Error<AddCreditViaBitPayError>>;
55
56    /// GET /providers/{providerId}/billing/vnext/address
57    async fn get_billing_address<'a>(
58        &self,
59        provider_id: &'a str,
60        id: Option<uuid::Uuid>,
61        name: Option<&'a str>,
62        business_name: Option<&'a str>,
63        business_address1: Option<&'a str>,
64        business_address2: Option<&'a str>,
65        business_address3: Option<&'a str>,
66        business_country: Option<&'a str>,
67        business_tax_number: Option<&'a str>,
68        billing_email: Option<&'a str>,
69        billing_phone: Option<&'a str>,
70        status: Option<models::ProviderStatusType>,
71        use_events: Option<bool>,
72        r#type: Option<models::ProviderType>,
73        enabled: Option<bool>,
74        creation_date: Option<String>,
75        revision_date: Option<String>,
76        gateway: Option<models::GatewayType>,
77        gateway_customer_id: Option<&'a str>,
78        gateway_subscription_id: Option<&'a str>,
79        discount_id: Option<&'a str>,
80    ) -> Result<(), Error<GetBillingAddressError>>;
81
82    /// GET /providers/{providerId}/billing/vnext/credit
83    async fn get_credit<'a>(
84        &self,
85        provider_id: &'a str,
86        id: Option<uuid::Uuid>,
87        name: Option<&'a str>,
88        business_name: Option<&'a str>,
89        business_address1: Option<&'a str>,
90        business_address2: Option<&'a str>,
91        business_address3: Option<&'a str>,
92        business_country: Option<&'a str>,
93        business_tax_number: Option<&'a str>,
94        billing_email: Option<&'a str>,
95        billing_phone: Option<&'a str>,
96        status: Option<models::ProviderStatusType>,
97        use_events: Option<bool>,
98        r#type: Option<models::ProviderType>,
99        enabled: Option<bool>,
100        creation_date: Option<String>,
101        revision_date: Option<String>,
102        gateway: Option<models::GatewayType>,
103        gateway_customer_id: Option<&'a str>,
104        gateway_subscription_id: Option<&'a str>,
105        discount_id: Option<&'a str>,
106    ) -> Result<(), Error<GetCreditError>>;
107
108    /// GET /providers/{providerId}/billing/vnext/payment-method
109    async fn get_payment_method<'a>(
110        &self,
111        provider_id: &'a str,
112        id: Option<uuid::Uuid>,
113        name: Option<&'a str>,
114        business_name: Option<&'a str>,
115        business_address1: Option<&'a str>,
116        business_address2: Option<&'a str>,
117        business_address3: Option<&'a str>,
118        business_country: Option<&'a str>,
119        business_tax_number: Option<&'a str>,
120        billing_email: Option<&'a str>,
121        billing_phone: Option<&'a str>,
122        status: Option<models::ProviderStatusType>,
123        use_events: Option<bool>,
124        r#type: Option<models::ProviderType>,
125        enabled: Option<bool>,
126        creation_date: Option<String>,
127        revision_date: Option<String>,
128        gateway: Option<models::GatewayType>,
129        gateway_customer_id: Option<&'a str>,
130        gateway_subscription_id: Option<&'a str>,
131        discount_id: Option<&'a str>,
132    ) -> Result<(), Error<GetPaymentMethodError>>;
133
134    /// GET /providers/{providerId}/billing/vnext/warnings
135    async fn get_warnings<'a>(
136        &self,
137        provider_id: &'a str,
138        id: Option<uuid::Uuid>,
139        name: Option<&'a str>,
140        business_name: Option<&'a str>,
141        business_address1: Option<&'a str>,
142        business_address2: Option<&'a str>,
143        business_address3: Option<&'a str>,
144        business_country: Option<&'a str>,
145        business_tax_number: Option<&'a str>,
146        billing_email: Option<&'a str>,
147        billing_phone: Option<&'a str>,
148        status: Option<models::ProviderStatusType>,
149        use_events: Option<bool>,
150        r#type: Option<models::ProviderType>,
151        enabled: Option<bool>,
152        creation_date: Option<String>,
153        revision_date: Option<String>,
154        gateway: Option<models::GatewayType>,
155        gateway_customer_id: Option<&'a str>,
156        gateway_subscription_id: Option<&'a str>,
157        discount_id: Option<&'a str>,
158    ) -> Result<(), Error<GetWarningsError>>;
159
160    /// PUT /providers/{providerId}/billing/vnext/address
161    async fn update_billing_address<'a>(
162        &self,
163        provider_id: &'a str,
164        id: Option<uuid::Uuid>,
165        name: Option<&'a str>,
166        business_name: Option<&'a str>,
167        business_address1: Option<&'a str>,
168        business_address2: Option<&'a str>,
169        business_address3: Option<&'a str>,
170        business_country: Option<&'a str>,
171        business_tax_number: Option<&'a str>,
172        billing_email: Option<&'a str>,
173        billing_phone: Option<&'a str>,
174        status: Option<models::ProviderStatusType>,
175        use_events: Option<bool>,
176        r#type: Option<models::ProviderType>,
177        enabled: Option<bool>,
178        creation_date: Option<String>,
179        revision_date: Option<String>,
180        gateway: Option<models::GatewayType>,
181        gateway_customer_id: Option<&'a str>,
182        gateway_subscription_id: Option<&'a str>,
183        discount_id: Option<&'a str>,
184        billing_address_request: Option<models::BillingAddressRequest>,
185    ) -> Result<(), Error<UpdateBillingAddressError>>;
186
187    /// PUT /providers/{providerId}/billing/vnext/payment-method
188    async fn update_payment_method<'a>(
189        &self,
190        provider_id: &'a str,
191        id: Option<uuid::Uuid>,
192        name: Option<&'a str>,
193        business_name: Option<&'a str>,
194        business_address1: Option<&'a str>,
195        business_address2: Option<&'a str>,
196        business_address3: Option<&'a str>,
197        business_country: Option<&'a str>,
198        business_tax_number: Option<&'a str>,
199        billing_email: Option<&'a str>,
200        billing_phone: Option<&'a str>,
201        status: Option<models::ProviderStatusType>,
202        use_events: Option<bool>,
203        r#type: Option<models::ProviderType>,
204        enabled: Option<bool>,
205        creation_date: Option<String>,
206        revision_date: Option<String>,
207        gateway: Option<models::GatewayType>,
208        gateway_customer_id: Option<&'a str>,
209        gateway_subscription_id: Option<&'a str>,
210        discount_id: Option<&'a str>,
211        tokenized_payment_method_request: Option<models::TokenizedPaymentMethodRequest>,
212    ) -> Result<(), Error<UpdatePaymentMethodError>>;
213}
214
215pub struct ProviderBillingVNextApiClient {
216    configuration: Arc<configuration::Configuration>,
217}
218
219impl ProviderBillingVNextApiClient {
220    pub fn new(configuration: Arc<configuration::Configuration>) -> Self {
221        Self { configuration }
222    }
223}
224
225#[cfg_attr(target_arch = "wasm32", async_trait(?Send))]
226#[cfg_attr(not(target_arch = "wasm32"), async_trait)]
227impl ProviderBillingVNextApi for ProviderBillingVNextApiClient {
228    async fn add_credit_via_bit_pay<'a>(
229        &self,
230        provider_id: &'a str,
231        id: Option<uuid::Uuid>,
232        name: Option<&'a str>,
233        business_name: Option<&'a str>,
234        business_address1: Option<&'a str>,
235        business_address2: Option<&'a str>,
236        business_address3: Option<&'a str>,
237        business_country: Option<&'a str>,
238        business_tax_number: Option<&'a str>,
239        billing_email: Option<&'a str>,
240        billing_phone: Option<&'a str>,
241        status: Option<models::ProviderStatusType>,
242        use_events: Option<bool>,
243        r#type: Option<models::ProviderType>,
244        enabled: Option<bool>,
245        creation_date: Option<String>,
246        revision_date: Option<String>,
247        gateway: Option<models::GatewayType>,
248        gateway_customer_id: Option<&'a str>,
249        gateway_subscription_id: Option<&'a str>,
250        discount_id: Option<&'a str>,
251        bit_pay_credit_request: Option<models::BitPayCreditRequest>,
252    ) -> Result<(), Error<AddCreditViaBitPayError>> {
253        let local_var_configuration = &self.configuration;
254
255        let local_var_client = &local_var_configuration.client;
256
257        let local_var_uri_str = format!(
258            "{}/providers/{providerId}/billing/vnext/credit/bitpay",
259            local_var_configuration.base_path,
260            providerId = crate::apis::urlencode(provider_id)
261        );
262        let mut local_var_req_builder =
263            local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
264
265        if let Some(ref param_value) = id {
266            local_var_req_builder =
267                local_var_req_builder.query(&[("id", &param_value.to_string())]);
268        }
269        if let Some(ref param_value) = name {
270            local_var_req_builder =
271                local_var_req_builder.query(&[("name", &param_value.to_string())]);
272        }
273        if let Some(ref param_value) = business_name {
274            local_var_req_builder =
275                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
276        }
277        if let Some(ref param_value) = business_address1 {
278            local_var_req_builder =
279                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
280        }
281        if let Some(ref param_value) = business_address2 {
282            local_var_req_builder =
283                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
284        }
285        if let Some(ref param_value) = business_address3 {
286            local_var_req_builder =
287                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
288        }
289        if let Some(ref param_value) = business_country {
290            local_var_req_builder =
291                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
292        }
293        if let Some(ref param_value) = business_tax_number {
294            local_var_req_builder =
295                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
296        }
297        if let Some(ref param_value) = billing_email {
298            local_var_req_builder =
299                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
300        }
301        if let Some(ref param_value) = billing_phone {
302            local_var_req_builder =
303                local_var_req_builder.query(&[("billingPhone", &param_value.to_string())]);
304        }
305        if let Some(ref param_value) = status {
306            local_var_req_builder =
307                local_var_req_builder.query(&[("status", &param_value.to_string())]);
308        }
309        if let Some(ref param_value) = use_events {
310            local_var_req_builder =
311                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
312        }
313        if let Some(ref param_value) = r#type {
314            local_var_req_builder =
315                local_var_req_builder.query(&[("type", &param_value.to_string())]);
316        }
317        if let Some(ref param_value) = enabled {
318            local_var_req_builder =
319                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
320        }
321        if let Some(ref param_value) = creation_date {
322            local_var_req_builder =
323                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
324        }
325        if let Some(ref param_value) = revision_date {
326            local_var_req_builder =
327                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
328        }
329        if let Some(ref param_value) = gateway {
330            local_var_req_builder =
331                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
332        }
333        if let Some(ref param_value) = gateway_customer_id {
334            local_var_req_builder =
335                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
336        }
337        if let Some(ref param_value) = gateway_subscription_id {
338            local_var_req_builder =
339                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
340        }
341        if let Some(ref param_value) = discount_id {
342            local_var_req_builder =
343                local_var_req_builder.query(&[("discountId", &param_value.to_string())]);
344        }
345        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
346        local_var_req_builder = local_var_req_builder.json(&bit_pay_credit_request);
347
348        let local_var_resp = local_var_req_builder.send().await?;
349
350        let local_var_status = local_var_resp.status();
351        let local_var_content = local_var_resp.text().await?;
352
353        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
354            Ok(())
355        } else {
356            let local_var_entity: Option<AddCreditViaBitPayError> =
357                serde_json::from_str(&local_var_content).ok();
358            let local_var_error = ResponseContent {
359                status: local_var_status,
360                content: local_var_content,
361                entity: local_var_entity,
362            };
363            Err(Error::ResponseError(local_var_error))
364        }
365    }
366
367    async fn get_billing_address<'a>(
368        &self,
369        provider_id: &'a str,
370        id: Option<uuid::Uuid>,
371        name: Option<&'a str>,
372        business_name: Option<&'a str>,
373        business_address1: Option<&'a str>,
374        business_address2: Option<&'a str>,
375        business_address3: Option<&'a str>,
376        business_country: Option<&'a str>,
377        business_tax_number: Option<&'a str>,
378        billing_email: Option<&'a str>,
379        billing_phone: Option<&'a str>,
380        status: Option<models::ProviderStatusType>,
381        use_events: Option<bool>,
382        r#type: Option<models::ProviderType>,
383        enabled: Option<bool>,
384        creation_date: Option<String>,
385        revision_date: Option<String>,
386        gateway: Option<models::GatewayType>,
387        gateway_customer_id: Option<&'a str>,
388        gateway_subscription_id: Option<&'a str>,
389        discount_id: Option<&'a str>,
390    ) -> Result<(), Error<GetBillingAddressError>> {
391        let local_var_configuration = &self.configuration;
392
393        let local_var_client = &local_var_configuration.client;
394
395        let local_var_uri_str = format!(
396            "{}/providers/{providerId}/billing/vnext/address",
397            local_var_configuration.base_path,
398            providerId = crate::apis::urlencode(provider_id)
399        );
400        let mut local_var_req_builder =
401            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
402
403        if let Some(ref param_value) = id {
404            local_var_req_builder =
405                local_var_req_builder.query(&[("id", &param_value.to_string())]);
406        }
407        if let Some(ref param_value) = name {
408            local_var_req_builder =
409                local_var_req_builder.query(&[("name", &param_value.to_string())]);
410        }
411        if let Some(ref param_value) = business_name {
412            local_var_req_builder =
413                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
414        }
415        if let Some(ref param_value) = business_address1 {
416            local_var_req_builder =
417                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
418        }
419        if let Some(ref param_value) = business_address2 {
420            local_var_req_builder =
421                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
422        }
423        if let Some(ref param_value) = business_address3 {
424            local_var_req_builder =
425                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
426        }
427        if let Some(ref param_value) = business_country {
428            local_var_req_builder =
429                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
430        }
431        if let Some(ref param_value) = business_tax_number {
432            local_var_req_builder =
433                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
434        }
435        if let Some(ref param_value) = billing_email {
436            local_var_req_builder =
437                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
438        }
439        if let Some(ref param_value) = billing_phone {
440            local_var_req_builder =
441                local_var_req_builder.query(&[("billingPhone", &param_value.to_string())]);
442        }
443        if let Some(ref param_value) = status {
444            local_var_req_builder =
445                local_var_req_builder.query(&[("status", &param_value.to_string())]);
446        }
447        if let Some(ref param_value) = use_events {
448            local_var_req_builder =
449                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
450        }
451        if let Some(ref param_value) = r#type {
452            local_var_req_builder =
453                local_var_req_builder.query(&[("type", &param_value.to_string())]);
454        }
455        if let Some(ref param_value) = enabled {
456            local_var_req_builder =
457                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
458        }
459        if let Some(ref param_value) = creation_date {
460            local_var_req_builder =
461                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
462        }
463        if let Some(ref param_value) = revision_date {
464            local_var_req_builder =
465                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
466        }
467        if let Some(ref param_value) = gateway {
468            local_var_req_builder =
469                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
470        }
471        if let Some(ref param_value) = gateway_customer_id {
472            local_var_req_builder =
473                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
474        }
475        if let Some(ref param_value) = gateway_subscription_id {
476            local_var_req_builder =
477                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
478        }
479        if let Some(ref param_value) = discount_id {
480            local_var_req_builder =
481                local_var_req_builder.query(&[("discountId", &param_value.to_string())]);
482        }
483        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
484
485        let local_var_resp = local_var_req_builder.send().await?;
486
487        let local_var_status = local_var_resp.status();
488        let local_var_content = local_var_resp.text().await?;
489
490        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
491            Ok(())
492        } else {
493            let local_var_entity: Option<GetBillingAddressError> =
494                serde_json::from_str(&local_var_content).ok();
495            let local_var_error = ResponseContent {
496                status: local_var_status,
497                content: local_var_content,
498                entity: local_var_entity,
499            };
500            Err(Error::ResponseError(local_var_error))
501        }
502    }
503
504    async fn get_credit<'a>(
505        &self,
506        provider_id: &'a str,
507        id: Option<uuid::Uuid>,
508        name: Option<&'a str>,
509        business_name: Option<&'a str>,
510        business_address1: Option<&'a str>,
511        business_address2: Option<&'a str>,
512        business_address3: Option<&'a str>,
513        business_country: Option<&'a str>,
514        business_tax_number: Option<&'a str>,
515        billing_email: Option<&'a str>,
516        billing_phone: Option<&'a str>,
517        status: Option<models::ProviderStatusType>,
518        use_events: Option<bool>,
519        r#type: Option<models::ProviderType>,
520        enabled: Option<bool>,
521        creation_date: Option<String>,
522        revision_date: Option<String>,
523        gateway: Option<models::GatewayType>,
524        gateway_customer_id: Option<&'a str>,
525        gateway_subscription_id: Option<&'a str>,
526        discount_id: Option<&'a str>,
527    ) -> Result<(), Error<GetCreditError>> {
528        let local_var_configuration = &self.configuration;
529
530        let local_var_client = &local_var_configuration.client;
531
532        let local_var_uri_str = format!(
533            "{}/providers/{providerId}/billing/vnext/credit",
534            local_var_configuration.base_path,
535            providerId = crate::apis::urlencode(provider_id)
536        );
537        let mut local_var_req_builder =
538            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
539
540        if let Some(ref param_value) = id {
541            local_var_req_builder =
542                local_var_req_builder.query(&[("id", &param_value.to_string())]);
543        }
544        if let Some(ref param_value) = name {
545            local_var_req_builder =
546                local_var_req_builder.query(&[("name", &param_value.to_string())]);
547        }
548        if let Some(ref param_value) = business_name {
549            local_var_req_builder =
550                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
551        }
552        if let Some(ref param_value) = business_address1 {
553            local_var_req_builder =
554                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
555        }
556        if let Some(ref param_value) = business_address2 {
557            local_var_req_builder =
558                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
559        }
560        if let Some(ref param_value) = business_address3 {
561            local_var_req_builder =
562                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
563        }
564        if let Some(ref param_value) = business_country {
565            local_var_req_builder =
566                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
567        }
568        if let Some(ref param_value) = business_tax_number {
569            local_var_req_builder =
570                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
571        }
572        if let Some(ref param_value) = billing_email {
573            local_var_req_builder =
574                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
575        }
576        if let Some(ref param_value) = billing_phone {
577            local_var_req_builder =
578                local_var_req_builder.query(&[("billingPhone", &param_value.to_string())]);
579        }
580        if let Some(ref param_value) = status {
581            local_var_req_builder =
582                local_var_req_builder.query(&[("status", &param_value.to_string())]);
583        }
584        if let Some(ref param_value) = use_events {
585            local_var_req_builder =
586                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
587        }
588        if let Some(ref param_value) = r#type {
589            local_var_req_builder =
590                local_var_req_builder.query(&[("type", &param_value.to_string())]);
591        }
592        if let Some(ref param_value) = enabled {
593            local_var_req_builder =
594                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
595        }
596        if let Some(ref param_value) = creation_date {
597            local_var_req_builder =
598                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
599        }
600        if let Some(ref param_value) = revision_date {
601            local_var_req_builder =
602                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
603        }
604        if let Some(ref param_value) = gateway {
605            local_var_req_builder =
606                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
607        }
608        if let Some(ref param_value) = gateway_customer_id {
609            local_var_req_builder =
610                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
611        }
612        if let Some(ref param_value) = gateway_subscription_id {
613            local_var_req_builder =
614                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
615        }
616        if let Some(ref param_value) = discount_id {
617            local_var_req_builder =
618                local_var_req_builder.query(&[("discountId", &param_value.to_string())]);
619        }
620        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
621
622        let local_var_resp = local_var_req_builder.send().await?;
623
624        let local_var_status = local_var_resp.status();
625        let local_var_content = local_var_resp.text().await?;
626
627        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
628            Ok(())
629        } else {
630            let local_var_entity: Option<GetCreditError> =
631                serde_json::from_str(&local_var_content).ok();
632            let local_var_error = ResponseContent {
633                status: local_var_status,
634                content: local_var_content,
635                entity: local_var_entity,
636            };
637            Err(Error::ResponseError(local_var_error))
638        }
639    }
640
641    async fn get_payment_method<'a>(
642        &self,
643        provider_id: &'a str,
644        id: Option<uuid::Uuid>,
645        name: Option<&'a str>,
646        business_name: Option<&'a str>,
647        business_address1: Option<&'a str>,
648        business_address2: Option<&'a str>,
649        business_address3: Option<&'a str>,
650        business_country: Option<&'a str>,
651        business_tax_number: Option<&'a str>,
652        billing_email: Option<&'a str>,
653        billing_phone: Option<&'a str>,
654        status: Option<models::ProviderStatusType>,
655        use_events: Option<bool>,
656        r#type: Option<models::ProviderType>,
657        enabled: Option<bool>,
658        creation_date: Option<String>,
659        revision_date: Option<String>,
660        gateway: Option<models::GatewayType>,
661        gateway_customer_id: Option<&'a str>,
662        gateway_subscription_id: Option<&'a str>,
663        discount_id: Option<&'a str>,
664    ) -> Result<(), Error<GetPaymentMethodError>> {
665        let local_var_configuration = &self.configuration;
666
667        let local_var_client = &local_var_configuration.client;
668
669        let local_var_uri_str = format!(
670            "{}/providers/{providerId}/billing/vnext/payment-method",
671            local_var_configuration.base_path,
672            providerId = crate::apis::urlencode(provider_id)
673        );
674        let mut local_var_req_builder =
675            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
676
677        if let Some(ref param_value) = id {
678            local_var_req_builder =
679                local_var_req_builder.query(&[("id", &param_value.to_string())]);
680        }
681        if let Some(ref param_value) = name {
682            local_var_req_builder =
683                local_var_req_builder.query(&[("name", &param_value.to_string())]);
684        }
685        if let Some(ref param_value) = business_name {
686            local_var_req_builder =
687                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
688        }
689        if let Some(ref param_value) = business_address1 {
690            local_var_req_builder =
691                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
692        }
693        if let Some(ref param_value) = business_address2 {
694            local_var_req_builder =
695                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
696        }
697        if let Some(ref param_value) = business_address3 {
698            local_var_req_builder =
699                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
700        }
701        if let Some(ref param_value) = business_country {
702            local_var_req_builder =
703                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
704        }
705        if let Some(ref param_value) = business_tax_number {
706            local_var_req_builder =
707                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
708        }
709        if let Some(ref param_value) = billing_email {
710            local_var_req_builder =
711                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
712        }
713        if let Some(ref param_value) = billing_phone {
714            local_var_req_builder =
715                local_var_req_builder.query(&[("billingPhone", &param_value.to_string())]);
716        }
717        if let Some(ref param_value) = status {
718            local_var_req_builder =
719                local_var_req_builder.query(&[("status", &param_value.to_string())]);
720        }
721        if let Some(ref param_value) = use_events {
722            local_var_req_builder =
723                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
724        }
725        if let Some(ref param_value) = r#type {
726            local_var_req_builder =
727                local_var_req_builder.query(&[("type", &param_value.to_string())]);
728        }
729        if let Some(ref param_value) = enabled {
730            local_var_req_builder =
731                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
732        }
733        if let Some(ref param_value) = creation_date {
734            local_var_req_builder =
735                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
736        }
737        if let Some(ref param_value) = revision_date {
738            local_var_req_builder =
739                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
740        }
741        if let Some(ref param_value) = gateway {
742            local_var_req_builder =
743                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
744        }
745        if let Some(ref param_value) = gateway_customer_id {
746            local_var_req_builder =
747                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
748        }
749        if let Some(ref param_value) = gateway_subscription_id {
750            local_var_req_builder =
751                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
752        }
753        if let Some(ref param_value) = discount_id {
754            local_var_req_builder =
755                local_var_req_builder.query(&[("discountId", &param_value.to_string())]);
756        }
757        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
758
759        let local_var_resp = local_var_req_builder.send().await?;
760
761        let local_var_status = local_var_resp.status();
762        let local_var_content = local_var_resp.text().await?;
763
764        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
765            Ok(())
766        } else {
767            let local_var_entity: Option<GetPaymentMethodError> =
768                serde_json::from_str(&local_var_content).ok();
769            let local_var_error = ResponseContent {
770                status: local_var_status,
771                content: local_var_content,
772                entity: local_var_entity,
773            };
774            Err(Error::ResponseError(local_var_error))
775        }
776    }
777
778    async fn get_warnings<'a>(
779        &self,
780        provider_id: &'a str,
781        id: Option<uuid::Uuid>,
782        name: Option<&'a str>,
783        business_name: Option<&'a str>,
784        business_address1: Option<&'a str>,
785        business_address2: Option<&'a str>,
786        business_address3: Option<&'a str>,
787        business_country: Option<&'a str>,
788        business_tax_number: Option<&'a str>,
789        billing_email: Option<&'a str>,
790        billing_phone: Option<&'a str>,
791        status: Option<models::ProviderStatusType>,
792        use_events: Option<bool>,
793        r#type: Option<models::ProviderType>,
794        enabled: Option<bool>,
795        creation_date: Option<String>,
796        revision_date: Option<String>,
797        gateway: Option<models::GatewayType>,
798        gateway_customer_id: Option<&'a str>,
799        gateway_subscription_id: Option<&'a str>,
800        discount_id: Option<&'a str>,
801    ) -> Result<(), Error<GetWarningsError>> {
802        let local_var_configuration = &self.configuration;
803
804        let local_var_client = &local_var_configuration.client;
805
806        let local_var_uri_str = format!(
807            "{}/providers/{providerId}/billing/vnext/warnings",
808            local_var_configuration.base_path,
809            providerId = crate::apis::urlencode(provider_id)
810        );
811        let mut local_var_req_builder =
812            local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
813
814        if let Some(ref param_value) = id {
815            local_var_req_builder =
816                local_var_req_builder.query(&[("id", &param_value.to_string())]);
817        }
818        if let Some(ref param_value) = name {
819            local_var_req_builder =
820                local_var_req_builder.query(&[("name", &param_value.to_string())]);
821        }
822        if let Some(ref param_value) = business_name {
823            local_var_req_builder =
824                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
825        }
826        if let Some(ref param_value) = business_address1 {
827            local_var_req_builder =
828                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
829        }
830        if let Some(ref param_value) = business_address2 {
831            local_var_req_builder =
832                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
833        }
834        if let Some(ref param_value) = business_address3 {
835            local_var_req_builder =
836                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
837        }
838        if let Some(ref param_value) = business_country {
839            local_var_req_builder =
840                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
841        }
842        if let Some(ref param_value) = business_tax_number {
843            local_var_req_builder =
844                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
845        }
846        if let Some(ref param_value) = billing_email {
847            local_var_req_builder =
848                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
849        }
850        if let Some(ref param_value) = billing_phone {
851            local_var_req_builder =
852                local_var_req_builder.query(&[("billingPhone", &param_value.to_string())]);
853        }
854        if let Some(ref param_value) = status {
855            local_var_req_builder =
856                local_var_req_builder.query(&[("status", &param_value.to_string())]);
857        }
858        if let Some(ref param_value) = use_events {
859            local_var_req_builder =
860                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
861        }
862        if let Some(ref param_value) = r#type {
863            local_var_req_builder =
864                local_var_req_builder.query(&[("type", &param_value.to_string())]);
865        }
866        if let Some(ref param_value) = enabled {
867            local_var_req_builder =
868                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
869        }
870        if let Some(ref param_value) = creation_date {
871            local_var_req_builder =
872                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
873        }
874        if let Some(ref param_value) = revision_date {
875            local_var_req_builder =
876                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
877        }
878        if let Some(ref param_value) = gateway {
879            local_var_req_builder =
880                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
881        }
882        if let Some(ref param_value) = gateway_customer_id {
883            local_var_req_builder =
884                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
885        }
886        if let Some(ref param_value) = gateway_subscription_id {
887            local_var_req_builder =
888                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
889        }
890        if let Some(ref param_value) = discount_id {
891            local_var_req_builder =
892                local_var_req_builder.query(&[("discountId", &param_value.to_string())]);
893        }
894        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
895
896        let local_var_resp = local_var_req_builder.send().await?;
897
898        let local_var_status = local_var_resp.status();
899        let local_var_content = local_var_resp.text().await?;
900
901        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
902            Ok(())
903        } else {
904            let local_var_entity: Option<GetWarningsError> =
905                serde_json::from_str(&local_var_content).ok();
906            let local_var_error = ResponseContent {
907                status: local_var_status,
908                content: local_var_content,
909                entity: local_var_entity,
910            };
911            Err(Error::ResponseError(local_var_error))
912        }
913    }
914
915    async fn update_billing_address<'a>(
916        &self,
917        provider_id: &'a str,
918        id: Option<uuid::Uuid>,
919        name: Option<&'a str>,
920        business_name: Option<&'a str>,
921        business_address1: Option<&'a str>,
922        business_address2: Option<&'a str>,
923        business_address3: Option<&'a str>,
924        business_country: Option<&'a str>,
925        business_tax_number: Option<&'a str>,
926        billing_email: Option<&'a str>,
927        billing_phone: Option<&'a str>,
928        status: Option<models::ProviderStatusType>,
929        use_events: Option<bool>,
930        r#type: Option<models::ProviderType>,
931        enabled: Option<bool>,
932        creation_date: Option<String>,
933        revision_date: Option<String>,
934        gateway: Option<models::GatewayType>,
935        gateway_customer_id: Option<&'a str>,
936        gateway_subscription_id: Option<&'a str>,
937        discount_id: Option<&'a str>,
938        billing_address_request: Option<models::BillingAddressRequest>,
939    ) -> Result<(), Error<UpdateBillingAddressError>> {
940        let local_var_configuration = &self.configuration;
941
942        let local_var_client = &local_var_configuration.client;
943
944        let local_var_uri_str = format!(
945            "{}/providers/{providerId}/billing/vnext/address",
946            local_var_configuration.base_path,
947            providerId = crate::apis::urlencode(provider_id)
948        );
949        let mut local_var_req_builder =
950            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
951
952        if let Some(ref param_value) = id {
953            local_var_req_builder =
954                local_var_req_builder.query(&[("id", &param_value.to_string())]);
955        }
956        if let Some(ref param_value) = name {
957            local_var_req_builder =
958                local_var_req_builder.query(&[("name", &param_value.to_string())]);
959        }
960        if let Some(ref param_value) = business_name {
961            local_var_req_builder =
962                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
963        }
964        if let Some(ref param_value) = business_address1 {
965            local_var_req_builder =
966                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
967        }
968        if let Some(ref param_value) = business_address2 {
969            local_var_req_builder =
970                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
971        }
972        if let Some(ref param_value) = business_address3 {
973            local_var_req_builder =
974                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
975        }
976        if let Some(ref param_value) = business_country {
977            local_var_req_builder =
978                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
979        }
980        if let Some(ref param_value) = business_tax_number {
981            local_var_req_builder =
982                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
983        }
984        if let Some(ref param_value) = billing_email {
985            local_var_req_builder =
986                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
987        }
988        if let Some(ref param_value) = billing_phone {
989            local_var_req_builder =
990                local_var_req_builder.query(&[("billingPhone", &param_value.to_string())]);
991        }
992        if let Some(ref param_value) = status {
993            local_var_req_builder =
994                local_var_req_builder.query(&[("status", &param_value.to_string())]);
995        }
996        if let Some(ref param_value) = use_events {
997            local_var_req_builder =
998                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
999        }
1000        if let Some(ref param_value) = r#type {
1001            local_var_req_builder =
1002                local_var_req_builder.query(&[("type", &param_value.to_string())]);
1003        }
1004        if let Some(ref param_value) = enabled {
1005            local_var_req_builder =
1006                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
1007        }
1008        if let Some(ref param_value) = creation_date {
1009            local_var_req_builder =
1010                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
1011        }
1012        if let Some(ref param_value) = revision_date {
1013            local_var_req_builder =
1014                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
1015        }
1016        if let Some(ref param_value) = gateway {
1017            local_var_req_builder =
1018                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
1019        }
1020        if let Some(ref param_value) = gateway_customer_id {
1021            local_var_req_builder =
1022                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1023        }
1024        if let Some(ref param_value) = gateway_subscription_id {
1025            local_var_req_builder =
1026                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1027        }
1028        if let Some(ref param_value) = discount_id {
1029            local_var_req_builder =
1030                local_var_req_builder.query(&[("discountId", &param_value.to_string())]);
1031        }
1032        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
1033        local_var_req_builder = local_var_req_builder.json(&billing_address_request);
1034
1035        let local_var_resp = local_var_req_builder.send().await?;
1036
1037        let local_var_status = local_var_resp.status();
1038        let local_var_content = local_var_resp.text().await?;
1039
1040        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1041            Ok(())
1042        } else {
1043            let local_var_entity: Option<UpdateBillingAddressError> =
1044                serde_json::from_str(&local_var_content).ok();
1045            let local_var_error = ResponseContent {
1046                status: local_var_status,
1047                content: local_var_content,
1048                entity: local_var_entity,
1049            };
1050            Err(Error::ResponseError(local_var_error))
1051        }
1052    }
1053
1054    async fn update_payment_method<'a>(
1055        &self,
1056        provider_id: &'a str,
1057        id: Option<uuid::Uuid>,
1058        name: Option<&'a str>,
1059        business_name: Option<&'a str>,
1060        business_address1: Option<&'a str>,
1061        business_address2: Option<&'a str>,
1062        business_address3: Option<&'a str>,
1063        business_country: Option<&'a str>,
1064        business_tax_number: Option<&'a str>,
1065        billing_email: Option<&'a str>,
1066        billing_phone: Option<&'a str>,
1067        status: Option<models::ProviderStatusType>,
1068        use_events: Option<bool>,
1069        r#type: Option<models::ProviderType>,
1070        enabled: Option<bool>,
1071        creation_date: Option<String>,
1072        revision_date: Option<String>,
1073        gateway: Option<models::GatewayType>,
1074        gateway_customer_id: Option<&'a str>,
1075        gateway_subscription_id: Option<&'a str>,
1076        discount_id: Option<&'a str>,
1077        tokenized_payment_method_request: Option<models::TokenizedPaymentMethodRequest>,
1078    ) -> Result<(), Error<UpdatePaymentMethodError>> {
1079        let local_var_configuration = &self.configuration;
1080
1081        let local_var_client = &local_var_configuration.client;
1082
1083        let local_var_uri_str = format!(
1084            "{}/providers/{providerId}/billing/vnext/payment-method",
1085            local_var_configuration.base_path,
1086            providerId = crate::apis::urlencode(provider_id)
1087        );
1088        let mut local_var_req_builder =
1089            local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1090
1091        if let Some(ref param_value) = id {
1092            local_var_req_builder =
1093                local_var_req_builder.query(&[("id", &param_value.to_string())]);
1094        }
1095        if let Some(ref param_value) = name {
1096            local_var_req_builder =
1097                local_var_req_builder.query(&[("name", &param_value.to_string())]);
1098        }
1099        if let Some(ref param_value) = business_name {
1100            local_var_req_builder =
1101                local_var_req_builder.query(&[("businessName", &param_value.to_string())]);
1102        }
1103        if let Some(ref param_value) = business_address1 {
1104            local_var_req_builder =
1105                local_var_req_builder.query(&[("businessAddress1", &param_value.to_string())]);
1106        }
1107        if let Some(ref param_value) = business_address2 {
1108            local_var_req_builder =
1109                local_var_req_builder.query(&[("businessAddress2", &param_value.to_string())]);
1110        }
1111        if let Some(ref param_value) = business_address3 {
1112            local_var_req_builder =
1113                local_var_req_builder.query(&[("businessAddress3", &param_value.to_string())]);
1114        }
1115        if let Some(ref param_value) = business_country {
1116            local_var_req_builder =
1117                local_var_req_builder.query(&[("businessCountry", &param_value.to_string())]);
1118        }
1119        if let Some(ref param_value) = business_tax_number {
1120            local_var_req_builder =
1121                local_var_req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
1122        }
1123        if let Some(ref param_value) = billing_email {
1124            local_var_req_builder =
1125                local_var_req_builder.query(&[("billingEmail", &param_value.to_string())]);
1126        }
1127        if let Some(ref param_value) = billing_phone {
1128            local_var_req_builder =
1129                local_var_req_builder.query(&[("billingPhone", &param_value.to_string())]);
1130        }
1131        if let Some(ref param_value) = status {
1132            local_var_req_builder =
1133                local_var_req_builder.query(&[("status", &param_value.to_string())]);
1134        }
1135        if let Some(ref param_value) = use_events {
1136            local_var_req_builder =
1137                local_var_req_builder.query(&[("useEvents", &param_value.to_string())]);
1138        }
1139        if let Some(ref param_value) = r#type {
1140            local_var_req_builder =
1141                local_var_req_builder.query(&[("type", &param_value.to_string())]);
1142        }
1143        if let Some(ref param_value) = enabled {
1144            local_var_req_builder =
1145                local_var_req_builder.query(&[("enabled", &param_value.to_string())]);
1146        }
1147        if let Some(ref param_value) = creation_date {
1148            local_var_req_builder =
1149                local_var_req_builder.query(&[("creationDate", &param_value.to_string())]);
1150        }
1151        if let Some(ref param_value) = revision_date {
1152            local_var_req_builder =
1153                local_var_req_builder.query(&[("revisionDate", &param_value.to_string())]);
1154        }
1155        if let Some(ref param_value) = gateway {
1156            local_var_req_builder =
1157                local_var_req_builder.query(&[("gateway", &param_value.to_string())]);
1158        }
1159        if let Some(ref param_value) = gateway_customer_id {
1160            local_var_req_builder =
1161                local_var_req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1162        }
1163        if let Some(ref param_value) = gateway_subscription_id {
1164            local_var_req_builder =
1165                local_var_req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1166        }
1167        if let Some(ref param_value) = discount_id {
1168            local_var_req_builder =
1169                local_var_req_builder.query(&[("discountId", &param_value.to_string())]);
1170        }
1171        local_var_req_builder = local_var_req_builder.with_extension(AuthRequired::Bearer);
1172        local_var_req_builder = local_var_req_builder.json(&tokenized_payment_method_request);
1173
1174        let local_var_resp = local_var_req_builder.send().await?;
1175
1176        let local_var_status = local_var_resp.status();
1177        let local_var_content = local_var_resp.text().await?;
1178
1179        if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1180            Ok(())
1181        } else {
1182            let local_var_entity: Option<UpdatePaymentMethodError> =
1183                serde_json::from_str(&local_var_content).ok();
1184            let local_var_error = ResponseContent {
1185                status: local_var_status,
1186                content: local_var_content,
1187                entity: local_var_entity,
1188            };
1189            Err(Error::ResponseError(local_var_error))
1190        }
1191    }
1192}
1193
1194/// struct for typed errors of method [`ProviderBillingVNextApi::add_credit_via_bit_pay`]
1195#[derive(Debug, Clone, Serialize, Deserialize)]
1196#[serde(untagged)]
1197pub enum AddCreditViaBitPayError {
1198    UnknownValue(serde_json::Value),
1199}
1200/// struct for typed errors of method [`ProviderBillingVNextApi::get_billing_address`]
1201#[derive(Debug, Clone, Serialize, Deserialize)]
1202#[serde(untagged)]
1203pub enum GetBillingAddressError {
1204    UnknownValue(serde_json::Value),
1205}
1206/// struct for typed errors of method [`ProviderBillingVNextApi::get_credit`]
1207#[derive(Debug, Clone, Serialize, Deserialize)]
1208#[serde(untagged)]
1209pub enum GetCreditError {
1210    UnknownValue(serde_json::Value),
1211}
1212/// struct for typed errors of method [`ProviderBillingVNextApi::get_payment_method`]
1213#[derive(Debug, Clone, Serialize, Deserialize)]
1214#[serde(untagged)]
1215pub enum GetPaymentMethodError {
1216    UnknownValue(serde_json::Value),
1217}
1218/// struct for typed errors of method [`ProviderBillingVNextApi::get_warnings`]
1219#[derive(Debug, Clone, Serialize, Deserialize)]
1220#[serde(untagged)]
1221pub enum GetWarningsError {
1222    UnknownValue(serde_json::Value),
1223}
1224/// struct for typed errors of method [`ProviderBillingVNextApi::update_billing_address`]
1225#[derive(Debug, Clone, Serialize, Deserialize)]
1226#[serde(untagged)]
1227pub enum UpdateBillingAddressError {
1228    UnknownValue(serde_json::Value),
1229}
1230/// struct for typed errors of method [`ProviderBillingVNextApi::update_payment_method`]
1231#[derive(Debug, Clone, Serialize, Deserialize)]
1232#[serde(untagged)]
1233pub enum UpdatePaymentMethodError {
1234    UnknownValue(serde_json::Value),
1235}