bitwarden_api_api/apis/
organization_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 reqwest;
12use serde::{de::Error as _, Deserialize, Serialize};
13
14use super::{configuration, ContentType, Error};
15use crate::{apis::ResponseContent, models};
16
17/// struct for typed errors of method [`organizations_organization_id_billing_vnext_address_get`]
18#[derive(Debug, Clone, Serialize, Deserialize)]
19#[serde(untagged)]
20pub enum OrganizationsOrganizationIdBillingVnextAddressGetError {
21    UnknownValue(serde_json::Value),
22}
23
24/// struct for typed errors of method [`organizations_organization_id_billing_vnext_address_put`]
25#[derive(Debug, Clone, Serialize, Deserialize)]
26#[serde(untagged)]
27pub enum OrganizationsOrganizationIdBillingVnextAddressPutError {
28    UnknownValue(serde_json::Value),
29}
30
31/// struct for typed errors of method
32/// [`organizations_organization_id_billing_vnext_credit_bitpay_post`]
33#[derive(Debug, Clone, Serialize, Deserialize)]
34#[serde(untagged)]
35pub enum OrganizationsOrganizationIdBillingVnextCreditBitpayPostError {
36    UnknownValue(serde_json::Value),
37}
38
39/// struct for typed errors of method [`organizations_organization_id_billing_vnext_credit_get`]
40#[derive(Debug, Clone, Serialize, Deserialize)]
41#[serde(untagged)]
42pub enum OrganizationsOrganizationIdBillingVnextCreditGetError {
43    UnknownValue(serde_json::Value),
44}
45
46/// struct for typed errors of method
47/// [`organizations_organization_id_billing_vnext_payment_method_get`]
48#[derive(Debug, Clone, Serialize, Deserialize)]
49#[serde(untagged)]
50pub enum OrganizationsOrganizationIdBillingVnextPaymentMethodGetError {
51    UnknownValue(serde_json::Value),
52}
53
54/// struct for typed errors of method
55/// [`organizations_organization_id_billing_vnext_payment_method_put`]
56#[derive(Debug, Clone, Serialize, Deserialize)]
57#[serde(untagged)]
58pub enum OrganizationsOrganizationIdBillingVnextPaymentMethodPutError {
59    UnknownValue(serde_json::Value),
60}
61
62/// struct for typed errors of method
63/// [`organizations_organization_id_billing_vnext_payment_method_verify_bank_account_post`]
64#[derive(Debug, Clone, Serialize, Deserialize)]
65#[serde(untagged)]
66pub enum OrganizationsOrganizationIdBillingVnextPaymentMethodVerifyBankAccountPostError {
67    UnknownValue(serde_json::Value),
68}
69
70pub async fn organizations_organization_id_billing_vnext_address_get(
71    configuration: &configuration::Configuration,
72    organization_id: &str,
73    id: Option<uuid::Uuid>,
74    identifier: Option<&str>,
75    name: Option<&str>,
76    business_name: Option<&str>,
77    business_address1: Option<&str>,
78    business_address2: Option<&str>,
79    business_address3: Option<&str>,
80    business_country: Option<&str>,
81    business_tax_number: Option<&str>,
82    billing_email: Option<&str>,
83    plan: Option<&str>,
84    plan_type: Option<models::PlanType>,
85    seats: Option<i32>,
86    max_collections: Option<i32>,
87    use_policies: Option<bool>,
88    use_sso: Option<bool>,
89    use_key_connector: Option<bool>,
90    use_scim: Option<bool>,
91    use_groups: Option<bool>,
92    use_directory: Option<bool>,
93    use_events: Option<bool>,
94    use_totp: Option<bool>,
95    use2fa: Option<bool>,
96    use_api: Option<bool>,
97    use_reset_password: Option<bool>,
98    use_secrets_manager: Option<bool>,
99    self_host: Option<bool>,
100    users_get_premium: Option<bool>,
101    use_custom_permissions: Option<bool>,
102    storage: Option<i64>,
103    max_storage_gb: Option<i32>,
104    gateway: Option<models::GatewayType>,
105    gateway_customer_id: Option<&str>,
106    gateway_subscription_id: Option<&str>,
107    reference_data: Option<&str>,
108    enabled: Option<bool>,
109    license_key: Option<&str>,
110    public_key: Option<&str>,
111    private_key: Option<&str>,
112    two_factor_providers: Option<&str>,
113    expiration_date: Option<String>,
114    creation_date: Option<String>,
115    revision_date: Option<String>,
116    max_autoscale_seats: Option<i32>,
117    owners_notified_of_autoscaling: Option<String>,
118    status: Option<models::OrganizationStatusType>,
119    use_password_manager: Option<bool>,
120    sm_seats: Option<i32>,
121    sm_service_accounts: Option<i32>,
122    max_autoscale_sm_seats: Option<i32>,
123    max_autoscale_sm_service_accounts: Option<i32>,
124    limit_collection_creation: Option<bool>,
125    limit_collection_deletion: Option<bool>,
126    allow_admin_access_to_all_collection_items: Option<bool>,
127    limit_item_deletion: Option<bool>,
128    use_risk_insights: Option<bool>,
129    use_organization_domains: Option<bool>,
130    use_admin_sponsored_families: Option<bool>,
131) -> Result<(), Error<OrganizationsOrganizationIdBillingVnextAddressGetError>> {
132    // add a prefix to parameters to efficiently prevent name collisions
133    let p_organization_id = organization_id;
134    let p_id = id;
135    let p_identifier = identifier;
136    let p_name = name;
137    let p_business_name = business_name;
138    let p_business_address1 = business_address1;
139    let p_business_address2 = business_address2;
140    let p_business_address3 = business_address3;
141    let p_business_country = business_country;
142    let p_business_tax_number = business_tax_number;
143    let p_billing_email = billing_email;
144    let p_plan = plan;
145    let p_plan_type = plan_type;
146    let p_seats = seats;
147    let p_max_collections = max_collections;
148    let p_use_policies = use_policies;
149    let p_use_sso = use_sso;
150    let p_use_key_connector = use_key_connector;
151    let p_use_scim = use_scim;
152    let p_use_groups = use_groups;
153    let p_use_directory = use_directory;
154    let p_use_events = use_events;
155    let p_use_totp = use_totp;
156    let p_use2fa = use2fa;
157    let p_use_api = use_api;
158    let p_use_reset_password = use_reset_password;
159    let p_use_secrets_manager = use_secrets_manager;
160    let p_self_host = self_host;
161    let p_users_get_premium = users_get_premium;
162    let p_use_custom_permissions = use_custom_permissions;
163    let p_storage = storage;
164    let p_max_storage_gb = max_storage_gb;
165    let p_gateway = gateway;
166    let p_gateway_customer_id = gateway_customer_id;
167    let p_gateway_subscription_id = gateway_subscription_id;
168    let p_reference_data = reference_data;
169    let p_enabled = enabled;
170    let p_license_key = license_key;
171    let p_public_key = public_key;
172    let p_private_key = private_key;
173    let p_two_factor_providers = two_factor_providers;
174    let p_expiration_date = expiration_date;
175    let p_creation_date = creation_date;
176    let p_revision_date = revision_date;
177    let p_max_autoscale_seats = max_autoscale_seats;
178    let p_owners_notified_of_autoscaling = owners_notified_of_autoscaling;
179    let p_status = status;
180    let p_use_password_manager = use_password_manager;
181    let p_sm_seats = sm_seats;
182    let p_sm_service_accounts = sm_service_accounts;
183    let p_max_autoscale_sm_seats = max_autoscale_sm_seats;
184    let p_max_autoscale_sm_service_accounts = max_autoscale_sm_service_accounts;
185    let p_limit_collection_creation = limit_collection_creation;
186    let p_limit_collection_deletion = limit_collection_deletion;
187    let p_allow_admin_access_to_all_collection_items = allow_admin_access_to_all_collection_items;
188    let p_limit_item_deletion = limit_item_deletion;
189    let p_use_risk_insights = use_risk_insights;
190    let p_use_organization_domains = use_organization_domains;
191    let p_use_admin_sponsored_families = use_admin_sponsored_families;
192
193    let uri_str = format!(
194        "{}/organizations/{organizationId}/billing/vnext/address",
195        configuration.base_path,
196        organizationId = crate::apis::urlencode(p_organization_id)
197    );
198    let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
199
200    if let Some(ref param_value) = p_id {
201        req_builder = req_builder.query(&[("id", &param_value.to_string())]);
202    }
203    if let Some(ref param_value) = p_identifier {
204        req_builder = req_builder.query(&[("identifier", &param_value.to_string())]);
205    }
206    if let Some(ref param_value) = p_name {
207        req_builder = req_builder.query(&[("name", &param_value.to_string())]);
208    }
209    if let Some(ref param_value) = p_business_name {
210        req_builder = req_builder.query(&[("businessName", &param_value.to_string())]);
211    }
212    if let Some(ref param_value) = p_business_address1 {
213        req_builder = req_builder.query(&[("businessAddress1", &param_value.to_string())]);
214    }
215    if let Some(ref param_value) = p_business_address2 {
216        req_builder = req_builder.query(&[("businessAddress2", &param_value.to_string())]);
217    }
218    if let Some(ref param_value) = p_business_address3 {
219        req_builder = req_builder.query(&[("businessAddress3", &param_value.to_string())]);
220    }
221    if let Some(ref param_value) = p_business_country {
222        req_builder = req_builder.query(&[("businessCountry", &param_value.to_string())]);
223    }
224    if let Some(ref param_value) = p_business_tax_number {
225        req_builder = req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
226    }
227    if let Some(ref param_value) = p_billing_email {
228        req_builder = req_builder.query(&[("billingEmail", &param_value.to_string())]);
229    }
230    if let Some(ref param_value) = p_plan {
231        req_builder = req_builder.query(&[("plan", &param_value.to_string())]);
232    }
233    if let Some(ref param_value) = p_plan_type {
234        req_builder = req_builder.query(&[("planType", &param_value.to_string())]);
235    }
236    if let Some(ref param_value) = p_seats {
237        req_builder = req_builder.query(&[("seats", &param_value.to_string())]);
238    }
239    if let Some(ref param_value) = p_max_collections {
240        req_builder = req_builder.query(&[("maxCollections", &param_value.to_string())]);
241    }
242    if let Some(ref param_value) = p_use_policies {
243        req_builder = req_builder.query(&[("usePolicies", &param_value.to_string())]);
244    }
245    if let Some(ref param_value) = p_use_sso {
246        req_builder = req_builder.query(&[("useSso", &param_value.to_string())]);
247    }
248    if let Some(ref param_value) = p_use_key_connector {
249        req_builder = req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
250    }
251    if let Some(ref param_value) = p_use_scim {
252        req_builder = req_builder.query(&[("useScim", &param_value.to_string())]);
253    }
254    if let Some(ref param_value) = p_use_groups {
255        req_builder = req_builder.query(&[("useGroups", &param_value.to_string())]);
256    }
257    if let Some(ref param_value) = p_use_directory {
258        req_builder = req_builder.query(&[("useDirectory", &param_value.to_string())]);
259    }
260    if let Some(ref param_value) = p_use_events {
261        req_builder = req_builder.query(&[("useEvents", &param_value.to_string())]);
262    }
263    if let Some(ref param_value) = p_use_totp {
264        req_builder = req_builder.query(&[("useTotp", &param_value.to_string())]);
265    }
266    if let Some(ref param_value) = p_use2fa {
267        req_builder = req_builder.query(&[("use2fa", &param_value.to_string())]);
268    }
269    if let Some(ref param_value) = p_use_api {
270        req_builder = req_builder.query(&[("useApi", &param_value.to_string())]);
271    }
272    if let Some(ref param_value) = p_use_reset_password {
273        req_builder = req_builder.query(&[("useResetPassword", &param_value.to_string())]);
274    }
275    if let Some(ref param_value) = p_use_secrets_manager {
276        req_builder = req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
277    }
278    if let Some(ref param_value) = p_self_host {
279        req_builder = req_builder.query(&[("selfHost", &param_value.to_string())]);
280    }
281    if let Some(ref param_value) = p_users_get_premium {
282        req_builder = req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
283    }
284    if let Some(ref param_value) = p_use_custom_permissions {
285        req_builder = req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
286    }
287    if let Some(ref param_value) = p_storage {
288        req_builder = req_builder.query(&[("storage", &param_value.to_string())]);
289    }
290    if let Some(ref param_value) = p_max_storage_gb {
291        req_builder = req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
292    }
293    if let Some(ref param_value) = p_gateway {
294        req_builder = req_builder.query(&[("gateway", &param_value.to_string())]);
295    }
296    if let Some(ref param_value) = p_gateway_customer_id {
297        req_builder = req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
298    }
299    if let Some(ref param_value) = p_gateway_subscription_id {
300        req_builder = req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
301    }
302    if let Some(ref param_value) = p_reference_data {
303        req_builder = req_builder.query(&[("referenceData", &param_value.to_string())]);
304    }
305    if let Some(ref param_value) = p_enabled {
306        req_builder = req_builder.query(&[("enabled", &param_value.to_string())]);
307    }
308    if let Some(ref param_value) = p_license_key {
309        req_builder = req_builder.query(&[("licenseKey", &param_value.to_string())]);
310    }
311    if let Some(ref param_value) = p_public_key {
312        req_builder = req_builder.query(&[("publicKey", &param_value.to_string())]);
313    }
314    if let Some(ref param_value) = p_private_key {
315        req_builder = req_builder.query(&[("privateKey", &param_value.to_string())]);
316    }
317    if let Some(ref param_value) = p_two_factor_providers {
318        req_builder = req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
319    }
320    if let Some(ref param_value) = p_expiration_date {
321        req_builder = req_builder.query(&[("expirationDate", &param_value.to_string())]);
322    }
323    if let Some(ref param_value) = p_creation_date {
324        req_builder = req_builder.query(&[("creationDate", &param_value.to_string())]);
325    }
326    if let Some(ref param_value) = p_revision_date {
327        req_builder = req_builder.query(&[("revisionDate", &param_value.to_string())]);
328    }
329    if let Some(ref param_value) = p_max_autoscale_seats {
330        req_builder = req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
331    }
332    if let Some(ref param_value) = p_owners_notified_of_autoscaling {
333        req_builder =
334            req_builder.query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
335    }
336    if let Some(ref param_value) = p_status {
337        req_builder = req_builder.query(&[("status", &param_value.to_string())]);
338    }
339    if let Some(ref param_value) = p_use_password_manager {
340        req_builder = req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
341    }
342    if let Some(ref param_value) = p_sm_seats {
343        req_builder = req_builder.query(&[("smSeats", &param_value.to_string())]);
344    }
345    if let Some(ref param_value) = p_sm_service_accounts {
346        req_builder = req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
347    }
348    if let Some(ref param_value) = p_max_autoscale_sm_seats {
349        req_builder = req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
350    }
351    if let Some(ref param_value) = p_max_autoscale_sm_service_accounts {
352        req_builder =
353            req_builder.query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
354    }
355    if let Some(ref param_value) = p_limit_collection_creation {
356        req_builder = req_builder.query(&[("limitCollectionCreation", &param_value.to_string())]);
357    }
358    if let Some(ref param_value) = p_limit_collection_deletion {
359        req_builder = req_builder.query(&[("limitCollectionDeletion", &param_value.to_string())]);
360    }
361    if let Some(ref param_value) = p_allow_admin_access_to_all_collection_items {
362        req_builder = req_builder.query(&[(
363            "allowAdminAccessToAllCollectionItems",
364            &param_value.to_string(),
365        )]);
366    }
367    if let Some(ref param_value) = p_limit_item_deletion {
368        req_builder = req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
369    }
370    if let Some(ref param_value) = p_use_risk_insights {
371        req_builder = req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
372    }
373    if let Some(ref param_value) = p_use_organization_domains {
374        req_builder = req_builder.query(&[("useOrganizationDomains", &param_value.to_string())]);
375    }
376    if let Some(ref param_value) = p_use_admin_sponsored_families {
377        req_builder = req_builder.query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
378    }
379    if let Some(ref user_agent) = configuration.user_agent {
380        req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
381    }
382    if let Some(ref token) = configuration.oauth_access_token {
383        req_builder = req_builder.bearer_auth(token.to_owned());
384    };
385
386    let req = req_builder.build()?;
387    let resp = configuration.client.execute(req).await?;
388
389    let status = resp.status();
390
391    if !status.is_client_error() && !status.is_server_error() {
392        Ok(())
393    } else {
394        let content = resp.text().await?;
395        let entity: Option<OrganizationsOrganizationIdBillingVnextAddressGetError> =
396            serde_json::from_str(&content).ok();
397        Err(Error::ResponseError(ResponseContent {
398            status,
399            content,
400            entity,
401        }))
402    }
403}
404
405pub async fn organizations_organization_id_billing_vnext_address_put(
406    configuration: &configuration::Configuration,
407    organization_id: &str,
408    id: Option<uuid::Uuid>,
409    identifier: Option<&str>,
410    name: Option<&str>,
411    business_name: Option<&str>,
412    business_address1: Option<&str>,
413    business_address2: Option<&str>,
414    business_address3: Option<&str>,
415    business_country: Option<&str>,
416    business_tax_number: Option<&str>,
417    billing_email: Option<&str>,
418    plan: Option<&str>,
419    plan_type: Option<models::PlanType>,
420    seats: Option<i32>,
421    max_collections: Option<i32>,
422    use_policies: Option<bool>,
423    use_sso: Option<bool>,
424    use_key_connector: Option<bool>,
425    use_scim: Option<bool>,
426    use_groups: Option<bool>,
427    use_directory: Option<bool>,
428    use_events: Option<bool>,
429    use_totp: Option<bool>,
430    use2fa: Option<bool>,
431    use_api: Option<bool>,
432    use_reset_password: Option<bool>,
433    use_secrets_manager: Option<bool>,
434    self_host: Option<bool>,
435    users_get_premium: Option<bool>,
436    use_custom_permissions: Option<bool>,
437    storage: Option<i64>,
438    max_storage_gb: Option<i32>,
439    gateway: Option<models::GatewayType>,
440    gateway_customer_id: Option<&str>,
441    gateway_subscription_id: Option<&str>,
442    reference_data: Option<&str>,
443    enabled: Option<bool>,
444    license_key: Option<&str>,
445    public_key: Option<&str>,
446    private_key: Option<&str>,
447    two_factor_providers: Option<&str>,
448    expiration_date: Option<String>,
449    creation_date: Option<String>,
450    revision_date: Option<String>,
451    max_autoscale_seats: Option<i32>,
452    owners_notified_of_autoscaling: Option<String>,
453    status: Option<models::OrganizationStatusType>,
454    use_password_manager: Option<bool>,
455    sm_seats: Option<i32>,
456    sm_service_accounts: Option<i32>,
457    max_autoscale_sm_seats: Option<i32>,
458    max_autoscale_sm_service_accounts: Option<i32>,
459    limit_collection_creation: Option<bool>,
460    limit_collection_deletion: Option<bool>,
461    allow_admin_access_to_all_collection_items: Option<bool>,
462    limit_item_deletion: Option<bool>,
463    use_risk_insights: Option<bool>,
464    use_organization_domains: Option<bool>,
465    use_admin_sponsored_families: Option<bool>,
466    billing_address_request: Option<models::BillingAddressRequest>,
467) -> Result<(), Error<OrganizationsOrganizationIdBillingVnextAddressPutError>> {
468    // add a prefix to parameters to efficiently prevent name collisions
469    let p_organization_id = organization_id;
470    let p_id = id;
471    let p_identifier = identifier;
472    let p_name = name;
473    let p_business_name = business_name;
474    let p_business_address1 = business_address1;
475    let p_business_address2 = business_address2;
476    let p_business_address3 = business_address3;
477    let p_business_country = business_country;
478    let p_business_tax_number = business_tax_number;
479    let p_billing_email = billing_email;
480    let p_plan = plan;
481    let p_plan_type = plan_type;
482    let p_seats = seats;
483    let p_max_collections = max_collections;
484    let p_use_policies = use_policies;
485    let p_use_sso = use_sso;
486    let p_use_key_connector = use_key_connector;
487    let p_use_scim = use_scim;
488    let p_use_groups = use_groups;
489    let p_use_directory = use_directory;
490    let p_use_events = use_events;
491    let p_use_totp = use_totp;
492    let p_use2fa = use2fa;
493    let p_use_api = use_api;
494    let p_use_reset_password = use_reset_password;
495    let p_use_secrets_manager = use_secrets_manager;
496    let p_self_host = self_host;
497    let p_users_get_premium = users_get_premium;
498    let p_use_custom_permissions = use_custom_permissions;
499    let p_storage = storage;
500    let p_max_storage_gb = max_storage_gb;
501    let p_gateway = gateway;
502    let p_gateway_customer_id = gateway_customer_id;
503    let p_gateway_subscription_id = gateway_subscription_id;
504    let p_reference_data = reference_data;
505    let p_enabled = enabled;
506    let p_license_key = license_key;
507    let p_public_key = public_key;
508    let p_private_key = private_key;
509    let p_two_factor_providers = two_factor_providers;
510    let p_expiration_date = expiration_date;
511    let p_creation_date = creation_date;
512    let p_revision_date = revision_date;
513    let p_max_autoscale_seats = max_autoscale_seats;
514    let p_owners_notified_of_autoscaling = owners_notified_of_autoscaling;
515    let p_status = status;
516    let p_use_password_manager = use_password_manager;
517    let p_sm_seats = sm_seats;
518    let p_sm_service_accounts = sm_service_accounts;
519    let p_max_autoscale_sm_seats = max_autoscale_sm_seats;
520    let p_max_autoscale_sm_service_accounts = max_autoscale_sm_service_accounts;
521    let p_limit_collection_creation = limit_collection_creation;
522    let p_limit_collection_deletion = limit_collection_deletion;
523    let p_allow_admin_access_to_all_collection_items = allow_admin_access_to_all_collection_items;
524    let p_limit_item_deletion = limit_item_deletion;
525    let p_use_risk_insights = use_risk_insights;
526    let p_use_organization_domains = use_organization_domains;
527    let p_use_admin_sponsored_families = use_admin_sponsored_families;
528    let p_billing_address_request = billing_address_request;
529
530    let uri_str = format!(
531        "{}/organizations/{organizationId}/billing/vnext/address",
532        configuration.base_path,
533        organizationId = crate::apis::urlencode(p_organization_id)
534    );
535    let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str);
536
537    if let Some(ref param_value) = p_id {
538        req_builder = req_builder.query(&[("id", &param_value.to_string())]);
539    }
540    if let Some(ref param_value) = p_identifier {
541        req_builder = req_builder.query(&[("identifier", &param_value.to_string())]);
542    }
543    if let Some(ref param_value) = p_name {
544        req_builder = req_builder.query(&[("name", &param_value.to_string())]);
545    }
546    if let Some(ref param_value) = p_business_name {
547        req_builder = req_builder.query(&[("businessName", &param_value.to_string())]);
548    }
549    if let Some(ref param_value) = p_business_address1 {
550        req_builder = req_builder.query(&[("businessAddress1", &param_value.to_string())]);
551    }
552    if let Some(ref param_value) = p_business_address2 {
553        req_builder = req_builder.query(&[("businessAddress2", &param_value.to_string())]);
554    }
555    if let Some(ref param_value) = p_business_address3 {
556        req_builder = req_builder.query(&[("businessAddress3", &param_value.to_string())]);
557    }
558    if let Some(ref param_value) = p_business_country {
559        req_builder = req_builder.query(&[("businessCountry", &param_value.to_string())]);
560    }
561    if let Some(ref param_value) = p_business_tax_number {
562        req_builder = req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
563    }
564    if let Some(ref param_value) = p_billing_email {
565        req_builder = req_builder.query(&[("billingEmail", &param_value.to_string())]);
566    }
567    if let Some(ref param_value) = p_plan {
568        req_builder = req_builder.query(&[("plan", &param_value.to_string())]);
569    }
570    if let Some(ref param_value) = p_plan_type {
571        req_builder = req_builder.query(&[("planType", &param_value.to_string())]);
572    }
573    if let Some(ref param_value) = p_seats {
574        req_builder = req_builder.query(&[("seats", &param_value.to_string())]);
575    }
576    if let Some(ref param_value) = p_max_collections {
577        req_builder = req_builder.query(&[("maxCollections", &param_value.to_string())]);
578    }
579    if let Some(ref param_value) = p_use_policies {
580        req_builder = req_builder.query(&[("usePolicies", &param_value.to_string())]);
581    }
582    if let Some(ref param_value) = p_use_sso {
583        req_builder = req_builder.query(&[("useSso", &param_value.to_string())]);
584    }
585    if let Some(ref param_value) = p_use_key_connector {
586        req_builder = req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
587    }
588    if let Some(ref param_value) = p_use_scim {
589        req_builder = req_builder.query(&[("useScim", &param_value.to_string())]);
590    }
591    if let Some(ref param_value) = p_use_groups {
592        req_builder = req_builder.query(&[("useGroups", &param_value.to_string())]);
593    }
594    if let Some(ref param_value) = p_use_directory {
595        req_builder = req_builder.query(&[("useDirectory", &param_value.to_string())]);
596    }
597    if let Some(ref param_value) = p_use_events {
598        req_builder = req_builder.query(&[("useEvents", &param_value.to_string())]);
599    }
600    if let Some(ref param_value) = p_use_totp {
601        req_builder = req_builder.query(&[("useTotp", &param_value.to_string())]);
602    }
603    if let Some(ref param_value) = p_use2fa {
604        req_builder = req_builder.query(&[("use2fa", &param_value.to_string())]);
605    }
606    if let Some(ref param_value) = p_use_api {
607        req_builder = req_builder.query(&[("useApi", &param_value.to_string())]);
608    }
609    if let Some(ref param_value) = p_use_reset_password {
610        req_builder = req_builder.query(&[("useResetPassword", &param_value.to_string())]);
611    }
612    if let Some(ref param_value) = p_use_secrets_manager {
613        req_builder = req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
614    }
615    if let Some(ref param_value) = p_self_host {
616        req_builder = req_builder.query(&[("selfHost", &param_value.to_string())]);
617    }
618    if let Some(ref param_value) = p_users_get_premium {
619        req_builder = req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
620    }
621    if let Some(ref param_value) = p_use_custom_permissions {
622        req_builder = req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
623    }
624    if let Some(ref param_value) = p_storage {
625        req_builder = req_builder.query(&[("storage", &param_value.to_string())]);
626    }
627    if let Some(ref param_value) = p_max_storage_gb {
628        req_builder = req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
629    }
630    if let Some(ref param_value) = p_gateway {
631        req_builder = req_builder.query(&[("gateway", &param_value.to_string())]);
632    }
633    if let Some(ref param_value) = p_gateway_customer_id {
634        req_builder = req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
635    }
636    if let Some(ref param_value) = p_gateway_subscription_id {
637        req_builder = req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
638    }
639    if let Some(ref param_value) = p_reference_data {
640        req_builder = req_builder.query(&[("referenceData", &param_value.to_string())]);
641    }
642    if let Some(ref param_value) = p_enabled {
643        req_builder = req_builder.query(&[("enabled", &param_value.to_string())]);
644    }
645    if let Some(ref param_value) = p_license_key {
646        req_builder = req_builder.query(&[("licenseKey", &param_value.to_string())]);
647    }
648    if let Some(ref param_value) = p_public_key {
649        req_builder = req_builder.query(&[("publicKey", &param_value.to_string())]);
650    }
651    if let Some(ref param_value) = p_private_key {
652        req_builder = req_builder.query(&[("privateKey", &param_value.to_string())]);
653    }
654    if let Some(ref param_value) = p_two_factor_providers {
655        req_builder = req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
656    }
657    if let Some(ref param_value) = p_expiration_date {
658        req_builder = req_builder.query(&[("expirationDate", &param_value.to_string())]);
659    }
660    if let Some(ref param_value) = p_creation_date {
661        req_builder = req_builder.query(&[("creationDate", &param_value.to_string())]);
662    }
663    if let Some(ref param_value) = p_revision_date {
664        req_builder = req_builder.query(&[("revisionDate", &param_value.to_string())]);
665    }
666    if let Some(ref param_value) = p_max_autoscale_seats {
667        req_builder = req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
668    }
669    if let Some(ref param_value) = p_owners_notified_of_autoscaling {
670        req_builder =
671            req_builder.query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
672    }
673    if let Some(ref param_value) = p_status {
674        req_builder = req_builder.query(&[("status", &param_value.to_string())]);
675    }
676    if let Some(ref param_value) = p_use_password_manager {
677        req_builder = req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
678    }
679    if let Some(ref param_value) = p_sm_seats {
680        req_builder = req_builder.query(&[("smSeats", &param_value.to_string())]);
681    }
682    if let Some(ref param_value) = p_sm_service_accounts {
683        req_builder = req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
684    }
685    if let Some(ref param_value) = p_max_autoscale_sm_seats {
686        req_builder = req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
687    }
688    if let Some(ref param_value) = p_max_autoscale_sm_service_accounts {
689        req_builder =
690            req_builder.query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
691    }
692    if let Some(ref param_value) = p_limit_collection_creation {
693        req_builder = req_builder.query(&[("limitCollectionCreation", &param_value.to_string())]);
694    }
695    if let Some(ref param_value) = p_limit_collection_deletion {
696        req_builder = req_builder.query(&[("limitCollectionDeletion", &param_value.to_string())]);
697    }
698    if let Some(ref param_value) = p_allow_admin_access_to_all_collection_items {
699        req_builder = req_builder.query(&[(
700            "allowAdminAccessToAllCollectionItems",
701            &param_value.to_string(),
702        )]);
703    }
704    if let Some(ref param_value) = p_limit_item_deletion {
705        req_builder = req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
706    }
707    if let Some(ref param_value) = p_use_risk_insights {
708        req_builder = req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
709    }
710    if let Some(ref param_value) = p_use_organization_domains {
711        req_builder = req_builder.query(&[("useOrganizationDomains", &param_value.to_string())]);
712    }
713    if let Some(ref param_value) = p_use_admin_sponsored_families {
714        req_builder = req_builder.query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
715    }
716    if let Some(ref user_agent) = configuration.user_agent {
717        req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
718    }
719    if let Some(ref token) = configuration.oauth_access_token {
720        req_builder = req_builder.bearer_auth(token.to_owned());
721    };
722    req_builder = req_builder.json(&p_billing_address_request);
723
724    let req = req_builder.build()?;
725    let resp = configuration.client.execute(req).await?;
726
727    let status = resp.status();
728
729    if !status.is_client_error() && !status.is_server_error() {
730        Ok(())
731    } else {
732        let content = resp.text().await?;
733        let entity: Option<OrganizationsOrganizationIdBillingVnextAddressPutError> =
734            serde_json::from_str(&content).ok();
735        Err(Error::ResponseError(ResponseContent {
736            status,
737            content,
738            entity,
739        }))
740    }
741}
742
743pub async fn organizations_organization_id_billing_vnext_credit_bitpay_post(
744    configuration: &configuration::Configuration,
745    organization_id: &str,
746    id: Option<uuid::Uuid>,
747    identifier: Option<&str>,
748    name: Option<&str>,
749    business_name: Option<&str>,
750    business_address1: Option<&str>,
751    business_address2: Option<&str>,
752    business_address3: Option<&str>,
753    business_country: Option<&str>,
754    business_tax_number: Option<&str>,
755    billing_email: Option<&str>,
756    plan: Option<&str>,
757    plan_type: Option<models::PlanType>,
758    seats: Option<i32>,
759    max_collections: Option<i32>,
760    use_policies: Option<bool>,
761    use_sso: Option<bool>,
762    use_key_connector: Option<bool>,
763    use_scim: Option<bool>,
764    use_groups: Option<bool>,
765    use_directory: Option<bool>,
766    use_events: Option<bool>,
767    use_totp: Option<bool>,
768    use2fa: Option<bool>,
769    use_api: Option<bool>,
770    use_reset_password: Option<bool>,
771    use_secrets_manager: Option<bool>,
772    self_host: Option<bool>,
773    users_get_premium: Option<bool>,
774    use_custom_permissions: Option<bool>,
775    storage: Option<i64>,
776    max_storage_gb: Option<i32>,
777    gateway: Option<models::GatewayType>,
778    gateway_customer_id: Option<&str>,
779    gateway_subscription_id: Option<&str>,
780    reference_data: Option<&str>,
781    enabled: Option<bool>,
782    license_key: Option<&str>,
783    public_key: Option<&str>,
784    private_key: Option<&str>,
785    two_factor_providers: Option<&str>,
786    expiration_date: Option<String>,
787    creation_date: Option<String>,
788    revision_date: Option<String>,
789    max_autoscale_seats: Option<i32>,
790    owners_notified_of_autoscaling: Option<String>,
791    status: Option<models::OrganizationStatusType>,
792    use_password_manager: Option<bool>,
793    sm_seats: Option<i32>,
794    sm_service_accounts: Option<i32>,
795    max_autoscale_sm_seats: Option<i32>,
796    max_autoscale_sm_service_accounts: Option<i32>,
797    limit_collection_creation: Option<bool>,
798    limit_collection_deletion: Option<bool>,
799    allow_admin_access_to_all_collection_items: Option<bool>,
800    limit_item_deletion: Option<bool>,
801    use_risk_insights: Option<bool>,
802    use_organization_domains: Option<bool>,
803    use_admin_sponsored_families: Option<bool>,
804    bit_pay_credit_request: Option<models::BitPayCreditRequest>,
805) -> Result<(), Error<OrganizationsOrganizationIdBillingVnextCreditBitpayPostError>> {
806    // add a prefix to parameters to efficiently prevent name collisions
807    let p_organization_id = organization_id;
808    let p_id = id;
809    let p_identifier = identifier;
810    let p_name = name;
811    let p_business_name = business_name;
812    let p_business_address1 = business_address1;
813    let p_business_address2 = business_address2;
814    let p_business_address3 = business_address3;
815    let p_business_country = business_country;
816    let p_business_tax_number = business_tax_number;
817    let p_billing_email = billing_email;
818    let p_plan = plan;
819    let p_plan_type = plan_type;
820    let p_seats = seats;
821    let p_max_collections = max_collections;
822    let p_use_policies = use_policies;
823    let p_use_sso = use_sso;
824    let p_use_key_connector = use_key_connector;
825    let p_use_scim = use_scim;
826    let p_use_groups = use_groups;
827    let p_use_directory = use_directory;
828    let p_use_events = use_events;
829    let p_use_totp = use_totp;
830    let p_use2fa = use2fa;
831    let p_use_api = use_api;
832    let p_use_reset_password = use_reset_password;
833    let p_use_secrets_manager = use_secrets_manager;
834    let p_self_host = self_host;
835    let p_users_get_premium = users_get_premium;
836    let p_use_custom_permissions = use_custom_permissions;
837    let p_storage = storage;
838    let p_max_storage_gb = max_storage_gb;
839    let p_gateway = gateway;
840    let p_gateway_customer_id = gateway_customer_id;
841    let p_gateway_subscription_id = gateway_subscription_id;
842    let p_reference_data = reference_data;
843    let p_enabled = enabled;
844    let p_license_key = license_key;
845    let p_public_key = public_key;
846    let p_private_key = private_key;
847    let p_two_factor_providers = two_factor_providers;
848    let p_expiration_date = expiration_date;
849    let p_creation_date = creation_date;
850    let p_revision_date = revision_date;
851    let p_max_autoscale_seats = max_autoscale_seats;
852    let p_owners_notified_of_autoscaling = owners_notified_of_autoscaling;
853    let p_status = status;
854    let p_use_password_manager = use_password_manager;
855    let p_sm_seats = sm_seats;
856    let p_sm_service_accounts = sm_service_accounts;
857    let p_max_autoscale_sm_seats = max_autoscale_sm_seats;
858    let p_max_autoscale_sm_service_accounts = max_autoscale_sm_service_accounts;
859    let p_limit_collection_creation = limit_collection_creation;
860    let p_limit_collection_deletion = limit_collection_deletion;
861    let p_allow_admin_access_to_all_collection_items = allow_admin_access_to_all_collection_items;
862    let p_limit_item_deletion = limit_item_deletion;
863    let p_use_risk_insights = use_risk_insights;
864    let p_use_organization_domains = use_organization_domains;
865    let p_use_admin_sponsored_families = use_admin_sponsored_families;
866    let p_bit_pay_credit_request = bit_pay_credit_request;
867
868    let uri_str = format!(
869        "{}/organizations/{organizationId}/billing/vnext/credit/bitpay",
870        configuration.base_path,
871        organizationId = crate::apis::urlencode(p_organization_id)
872    );
873    let mut req_builder = configuration
874        .client
875        .request(reqwest::Method::POST, &uri_str);
876
877    if let Some(ref param_value) = p_id {
878        req_builder = req_builder.query(&[("id", &param_value.to_string())]);
879    }
880    if let Some(ref param_value) = p_identifier {
881        req_builder = req_builder.query(&[("identifier", &param_value.to_string())]);
882    }
883    if let Some(ref param_value) = p_name {
884        req_builder = req_builder.query(&[("name", &param_value.to_string())]);
885    }
886    if let Some(ref param_value) = p_business_name {
887        req_builder = req_builder.query(&[("businessName", &param_value.to_string())]);
888    }
889    if let Some(ref param_value) = p_business_address1 {
890        req_builder = req_builder.query(&[("businessAddress1", &param_value.to_string())]);
891    }
892    if let Some(ref param_value) = p_business_address2 {
893        req_builder = req_builder.query(&[("businessAddress2", &param_value.to_string())]);
894    }
895    if let Some(ref param_value) = p_business_address3 {
896        req_builder = req_builder.query(&[("businessAddress3", &param_value.to_string())]);
897    }
898    if let Some(ref param_value) = p_business_country {
899        req_builder = req_builder.query(&[("businessCountry", &param_value.to_string())]);
900    }
901    if let Some(ref param_value) = p_business_tax_number {
902        req_builder = req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
903    }
904    if let Some(ref param_value) = p_billing_email {
905        req_builder = req_builder.query(&[("billingEmail", &param_value.to_string())]);
906    }
907    if let Some(ref param_value) = p_plan {
908        req_builder = req_builder.query(&[("plan", &param_value.to_string())]);
909    }
910    if let Some(ref param_value) = p_plan_type {
911        req_builder = req_builder.query(&[("planType", &param_value.to_string())]);
912    }
913    if let Some(ref param_value) = p_seats {
914        req_builder = req_builder.query(&[("seats", &param_value.to_string())]);
915    }
916    if let Some(ref param_value) = p_max_collections {
917        req_builder = req_builder.query(&[("maxCollections", &param_value.to_string())]);
918    }
919    if let Some(ref param_value) = p_use_policies {
920        req_builder = req_builder.query(&[("usePolicies", &param_value.to_string())]);
921    }
922    if let Some(ref param_value) = p_use_sso {
923        req_builder = req_builder.query(&[("useSso", &param_value.to_string())]);
924    }
925    if let Some(ref param_value) = p_use_key_connector {
926        req_builder = req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
927    }
928    if let Some(ref param_value) = p_use_scim {
929        req_builder = req_builder.query(&[("useScim", &param_value.to_string())]);
930    }
931    if let Some(ref param_value) = p_use_groups {
932        req_builder = req_builder.query(&[("useGroups", &param_value.to_string())]);
933    }
934    if let Some(ref param_value) = p_use_directory {
935        req_builder = req_builder.query(&[("useDirectory", &param_value.to_string())]);
936    }
937    if let Some(ref param_value) = p_use_events {
938        req_builder = req_builder.query(&[("useEvents", &param_value.to_string())]);
939    }
940    if let Some(ref param_value) = p_use_totp {
941        req_builder = req_builder.query(&[("useTotp", &param_value.to_string())]);
942    }
943    if let Some(ref param_value) = p_use2fa {
944        req_builder = req_builder.query(&[("use2fa", &param_value.to_string())]);
945    }
946    if let Some(ref param_value) = p_use_api {
947        req_builder = req_builder.query(&[("useApi", &param_value.to_string())]);
948    }
949    if let Some(ref param_value) = p_use_reset_password {
950        req_builder = req_builder.query(&[("useResetPassword", &param_value.to_string())]);
951    }
952    if let Some(ref param_value) = p_use_secrets_manager {
953        req_builder = req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
954    }
955    if let Some(ref param_value) = p_self_host {
956        req_builder = req_builder.query(&[("selfHost", &param_value.to_string())]);
957    }
958    if let Some(ref param_value) = p_users_get_premium {
959        req_builder = req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
960    }
961    if let Some(ref param_value) = p_use_custom_permissions {
962        req_builder = req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
963    }
964    if let Some(ref param_value) = p_storage {
965        req_builder = req_builder.query(&[("storage", &param_value.to_string())]);
966    }
967    if let Some(ref param_value) = p_max_storage_gb {
968        req_builder = req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
969    }
970    if let Some(ref param_value) = p_gateway {
971        req_builder = req_builder.query(&[("gateway", &param_value.to_string())]);
972    }
973    if let Some(ref param_value) = p_gateway_customer_id {
974        req_builder = req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
975    }
976    if let Some(ref param_value) = p_gateway_subscription_id {
977        req_builder = req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
978    }
979    if let Some(ref param_value) = p_reference_data {
980        req_builder = req_builder.query(&[("referenceData", &param_value.to_string())]);
981    }
982    if let Some(ref param_value) = p_enabled {
983        req_builder = req_builder.query(&[("enabled", &param_value.to_string())]);
984    }
985    if let Some(ref param_value) = p_license_key {
986        req_builder = req_builder.query(&[("licenseKey", &param_value.to_string())]);
987    }
988    if let Some(ref param_value) = p_public_key {
989        req_builder = req_builder.query(&[("publicKey", &param_value.to_string())]);
990    }
991    if let Some(ref param_value) = p_private_key {
992        req_builder = req_builder.query(&[("privateKey", &param_value.to_string())]);
993    }
994    if let Some(ref param_value) = p_two_factor_providers {
995        req_builder = req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
996    }
997    if let Some(ref param_value) = p_expiration_date {
998        req_builder = req_builder.query(&[("expirationDate", &param_value.to_string())]);
999    }
1000    if let Some(ref param_value) = p_creation_date {
1001        req_builder = req_builder.query(&[("creationDate", &param_value.to_string())]);
1002    }
1003    if let Some(ref param_value) = p_revision_date {
1004        req_builder = req_builder.query(&[("revisionDate", &param_value.to_string())]);
1005    }
1006    if let Some(ref param_value) = p_max_autoscale_seats {
1007        req_builder = req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
1008    }
1009    if let Some(ref param_value) = p_owners_notified_of_autoscaling {
1010        req_builder =
1011            req_builder.query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
1012    }
1013    if let Some(ref param_value) = p_status {
1014        req_builder = req_builder.query(&[("status", &param_value.to_string())]);
1015    }
1016    if let Some(ref param_value) = p_use_password_manager {
1017        req_builder = req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
1018    }
1019    if let Some(ref param_value) = p_sm_seats {
1020        req_builder = req_builder.query(&[("smSeats", &param_value.to_string())]);
1021    }
1022    if let Some(ref param_value) = p_sm_service_accounts {
1023        req_builder = req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
1024    }
1025    if let Some(ref param_value) = p_max_autoscale_sm_seats {
1026        req_builder = req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
1027    }
1028    if let Some(ref param_value) = p_max_autoscale_sm_service_accounts {
1029        req_builder =
1030            req_builder.query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
1031    }
1032    if let Some(ref param_value) = p_limit_collection_creation {
1033        req_builder = req_builder.query(&[("limitCollectionCreation", &param_value.to_string())]);
1034    }
1035    if let Some(ref param_value) = p_limit_collection_deletion {
1036        req_builder = req_builder.query(&[("limitCollectionDeletion", &param_value.to_string())]);
1037    }
1038    if let Some(ref param_value) = p_allow_admin_access_to_all_collection_items {
1039        req_builder = req_builder.query(&[(
1040            "allowAdminAccessToAllCollectionItems",
1041            &param_value.to_string(),
1042        )]);
1043    }
1044    if let Some(ref param_value) = p_limit_item_deletion {
1045        req_builder = req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
1046    }
1047    if let Some(ref param_value) = p_use_risk_insights {
1048        req_builder = req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
1049    }
1050    if let Some(ref param_value) = p_use_organization_domains {
1051        req_builder = req_builder.query(&[("useOrganizationDomains", &param_value.to_string())]);
1052    }
1053    if let Some(ref param_value) = p_use_admin_sponsored_families {
1054        req_builder = req_builder.query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
1055    }
1056    if let Some(ref user_agent) = configuration.user_agent {
1057        req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1058    }
1059    if let Some(ref token) = configuration.oauth_access_token {
1060        req_builder = req_builder.bearer_auth(token.to_owned());
1061    };
1062    req_builder = req_builder.json(&p_bit_pay_credit_request);
1063
1064    let req = req_builder.build()?;
1065    let resp = configuration.client.execute(req).await?;
1066
1067    let status = resp.status();
1068
1069    if !status.is_client_error() && !status.is_server_error() {
1070        Ok(())
1071    } else {
1072        let content = resp.text().await?;
1073        let entity: Option<OrganizationsOrganizationIdBillingVnextCreditBitpayPostError> =
1074            serde_json::from_str(&content).ok();
1075        Err(Error::ResponseError(ResponseContent {
1076            status,
1077            content,
1078            entity,
1079        }))
1080    }
1081}
1082
1083pub async fn organizations_organization_id_billing_vnext_credit_get(
1084    configuration: &configuration::Configuration,
1085    organization_id: &str,
1086    id: Option<uuid::Uuid>,
1087    identifier: Option<&str>,
1088    name: Option<&str>,
1089    business_name: Option<&str>,
1090    business_address1: Option<&str>,
1091    business_address2: Option<&str>,
1092    business_address3: Option<&str>,
1093    business_country: Option<&str>,
1094    business_tax_number: Option<&str>,
1095    billing_email: Option<&str>,
1096    plan: Option<&str>,
1097    plan_type: Option<models::PlanType>,
1098    seats: Option<i32>,
1099    max_collections: Option<i32>,
1100    use_policies: Option<bool>,
1101    use_sso: Option<bool>,
1102    use_key_connector: Option<bool>,
1103    use_scim: Option<bool>,
1104    use_groups: Option<bool>,
1105    use_directory: Option<bool>,
1106    use_events: Option<bool>,
1107    use_totp: Option<bool>,
1108    use2fa: Option<bool>,
1109    use_api: Option<bool>,
1110    use_reset_password: Option<bool>,
1111    use_secrets_manager: Option<bool>,
1112    self_host: Option<bool>,
1113    users_get_premium: Option<bool>,
1114    use_custom_permissions: Option<bool>,
1115    storage: Option<i64>,
1116    max_storage_gb: Option<i32>,
1117    gateway: Option<models::GatewayType>,
1118    gateway_customer_id: Option<&str>,
1119    gateway_subscription_id: Option<&str>,
1120    reference_data: Option<&str>,
1121    enabled: Option<bool>,
1122    license_key: Option<&str>,
1123    public_key: Option<&str>,
1124    private_key: Option<&str>,
1125    two_factor_providers: Option<&str>,
1126    expiration_date: Option<String>,
1127    creation_date: Option<String>,
1128    revision_date: Option<String>,
1129    max_autoscale_seats: Option<i32>,
1130    owners_notified_of_autoscaling: Option<String>,
1131    status: Option<models::OrganizationStatusType>,
1132    use_password_manager: Option<bool>,
1133    sm_seats: Option<i32>,
1134    sm_service_accounts: Option<i32>,
1135    max_autoscale_sm_seats: Option<i32>,
1136    max_autoscale_sm_service_accounts: Option<i32>,
1137    limit_collection_creation: Option<bool>,
1138    limit_collection_deletion: Option<bool>,
1139    allow_admin_access_to_all_collection_items: Option<bool>,
1140    limit_item_deletion: Option<bool>,
1141    use_risk_insights: Option<bool>,
1142    use_organization_domains: Option<bool>,
1143    use_admin_sponsored_families: Option<bool>,
1144) -> Result<(), Error<OrganizationsOrganizationIdBillingVnextCreditGetError>> {
1145    // add a prefix to parameters to efficiently prevent name collisions
1146    let p_organization_id = organization_id;
1147    let p_id = id;
1148    let p_identifier = identifier;
1149    let p_name = name;
1150    let p_business_name = business_name;
1151    let p_business_address1 = business_address1;
1152    let p_business_address2 = business_address2;
1153    let p_business_address3 = business_address3;
1154    let p_business_country = business_country;
1155    let p_business_tax_number = business_tax_number;
1156    let p_billing_email = billing_email;
1157    let p_plan = plan;
1158    let p_plan_type = plan_type;
1159    let p_seats = seats;
1160    let p_max_collections = max_collections;
1161    let p_use_policies = use_policies;
1162    let p_use_sso = use_sso;
1163    let p_use_key_connector = use_key_connector;
1164    let p_use_scim = use_scim;
1165    let p_use_groups = use_groups;
1166    let p_use_directory = use_directory;
1167    let p_use_events = use_events;
1168    let p_use_totp = use_totp;
1169    let p_use2fa = use2fa;
1170    let p_use_api = use_api;
1171    let p_use_reset_password = use_reset_password;
1172    let p_use_secrets_manager = use_secrets_manager;
1173    let p_self_host = self_host;
1174    let p_users_get_premium = users_get_premium;
1175    let p_use_custom_permissions = use_custom_permissions;
1176    let p_storage = storage;
1177    let p_max_storage_gb = max_storage_gb;
1178    let p_gateway = gateway;
1179    let p_gateway_customer_id = gateway_customer_id;
1180    let p_gateway_subscription_id = gateway_subscription_id;
1181    let p_reference_data = reference_data;
1182    let p_enabled = enabled;
1183    let p_license_key = license_key;
1184    let p_public_key = public_key;
1185    let p_private_key = private_key;
1186    let p_two_factor_providers = two_factor_providers;
1187    let p_expiration_date = expiration_date;
1188    let p_creation_date = creation_date;
1189    let p_revision_date = revision_date;
1190    let p_max_autoscale_seats = max_autoscale_seats;
1191    let p_owners_notified_of_autoscaling = owners_notified_of_autoscaling;
1192    let p_status = status;
1193    let p_use_password_manager = use_password_manager;
1194    let p_sm_seats = sm_seats;
1195    let p_sm_service_accounts = sm_service_accounts;
1196    let p_max_autoscale_sm_seats = max_autoscale_sm_seats;
1197    let p_max_autoscale_sm_service_accounts = max_autoscale_sm_service_accounts;
1198    let p_limit_collection_creation = limit_collection_creation;
1199    let p_limit_collection_deletion = limit_collection_deletion;
1200    let p_allow_admin_access_to_all_collection_items = allow_admin_access_to_all_collection_items;
1201    let p_limit_item_deletion = limit_item_deletion;
1202    let p_use_risk_insights = use_risk_insights;
1203    let p_use_organization_domains = use_organization_domains;
1204    let p_use_admin_sponsored_families = use_admin_sponsored_families;
1205
1206    let uri_str = format!(
1207        "{}/organizations/{organizationId}/billing/vnext/credit",
1208        configuration.base_path,
1209        organizationId = crate::apis::urlencode(p_organization_id)
1210    );
1211    let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
1212
1213    if let Some(ref param_value) = p_id {
1214        req_builder = req_builder.query(&[("id", &param_value.to_string())]);
1215    }
1216    if let Some(ref param_value) = p_identifier {
1217        req_builder = req_builder.query(&[("identifier", &param_value.to_string())]);
1218    }
1219    if let Some(ref param_value) = p_name {
1220        req_builder = req_builder.query(&[("name", &param_value.to_string())]);
1221    }
1222    if let Some(ref param_value) = p_business_name {
1223        req_builder = req_builder.query(&[("businessName", &param_value.to_string())]);
1224    }
1225    if let Some(ref param_value) = p_business_address1 {
1226        req_builder = req_builder.query(&[("businessAddress1", &param_value.to_string())]);
1227    }
1228    if let Some(ref param_value) = p_business_address2 {
1229        req_builder = req_builder.query(&[("businessAddress2", &param_value.to_string())]);
1230    }
1231    if let Some(ref param_value) = p_business_address3 {
1232        req_builder = req_builder.query(&[("businessAddress3", &param_value.to_string())]);
1233    }
1234    if let Some(ref param_value) = p_business_country {
1235        req_builder = req_builder.query(&[("businessCountry", &param_value.to_string())]);
1236    }
1237    if let Some(ref param_value) = p_business_tax_number {
1238        req_builder = req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
1239    }
1240    if let Some(ref param_value) = p_billing_email {
1241        req_builder = req_builder.query(&[("billingEmail", &param_value.to_string())]);
1242    }
1243    if let Some(ref param_value) = p_plan {
1244        req_builder = req_builder.query(&[("plan", &param_value.to_string())]);
1245    }
1246    if let Some(ref param_value) = p_plan_type {
1247        req_builder = req_builder.query(&[("planType", &param_value.to_string())]);
1248    }
1249    if let Some(ref param_value) = p_seats {
1250        req_builder = req_builder.query(&[("seats", &param_value.to_string())]);
1251    }
1252    if let Some(ref param_value) = p_max_collections {
1253        req_builder = req_builder.query(&[("maxCollections", &param_value.to_string())]);
1254    }
1255    if let Some(ref param_value) = p_use_policies {
1256        req_builder = req_builder.query(&[("usePolicies", &param_value.to_string())]);
1257    }
1258    if let Some(ref param_value) = p_use_sso {
1259        req_builder = req_builder.query(&[("useSso", &param_value.to_string())]);
1260    }
1261    if let Some(ref param_value) = p_use_key_connector {
1262        req_builder = req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
1263    }
1264    if let Some(ref param_value) = p_use_scim {
1265        req_builder = req_builder.query(&[("useScim", &param_value.to_string())]);
1266    }
1267    if let Some(ref param_value) = p_use_groups {
1268        req_builder = req_builder.query(&[("useGroups", &param_value.to_string())]);
1269    }
1270    if let Some(ref param_value) = p_use_directory {
1271        req_builder = req_builder.query(&[("useDirectory", &param_value.to_string())]);
1272    }
1273    if let Some(ref param_value) = p_use_events {
1274        req_builder = req_builder.query(&[("useEvents", &param_value.to_string())]);
1275    }
1276    if let Some(ref param_value) = p_use_totp {
1277        req_builder = req_builder.query(&[("useTotp", &param_value.to_string())]);
1278    }
1279    if let Some(ref param_value) = p_use2fa {
1280        req_builder = req_builder.query(&[("use2fa", &param_value.to_string())]);
1281    }
1282    if let Some(ref param_value) = p_use_api {
1283        req_builder = req_builder.query(&[("useApi", &param_value.to_string())]);
1284    }
1285    if let Some(ref param_value) = p_use_reset_password {
1286        req_builder = req_builder.query(&[("useResetPassword", &param_value.to_string())]);
1287    }
1288    if let Some(ref param_value) = p_use_secrets_manager {
1289        req_builder = req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
1290    }
1291    if let Some(ref param_value) = p_self_host {
1292        req_builder = req_builder.query(&[("selfHost", &param_value.to_string())]);
1293    }
1294    if let Some(ref param_value) = p_users_get_premium {
1295        req_builder = req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
1296    }
1297    if let Some(ref param_value) = p_use_custom_permissions {
1298        req_builder = req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
1299    }
1300    if let Some(ref param_value) = p_storage {
1301        req_builder = req_builder.query(&[("storage", &param_value.to_string())]);
1302    }
1303    if let Some(ref param_value) = p_max_storage_gb {
1304        req_builder = req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1305    }
1306    if let Some(ref param_value) = p_gateway {
1307        req_builder = req_builder.query(&[("gateway", &param_value.to_string())]);
1308    }
1309    if let Some(ref param_value) = p_gateway_customer_id {
1310        req_builder = req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1311    }
1312    if let Some(ref param_value) = p_gateway_subscription_id {
1313        req_builder = req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1314    }
1315    if let Some(ref param_value) = p_reference_data {
1316        req_builder = req_builder.query(&[("referenceData", &param_value.to_string())]);
1317    }
1318    if let Some(ref param_value) = p_enabled {
1319        req_builder = req_builder.query(&[("enabled", &param_value.to_string())]);
1320    }
1321    if let Some(ref param_value) = p_license_key {
1322        req_builder = req_builder.query(&[("licenseKey", &param_value.to_string())]);
1323    }
1324    if let Some(ref param_value) = p_public_key {
1325        req_builder = req_builder.query(&[("publicKey", &param_value.to_string())]);
1326    }
1327    if let Some(ref param_value) = p_private_key {
1328        req_builder = req_builder.query(&[("privateKey", &param_value.to_string())]);
1329    }
1330    if let Some(ref param_value) = p_two_factor_providers {
1331        req_builder = req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
1332    }
1333    if let Some(ref param_value) = p_expiration_date {
1334        req_builder = req_builder.query(&[("expirationDate", &param_value.to_string())]);
1335    }
1336    if let Some(ref param_value) = p_creation_date {
1337        req_builder = req_builder.query(&[("creationDate", &param_value.to_string())]);
1338    }
1339    if let Some(ref param_value) = p_revision_date {
1340        req_builder = req_builder.query(&[("revisionDate", &param_value.to_string())]);
1341    }
1342    if let Some(ref param_value) = p_max_autoscale_seats {
1343        req_builder = req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
1344    }
1345    if let Some(ref param_value) = p_owners_notified_of_autoscaling {
1346        req_builder =
1347            req_builder.query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
1348    }
1349    if let Some(ref param_value) = p_status {
1350        req_builder = req_builder.query(&[("status", &param_value.to_string())]);
1351    }
1352    if let Some(ref param_value) = p_use_password_manager {
1353        req_builder = req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
1354    }
1355    if let Some(ref param_value) = p_sm_seats {
1356        req_builder = req_builder.query(&[("smSeats", &param_value.to_string())]);
1357    }
1358    if let Some(ref param_value) = p_sm_service_accounts {
1359        req_builder = req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
1360    }
1361    if let Some(ref param_value) = p_max_autoscale_sm_seats {
1362        req_builder = req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
1363    }
1364    if let Some(ref param_value) = p_max_autoscale_sm_service_accounts {
1365        req_builder =
1366            req_builder.query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
1367    }
1368    if let Some(ref param_value) = p_limit_collection_creation {
1369        req_builder = req_builder.query(&[("limitCollectionCreation", &param_value.to_string())]);
1370    }
1371    if let Some(ref param_value) = p_limit_collection_deletion {
1372        req_builder = req_builder.query(&[("limitCollectionDeletion", &param_value.to_string())]);
1373    }
1374    if let Some(ref param_value) = p_allow_admin_access_to_all_collection_items {
1375        req_builder = req_builder.query(&[(
1376            "allowAdminAccessToAllCollectionItems",
1377            &param_value.to_string(),
1378        )]);
1379    }
1380    if let Some(ref param_value) = p_limit_item_deletion {
1381        req_builder = req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
1382    }
1383    if let Some(ref param_value) = p_use_risk_insights {
1384        req_builder = req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
1385    }
1386    if let Some(ref param_value) = p_use_organization_domains {
1387        req_builder = req_builder.query(&[("useOrganizationDomains", &param_value.to_string())]);
1388    }
1389    if let Some(ref param_value) = p_use_admin_sponsored_families {
1390        req_builder = req_builder.query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
1391    }
1392    if let Some(ref user_agent) = configuration.user_agent {
1393        req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1394    }
1395    if let Some(ref token) = configuration.oauth_access_token {
1396        req_builder = req_builder.bearer_auth(token.to_owned());
1397    };
1398
1399    let req = req_builder.build()?;
1400    let resp = configuration.client.execute(req).await?;
1401
1402    let status = resp.status();
1403
1404    if !status.is_client_error() && !status.is_server_error() {
1405        Ok(())
1406    } else {
1407        let content = resp.text().await?;
1408        let entity: Option<OrganizationsOrganizationIdBillingVnextCreditGetError> =
1409            serde_json::from_str(&content).ok();
1410        Err(Error::ResponseError(ResponseContent {
1411            status,
1412            content,
1413            entity,
1414        }))
1415    }
1416}
1417
1418pub async fn organizations_organization_id_billing_vnext_payment_method_get(
1419    configuration: &configuration::Configuration,
1420    organization_id: &str,
1421    id: Option<uuid::Uuid>,
1422    identifier: Option<&str>,
1423    name: Option<&str>,
1424    business_name: Option<&str>,
1425    business_address1: Option<&str>,
1426    business_address2: Option<&str>,
1427    business_address3: Option<&str>,
1428    business_country: Option<&str>,
1429    business_tax_number: Option<&str>,
1430    billing_email: Option<&str>,
1431    plan: Option<&str>,
1432    plan_type: Option<models::PlanType>,
1433    seats: Option<i32>,
1434    max_collections: Option<i32>,
1435    use_policies: Option<bool>,
1436    use_sso: Option<bool>,
1437    use_key_connector: Option<bool>,
1438    use_scim: Option<bool>,
1439    use_groups: Option<bool>,
1440    use_directory: Option<bool>,
1441    use_events: Option<bool>,
1442    use_totp: Option<bool>,
1443    use2fa: Option<bool>,
1444    use_api: Option<bool>,
1445    use_reset_password: Option<bool>,
1446    use_secrets_manager: Option<bool>,
1447    self_host: Option<bool>,
1448    users_get_premium: Option<bool>,
1449    use_custom_permissions: Option<bool>,
1450    storage: Option<i64>,
1451    max_storage_gb: Option<i32>,
1452    gateway: Option<models::GatewayType>,
1453    gateway_customer_id: Option<&str>,
1454    gateway_subscription_id: Option<&str>,
1455    reference_data: Option<&str>,
1456    enabled: Option<bool>,
1457    license_key: Option<&str>,
1458    public_key: Option<&str>,
1459    private_key: Option<&str>,
1460    two_factor_providers: Option<&str>,
1461    expiration_date: Option<String>,
1462    creation_date: Option<String>,
1463    revision_date: Option<String>,
1464    max_autoscale_seats: Option<i32>,
1465    owners_notified_of_autoscaling: Option<String>,
1466    status: Option<models::OrganizationStatusType>,
1467    use_password_manager: Option<bool>,
1468    sm_seats: Option<i32>,
1469    sm_service_accounts: Option<i32>,
1470    max_autoscale_sm_seats: Option<i32>,
1471    max_autoscale_sm_service_accounts: Option<i32>,
1472    limit_collection_creation: Option<bool>,
1473    limit_collection_deletion: Option<bool>,
1474    allow_admin_access_to_all_collection_items: Option<bool>,
1475    limit_item_deletion: Option<bool>,
1476    use_risk_insights: Option<bool>,
1477    use_organization_domains: Option<bool>,
1478    use_admin_sponsored_families: Option<bool>,
1479) -> Result<(), Error<OrganizationsOrganizationIdBillingVnextPaymentMethodGetError>> {
1480    // add a prefix to parameters to efficiently prevent name collisions
1481    let p_organization_id = organization_id;
1482    let p_id = id;
1483    let p_identifier = identifier;
1484    let p_name = name;
1485    let p_business_name = business_name;
1486    let p_business_address1 = business_address1;
1487    let p_business_address2 = business_address2;
1488    let p_business_address3 = business_address3;
1489    let p_business_country = business_country;
1490    let p_business_tax_number = business_tax_number;
1491    let p_billing_email = billing_email;
1492    let p_plan = plan;
1493    let p_plan_type = plan_type;
1494    let p_seats = seats;
1495    let p_max_collections = max_collections;
1496    let p_use_policies = use_policies;
1497    let p_use_sso = use_sso;
1498    let p_use_key_connector = use_key_connector;
1499    let p_use_scim = use_scim;
1500    let p_use_groups = use_groups;
1501    let p_use_directory = use_directory;
1502    let p_use_events = use_events;
1503    let p_use_totp = use_totp;
1504    let p_use2fa = use2fa;
1505    let p_use_api = use_api;
1506    let p_use_reset_password = use_reset_password;
1507    let p_use_secrets_manager = use_secrets_manager;
1508    let p_self_host = self_host;
1509    let p_users_get_premium = users_get_premium;
1510    let p_use_custom_permissions = use_custom_permissions;
1511    let p_storage = storage;
1512    let p_max_storage_gb = max_storage_gb;
1513    let p_gateway = gateway;
1514    let p_gateway_customer_id = gateway_customer_id;
1515    let p_gateway_subscription_id = gateway_subscription_id;
1516    let p_reference_data = reference_data;
1517    let p_enabled = enabled;
1518    let p_license_key = license_key;
1519    let p_public_key = public_key;
1520    let p_private_key = private_key;
1521    let p_two_factor_providers = two_factor_providers;
1522    let p_expiration_date = expiration_date;
1523    let p_creation_date = creation_date;
1524    let p_revision_date = revision_date;
1525    let p_max_autoscale_seats = max_autoscale_seats;
1526    let p_owners_notified_of_autoscaling = owners_notified_of_autoscaling;
1527    let p_status = status;
1528    let p_use_password_manager = use_password_manager;
1529    let p_sm_seats = sm_seats;
1530    let p_sm_service_accounts = sm_service_accounts;
1531    let p_max_autoscale_sm_seats = max_autoscale_sm_seats;
1532    let p_max_autoscale_sm_service_accounts = max_autoscale_sm_service_accounts;
1533    let p_limit_collection_creation = limit_collection_creation;
1534    let p_limit_collection_deletion = limit_collection_deletion;
1535    let p_allow_admin_access_to_all_collection_items = allow_admin_access_to_all_collection_items;
1536    let p_limit_item_deletion = limit_item_deletion;
1537    let p_use_risk_insights = use_risk_insights;
1538    let p_use_organization_domains = use_organization_domains;
1539    let p_use_admin_sponsored_families = use_admin_sponsored_families;
1540
1541    let uri_str = format!(
1542        "{}/organizations/{organizationId}/billing/vnext/payment-method",
1543        configuration.base_path,
1544        organizationId = crate::apis::urlencode(p_organization_id)
1545    );
1546    let mut req_builder = configuration.client.request(reqwest::Method::GET, &uri_str);
1547
1548    if let Some(ref param_value) = p_id {
1549        req_builder = req_builder.query(&[("id", &param_value.to_string())]);
1550    }
1551    if let Some(ref param_value) = p_identifier {
1552        req_builder = req_builder.query(&[("identifier", &param_value.to_string())]);
1553    }
1554    if let Some(ref param_value) = p_name {
1555        req_builder = req_builder.query(&[("name", &param_value.to_string())]);
1556    }
1557    if let Some(ref param_value) = p_business_name {
1558        req_builder = req_builder.query(&[("businessName", &param_value.to_string())]);
1559    }
1560    if let Some(ref param_value) = p_business_address1 {
1561        req_builder = req_builder.query(&[("businessAddress1", &param_value.to_string())]);
1562    }
1563    if let Some(ref param_value) = p_business_address2 {
1564        req_builder = req_builder.query(&[("businessAddress2", &param_value.to_string())]);
1565    }
1566    if let Some(ref param_value) = p_business_address3 {
1567        req_builder = req_builder.query(&[("businessAddress3", &param_value.to_string())]);
1568    }
1569    if let Some(ref param_value) = p_business_country {
1570        req_builder = req_builder.query(&[("businessCountry", &param_value.to_string())]);
1571    }
1572    if let Some(ref param_value) = p_business_tax_number {
1573        req_builder = req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
1574    }
1575    if let Some(ref param_value) = p_billing_email {
1576        req_builder = req_builder.query(&[("billingEmail", &param_value.to_string())]);
1577    }
1578    if let Some(ref param_value) = p_plan {
1579        req_builder = req_builder.query(&[("plan", &param_value.to_string())]);
1580    }
1581    if let Some(ref param_value) = p_plan_type {
1582        req_builder = req_builder.query(&[("planType", &param_value.to_string())]);
1583    }
1584    if let Some(ref param_value) = p_seats {
1585        req_builder = req_builder.query(&[("seats", &param_value.to_string())]);
1586    }
1587    if let Some(ref param_value) = p_max_collections {
1588        req_builder = req_builder.query(&[("maxCollections", &param_value.to_string())]);
1589    }
1590    if let Some(ref param_value) = p_use_policies {
1591        req_builder = req_builder.query(&[("usePolicies", &param_value.to_string())]);
1592    }
1593    if let Some(ref param_value) = p_use_sso {
1594        req_builder = req_builder.query(&[("useSso", &param_value.to_string())]);
1595    }
1596    if let Some(ref param_value) = p_use_key_connector {
1597        req_builder = req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
1598    }
1599    if let Some(ref param_value) = p_use_scim {
1600        req_builder = req_builder.query(&[("useScim", &param_value.to_string())]);
1601    }
1602    if let Some(ref param_value) = p_use_groups {
1603        req_builder = req_builder.query(&[("useGroups", &param_value.to_string())]);
1604    }
1605    if let Some(ref param_value) = p_use_directory {
1606        req_builder = req_builder.query(&[("useDirectory", &param_value.to_string())]);
1607    }
1608    if let Some(ref param_value) = p_use_events {
1609        req_builder = req_builder.query(&[("useEvents", &param_value.to_string())]);
1610    }
1611    if let Some(ref param_value) = p_use_totp {
1612        req_builder = req_builder.query(&[("useTotp", &param_value.to_string())]);
1613    }
1614    if let Some(ref param_value) = p_use2fa {
1615        req_builder = req_builder.query(&[("use2fa", &param_value.to_string())]);
1616    }
1617    if let Some(ref param_value) = p_use_api {
1618        req_builder = req_builder.query(&[("useApi", &param_value.to_string())]);
1619    }
1620    if let Some(ref param_value) = p_use_reset_password {
1621        req_builder = req_builder.query(&[("useResetPassword", &param_value.to_string())]);
1622    }
1623    if let Some(ref param_value) = p_use_secrets_manager {
1624        req_builder = req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
1625    }
1626    if let Some(ref param_value) = p_self_host {
1627        req_builder = req_builder.query(&[("selfHost", &param_value.to_string())]);
1628    }
1629    if let Some(ref param_value) = p_users_get_premium {
1630        req_builder = req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
1631    }
1632    if let Some(ref param_value) = p_use_custom_permissions {
1633        req_builder = req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
1634    }
1635    if let Some(ref param_value) = p_storage {
1636        req_builder = req_builder.query(&[("storage", &param_value.to_string())]);
1637    }
1638    if let Some(ref param_value) = p_max_storage_gb {
1639        req_builder = req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1640    }
1641    if let Some(ref param_value) = p_gateway {
1642        req_builder = req_builder.query(&[("gateway", &param_value.to_string())]);
1643    }
1644    if let Some(ref param_value) = p_gateway_customer_id {
1645        req_builder = req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1646    }
1647    if let Some(ref param_value) = p_gateway_subscription_id {
1648        req_builder = req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1649    }
1650    if let Some(ref param_value) = p_reference_data {
1651        req_builder = req_builder.query(&[("referenceData", &param_value.to_string())]);
1652    }
1653    if let Some(ref param_value) = p_enabled {
1654        req_builder = req_builder.query(&[("enabled", &param_value.to_string())]);
1655    }
1656    if let Some(ref param_value) = p_license_key {
1657        req_builder = req_builder.query(&[("licenseKey", &param_value.to_string())]);
1658    }
1659    if let Some(ref param_value) = p_public_key {
1660        req_builder = req_builder.query(&[("publicKey", &param_value.to_string())]);
1661    }
1662    if let Some(ref param_value) = p_private_key {
1663        req_builder = req_builder.query(&[("privateKey", &param_value.to_string())]);
1664    }
1665    if let Some(ref param_value) = p_two_factor_providers {
1666        req_builder = req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
1667    }
1668    if let Some(ref param_value) = p_expiration_date {
1669        req_builder = req_builder.query(&[("expirationDate", &param_value.to_string())]);
1670    }
1671    if let Some(ref param_value) = p_creation_date {
1672        req_builder = req_builder.query(&[("creationDate", &param_value.to_string())]);
1673    }
1674    if let Some(ref param_value) = p_revision_date {
1675        req_builder = req_builder.query(&[("revisionDate", &param_value.to_string())]);
1676    }
1677    if let Some(ref param_value) = p_max_autoscale_seats {
1678        req_builder = req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
1679    }
1680    if let Some(ref param_value) = p_owners_notified_of_autoscaling {
1681        req_builder =
1682            req_builder.query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
1683    }
1684    if let Some(ref param_value) = p_status {
1685        req_builder = req_builder.query(&[("status", &param_value.to_string())]);
1686    }
1687    if let Some(ref param_value) = p_use_password_manager {
1688        req_builder = req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
1689    }
1690    if let Some(ref param_value) = p_sm_seats {
1691        req_builder = req_builder.query(&[("smSeats", &param_value.to_string())]);
1692    }
1693    if let Some(ref param_value) = p_sm_service_accounts {
1694        req_builder = req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
1695    }
1696    if let Some(ref param_value) = p_max_autoscale_sm_seats {
1697        req_builder = req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
1698    }
1699    if let Some(ref param_value) = p_max_autoscale_sm_service_accounts {
1700        req_builder =
1701            req_builder.query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
1702    }
1703    if let Some(ref param_value) = p_limit_collection_creation {
1704        req_builder = req_builder.query(&[("limitCollectionCreation", &param_value.to_string())]);
1705    }
1706    if let Some(ref param_value) = p_limit_collection_deletion {
1707        req_builder = req_builder.query(&[("limitCollectionDeletion", &param_value.to_string())]);
1708    }
1709    if let Some(ref param_value) = p_allow_admin_access_to_all_collection_items {
1710        req_builder = req_builder.query(&[(
1711            "allowAdminAccessToAllCollectionItems",
1712            &param_value.to_string(),
1713        )]);
1714    }
1715    if let Some(ref param_value) = p_limit_item_deletion {
1716        req_builder = req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
1717    }
1718    if let Some(ref param_value) = p_use_risk_insights {
1719        req_builder = req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
1720    }
1721    if let Some(ref param_value) = p_use_organization_domains {
1722        req_builder = req_builder.query(&[("useOrganizationDomains", &param_value.to_string())]);
1723    }
1724    if let Some(ref param_value) = p_use_admin_sponsored_families {
1725        req_builder = req_builder.query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
1726    }
1727    if let Some(ref user_agent) = configuration.user_agent {
1728        req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1729    }
1730    if let Some(ref token) = configuration.oauth_access_token {
1731        req_builder = req_builder.bearer_auth(token.to_owned());
1732    };
1733
1734    let req = req_builder.build()?;
1735    let resp = configuration.client.execute(req).await?;
1736
1737    let status = resp.status();
1738
1739    if !status.is_client_error() && !status.is_server_error() {
1740        Ok(())
1741    } else {
1742        let content = resp.text().await?;
1743        let entity: Option<OrganizationsOrganizationIdBillingVnextPaymentMethodGetError> =
1744            serde_json::from_str(&content).ok();
1745        Err(Error::ResponseError(ResponseContent {
1746            status,
1747            content,
1748            entity,
1749        }))
1750    }
1751}
1752
1753pub async fn organizations_organization_id_billing_vnext_payment_method_put(
1754    configuration: &configuration::Configuration,
1755    organization_id: &str,
1756    id: Option<uuid::Uuid>,
1757    identifier: Option<&str>,
1758    name: Option<&str>,
1759    business_name: Option<&str>,
1760    business_address1: Option<&str>,
1761    business_address2: Option<&str>,
1762    business_address3: Option<&str>,
1763    business_country: Option<&str>,
1764    business_tax_number: Option<&str>,
1765    billing_email: Option<&str>,
1766    plan: Option<&str>,
1767    plan_type: Option<models::PlanType>,
1768    seats: Option<i32>,
1769    max_collections: Option<i32>,
1770    use_policies: Option<bool>,
1771    use_sso: Option<bool>,
1772    use_key_connector: Option<bool>,
1773    use_scim: Option<bool>,
1774    use_groups: Option<bool>,
1775    use_directory: Option<bool>,
1776    use_events: Option<bool>,
1777    use_totp: Option<bool>,
1778    use2fa: Option<bool>,
1779    use_api: Option<bool>,
1780    use_reset_password: Option<bool>,
1781    use_secrets_manager: Option<bool>,
1782    self_host: Option<bool>,
1783    users_get_premium: Option<bool>,
1784    use_custom_permissions: Option<bool>,
1785    storage: Option<i64>,
1786    max_storage_gb: Option<i32>,
1787    gateway: Option<models::GatewayType>,
1788    gateway_customer_id: Option<&str>,
1789    gateway_subscription_id: Option<&str>,
1790    reference_data: Option<&str>,
1791    enabled: Option<bool>,
1792    license_key: Option<&str>,
1793    public_key: Option<&str>,
1794    private_key: Option<&str>,
1795    two_factor_providers: Option<&str>,
1796    expiration_date: Option<String>,
1797    creation_date: Option<String>,
1798    revision_date: Option<String>,
1799    max_autoscale_seats: Option<i32>,
1800    owners_notified_of_autoscaling: Option<String>,
1801    status: Option<models::OrganizationStatusType>,
1802    use_password_manager: Option<bool>,
1803    sm_seats: Option<i32>,
1804    sm_service_accounts: Option<i32>,
1805    max_autoscale_sm_seats: Option<i32>,
1806    max_autoscale_sm_service_accounts: Option<i32>,
1807    limit_collection_creation: Option<bool>,
1808    limit_collection_deletion: Option<bool>,
1809    allow_admin_access_to_all_collection_items: Option<bool>,
1810    limit_item_deletion: Option<bool>,
1811    use_risk_insights: Option<bool>,
1812    use_organization_domains: Option<bool>,
1813    use_admin_sponsored_families: Option<bool>,
1814    tokenized_payment_method_request: Option<models::TokenizedPaymentMethodRequest>,
1815) -> Result<(), Error<OrganizationsOrganizationIdBillingVnextPaymentMethodPutError>> {
1816    // add a prefix to parameters to efficiently prevent name collisions
1817    let p_organization_id = organization_id;
1818    let p_id = id;
1819    let p_identifier = identifier;
1820    let p_name = name;
1821    let p_business_name = business_name;
1822    let p_business_address1 = business_address1;
1823    let p_business_address2 = business_address2;
1824    let p_business_address3 = business_address3;
1825    let p_business_country = business_country;
1826    let p_business_tax_number = business_tax_number;
1827    let p_billing_email = billing_email;
1828    let p_plan = plan;
1829    let p_plan_type = plan_type;
1830    let p_seats = seats;
1831    let p_max_collections = max_collections;
1832    let p_use_policies = use_policies;
1833    let p_use_sso = use_sso;
1834    let p_use_key_connector = use_key_connector;
1835    let p_use_scim = use_scim;
1836    let p_use_groups = use_groups;
1837    let p_use_directory = use_directory;
1838    let p_use_events = use_events;
1839    let p_use_totp = use_totp;
1840    let p_use2fa = use2fa;
1841    let p_use_api = use_api;
1842    let p_use_reset_password = use_reset_password;
1843    let p_use_secrets_manager = use_secrets_manager;
1844    let p_self_host = self_host;
1845    let p_users_get_premium = users_get_premium;
1846    let p_use_custom_permissions = use_custom_permissions;
1847    let p_storage = storage;
1848    let p_max_storage_gb = max_storage_gb;
1849    let p_gateway = gateway;
1850    let p_gateway_customer_id = gateway_customer_id;
1851    let p_gateway_subscription_id = gateway_subscription_id;
1852    let p_reference_data = reference_data;
1853    let p_enabled = enabled;
1854    let p_license_key = license_key;
1855    let p_public_key = public_key;
1856    let p_private_key = private_key;
1857    let p_two_factor_providers = two_factor_providers;
1858    let p_expiration_date = expiration_date;
1859    let p_creation_date = creation_date;
1860    let p_revision_date = revision_date;
1861    let p_max_autoscale_seats = max_autoscale_seats;
1862    let p_owners_notified_of_autoscaling = owners_notified_of_autoscaling;
1863    let p_status = status;
1864    let p_use_password_manager = use_password_manager;
1865    let p_sm_seats = sm_seats;
1866    let p_sm_service_accounts = sm_service_accounts;
1867    let p_max_autoscale_sm_seats = max_autoscale_sm_seats;
1868    let p_max_autoscale_sm_service_accounts = max_autoscale_sm_service_accounts;
1869    let p_limit_collection_creation = limit_collection_creation;
1870    let p_limit_collection_deletion = limit_collection_deletion;
1871    let p_allow_admin_access_to_all_collection_items = allow_admin_access_to_all_collection_items;
1872    let p_limit_item_deletion = limit_item_deletion;
1873    let p_use_risk_insights = use_risk_insights;
1874    let p_use_organization_domains = use_organization_domains;
1875    let p_use_admin_sponsored_families = use_admin_sponsored_families;
1876    let p_tokenized_payment_method_request = tokenized_payment_method_request;
1877
1878    let uri_str = format!(
1879        "{}/organizations/{organizationId}/billing/vnext/payment-method",
1880        configuration.base_path,
1881        organizationId = crate::apis::urlencode(p_organization_id)
1882    );
1883    let mut req_builder = configuration.client.request(reqwest::Method::PUT, &uri_str);
1884
1885    if let Some(ref param_value) = p_id {
1886        req_builder = req_builder.query(&[("id", &param_value.to_string())]);
1887    }
1888    if let Some(ref param_value) = p_identifier {
1889        req_builder = req_builder.query(&[("identifier", &param_value.to_string())]);
1890    }
1891    if let Some(ref param_value) = p_name {
1892        req_builder = req_builder.query(&[("name", &param_value.to_string())]);
1893    }
1894    if let Some(ref param_value) = p_business_name {
1895        req_builder = req_builder.query(&[("businessName", &param_value.to_string())]);
1896    }
1897    if let Some(ref param_value) = p_business_address1 {
1898        req_builder = req_builder.query(&[("businessAddress1", &param_value.to_string())]);
1899    }
1900    if let Some(ref param_value) = p_business_address2 {
1901        req_builder = req_builder.query(&[("businessAddress2", &param_value.to_string())]);
1902    }
1903    if let Some(ref param_value) = p_business_address3 {
1904        req_builder = req_builder.query(&[("businessAddress3", &param_value.to_string())]);
1905    }
1906    if let Some(ref param_value) = p_business_country {
1907        req_builder = req_builder.query(&[("businessCountry", &param_value.to_string())]);
1908    }
1909    if let Some(ref param_value) = p_business_tax_number {
1910        req_builder = req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
1911    }
1912    if let Some(ref param_value) = p_billing_email {
1913        req_builder = req_builder.query(&[("billingEmail", &param_value.to_string())]);
1914    }
1915    if let Some(ref param_value) = p_plan {
1916        req_builder = req_builder.query(&[("plan", &param_value.to_string())]);
1917    }
1918    if let Some(ref param_value) = p_plan_type {
1919        req_builder = req_builder.query(&[("planType", &param_value.to_string())]);
1920    }
1921    if let Some(ref param_value) = p_seats {
1922        req_builder = req_builder.query(&[("seats", &param_value.to_string())]);
1923    }
1924    if let Some(ref param_value) = p_max_collections {
1925        req_builder = req_builder.query(&[("maxCollections", &param_value.to_string())]);
1926    }
1927    if let Some(ref param_value) = p_use_policies {
1928        req_builder = req_builder.query(&[("usePolicies", &param_value.to_string())]);
1929    }
1930    if let Some(ref param_value) = p_use_sso {
1931        req_builder = req_builder.query(&[("useSso", &param_value.to_string())]);
1932    }
1933    if let Some(ref param_value) = p_use_key_connector {
1934        req_builder = req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
1935    }
1936    if let Some(ref param_value) = p_use_scim {
1937        req_builder = req_builder.query(&[("useScim", &param_value.to_string())]);
1938    }
1939    if let Some(ref param_value) = p_use_groups {
1940        req_builder = req_builder.query(&[("useGroups", &param_value.to_string())]);
1941    }
1942    if let Some(ref param_value) = p_use_directory {
1943        req_builder = req_builder.query(&[("useDirectory", &param_value.to_string())]);
1944    }
1945    if let Some(ref param_value) = p_use_events {
1946        req_builder = req_builder.query(&[("useEvents", &param_value.to_string())]);
1947    }
1948    if let Some(ref param_value) = p_use_totp {
1949        req_builder = req_builder.query(&[("useTotp", &param_value.to_string())]);
1950    }
1951    if let Some(ref param_value) = p_use2fa {
1952        req_builder = req_builder.query(&[("use2fa", &param_value.to_string())]);
1953    }
1954    if let Some(ref param_value) = p_use_api {
1955        req_builder = req_builder.query(&[("useApi", &param_value.to_string())]);
1956    }
1957    if let Some(ref param_value) = p_use_reset_password {
1958        req_builder = req_builder.query(&[("useResetPassword", &param_value.to_string())]);
1959    }
1960    if let Some(ref param_value) = p_use_secrets_manager {
1961        req_builder = req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
1962    }
1963    if let Some(ref param_value) = p_self_host {
1964        req_builder = req_builder.query(&[("selfHost", &param_value.to_string())]);
1965    }
1966    if let Some(ref param_value) = p_users_get_premium {
1967        req_builder = req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
1968    }
1969    if let Some(ref param_value) = p_use_custom_permissions {
1970        req_builder = req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
1971    }
1972    if let Some(ref param_value) = p_storage {
1973        req_builder = req_builder.query(&[("storage", &param_value.to_string())]);
1974    }
1975    if let Some(ref param_value) = p_max_storage_gb {
1976        req_builder = req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
1977    }
1978    if let Some(ref param_value) = p_gateway {
1979        req_builder = req_builder.query(&[("gateway", &param_value.to_string())]);
1980    }
1981    if let Some(ref param_value) = p_gateway_customer_id {
1982        req_builder = req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
1983    }
1984    if let Some(ref param_value) = p_gateway_subscription_id {
1985        req_builder = req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
1986    }
1987    if let Some(ref param_value) = p_reference_data {
1988        req_builder = req_builder.query(&[("referenceData", &param_value.to_string())]);
1989    }
1990    if let Some(ref param_value) = p_enabled {
1991        req_builder = req_builder.query(&[("enabled", &param_value.to_string())]);
1992    }
1993    if let Some(ref param_value) = p_license_key {
1994        req_builder = req_builder.query(&[("licenseKey", &param_value.to_string())]);
1995    }
1996    if let Some(ref param_value) = p_public_key {
1997        req_builder = req_builder.query(&[("publicKey", &param_value.to_string())]);
1998    }
1999    if let Some(ref param_value) = p_private_key {
2000        req_builder = req_builder.query(&[("privateKey", &param_value.to_string())]);
2001    }
2002    if let Some(ref param_value) = p_two_factor_providers {
2003        req_builder = req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
2004    }
2005    if let Some(ref param_value) = p_expiration_date {
2006        req_builder = req_builder.query(&[("expirationDate", &param_value.to_string())]);
2007    }
2008    if let Some(ref param_value) = p_creation_date {
2009        req_builder = req_builder.query(&[("creationDate", &param_value.to_string())]);
2010    }
2011    if let Some(ref param_value) = p_revision_date {
2012        req_builder = req_builder.query(&[("revisionDate", &param_value.to_string())]);
2013    }
2014    if let Some(ref param_value) = p_max_autoscale_seats {
2015        req_builder = req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
2016    }
2017    if let Some(ref param_value) = p_owners_notified_of_autoscaling {
2018        req_builder =
2019            req_builder.query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
2020    }
2021    if let Some(ref param_value) = p_status {
2022        req_builder = req_builder.query(&[("status", &param_value.to_string())]);
2023    }
2024    if let Some(ref param_value) = p_use_password_manager {
2025        req_builder = req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
2026    }
2027    if let Some(ref param_value) = p_sm_seats {
2028        req_builder = req_builder.query(&[("smSeats", &param_value.to_string())]);
2029    }
2030    if let Some(ref param_value) = p_sm_service_accounts {
2031        req_builder = req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
2032    }
2033    if let Some(ref param_value) = p_max_autoscale_sm_seats {
2034        req_builder = req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
2035    }
2036    if let Some(ref param_value) = p_max_autoscale_sm_service_accounts {
2037        req_builder =
2038            req_builder.query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
2039    }
2040    if let Some(ref param_value) = p_limit_collection_creation {
2041        req_builder = req_builder.query(&[("limitCollectionCreation", &param_value.to_string())]);
2042    }
2043    if let Some(ref param_value) = p_limit_collection_deletion {
2044        req_builder = req_builder.query(&[("limitCollectionDeletion", &param_value.to_string())]);
2045    }
2046    if let Some(ref param_value) = p_allow_admin_access_to_all_collection_items {
2047        req_builder = req_builder.query(&[(
2048            "allowAdminAccessToAllCollectionItems",
2049            &param_value.to_string(),
2050        )]);
2051    }
2052    if let Some(ref param_value) = p_limit_item_deletion {
2053        req_builder = req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
2054    }
2055    if let Some(ref param_value) = p_use_risk_insights {
2056        req_builder = req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
2057    }
2058    if let Some(ref param_value) = p_use_organization_domains {
2059        req_builder = req_builder.query(&[("useOrganizationDomains", &param_value.to_string())]);
2060    }
2061    if let Some(ref param_value) = p_use_admin_sponsored_families {
2062        req_builder = req_builder.query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
2063    }
2064    if let Some(ref user_agent) = configuration.user_agent {
2065        req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
2066    }
2067    if let Some(ref token) = configuration.oauth_access_token {
2068        req_builder = req_builder.bearer_auth(token.to_owned());
2069    };
2070    req_builder = req_builder.json(&p_tokenized_payment_method_request);
2071
2072    let req = req_builder.build()?;
2073    let resp = configuration.client.execute(req).await?;
2074
2075    let status = resp.status();
2076
2077    if !status.is_client_error() && !status.is_server_error() {
2078        Ok(())
2079    } else {
2080        let content = resp.text().await?;
2081        let entity: Option<OrganizationsOrganizationIdBillingVnextPaymentMethodPutError> =
2082            serde_json::from_str(&content).ok();
2083        Err(Error::ResponseError(ResponseContent {
2084            status,
2085            content,
2086            entity,
2087        }))
2088    }
2089}
2090
2091pub async fn organizations_organization_id_billing_vnext_payment_method_verify_bank_account_post(
2092    configuration: &configuration::Configuration,
2093    organization_id: &str,
2094    id: Option<uuid::Uuid>,
2095    identifier: Option<&str>,
2096    name: Option<&str>,
2097    business_name: Option<&str>,
2098    business_address1: Option<&str>,
2099    business_address2: Option<&str>,
2100    business_address3: Option<&str>,
2101    business_country: Option<&str>,
2102    business_tax_number: Option<&str>,
2103    billing_email: Option<&str>,
2104    plan: Option<&str>,
2105    plan_type: Option<models::PlanType>,
2106    seats: Option<i32>,
2107    max_collections: Option<i32>,
2108    use_policies: Option<bool>,
2109    use_sso: Option<bool>,
2110    use_key_connector: Option<bool>,
2111    use_scim: Option<bool>,
2112    use_groups: Option<bool>,
2113    use_directory: Option<bool>,
2114    use_events: Option<bool>,
2115    use_totp: Option<bool>,
2116    use2fa: Option<bool>,
2117    use_api: Option<bool>,
2118    use_reset_password: Option<bool>,
2119    use_secrets_manager: Option<bool>,
2120    self_host: Option<bool>,
2121    users_get_premium: Option<bool>,
2122    use_custom_permissions: Option<bool>,
2123    storage: Option<i64>,
2124    max_storage_gb: Option<i32>,
2125    gateway: Option<models::GatewayType>,
2126    gateway_customer_id: Option<&str>,
2127    gateway_subscription_id: Option<&str>,
2128    reference_data: Option<&str>,
2129    enabled: Option<bool>,
2130    license_key: Option<&str>,
2131    public_key: Option<&str>,
2132    private_key: Option<&str>,
2133    two_factor_providers: Option<&str>,
2134    expiration_date: Option<String>,
2135    creation_date: Option<String>,
2136    revision_date: Option<String>,
2137    max_autoscale_seats: Option<i32>,
2138    owners_notified_of_autoscaling: Option<String>,
2139    status: Option<models::OrganizationStatusType>,
2140    use_password_manager: Option<bool>,
2141    sm_seats: Option<i32>,
2142    sm_service_accounts: Option<i32>,
2143    max_autoscale_sm_seats: Option<i32>,
2144    max_autoscale_sm_service_accounts: Option<i32>,
2145    limit_collection_creation: Option<bool>,
2146    limit_collection_deletion: Option<bool>,
2147    allow_admin_access_to_all_collection_items: Option<bool>,
2148    limit_item_deletion: Option<bool>,
2149    use_risk_insights: Option<bool>,
2150    use_organization_domains: Option<bool>,
2151    use_admin_sponsored_families: Option<bool>,
2152    verify_bank_account_request: Option<models::VerifyBankAccountRequest>,
2153) -> Result<(), Error<OrganizationsOrganizationIdBillingVnextPaymentMethodVerifyBankAccountPostError>>
2154{
2155    // add a prefix to parameters to efficiently prevent name collisions
2156    let p_organization_id = organization_id;
2157    let p_id = id;
2158    let p_identifier = identifier;
2159    let p_name = name;
2160    let p_business_name = business_name;
2161    let p_business_address1 = business_address1;
2162    let p_business_address2 = business_address2;
2163    let p_business_address3 = business_address3;
2164    let p_business_country = business_country;
2165    let p_business_tax_number = business_tax_number;
2166    let p_billing_email = billing_email;
2167    let p_plan = plan;
2168    let p_plan_type = plan_type;
2169    let p_seats = seats;
2170    let p_max_collections = max_collections;
2171    let p_use_policies = use_policies;
2172    let p_use_sso = use_sso;
2173    let p_use_key_connector = use_key_connector;
2174    let p_use_scim = use_scim;
2175    let p_use_groups = use_groups;
2176    let p_use_directory = use_directory;
2177    let p_use_events = use_events;
2178    let p_use_totp = use_totp;
2179    let p_use2fa = use2fa;
2180    let p_use_api = use_api;
2181    let p_use_reset_password = use_reset_password;
2182    let p_use_secrets_manager = use_secrets_manager;
2183    let p_self_host = self_host;
2184    let p_users_get_premium = users_get_premium;
2185    let p_use_custom_permissions = use_custom_permissions;
2186    let p_storage = storage;
2187    let p_max_storage_gb = max_storage_gb;
2188    let p_gateway = gateway;
2189    let p_gateway_customer_id = gateway_customer_id;
2190    let p_gateway_subscription_id = gateway_subscription_id;
2191    let p_reference_data = reference_data;
2192    let p_enabled = enabled;
2193    let p_license_key = license_key;
2194    let p_public_key = public_key;
2195    let p_private_key = private_key;
2196    let p_two_factor_providers = two_factor_providers;
2197    let p_expiration_date = expiration_date;
2198    let p_creation_date = creation_date;
2199    let p_revision_date = revision_date;
2200    let p_max_autoscale_seats = max_autoscale_seats;
2201    let p_owners_notified_of_autoscaling = owners_notified_of_autoscaling;
2202    let p_status = status;
2203    let p_use_password_manager = use_password_manager;
2204    let p_sm_seats = sm_seats;
2205    let p_sm_service_accounts = sm_service_accounts;
2206    let p_max_autoscale_sm_seats = max_autoscale_sm_seats;
2207    let p_max_autoscale_sm_service_accounts = max_autoscale_sm_service_accounts;
2208    let p_limit_collection_creation = limit_collection_creation;
2209    let p_limit_collection_deletion = limit_collection_deletion;
2210    let p_allow_admin_access_to_all_collection_items = allow_admin_access_to_all_collection_items;
2211    let p_limit_item_deletion = limit_item_deletion;
2212    let p_use_risk_insights = use_risk_insights;
2213    let p_use_organization_domains = use_organization_domains;
2214    let p_use_admin_sponsored_families = use_admin_sponsored_families;
2215    let p_verify_bank_account_request = verify_bank_account_request;
2216
2217    let uri_str = format!(
2218        "{}/organizations/{organizationId}/billing/vnext/payment-method/verify-bank-account",
2219        configuration.base_path,
2220        organizationId = crate::apis::urlencode(p_organization_id)
2221    );
2222    let mut req_builder = configuration
2223        .client
2224        .request(reqwest::Method::POST, &uri_str);
2225
2226    if let Some(ref param_value) = p_id {
2227        req_builder = req_builder.query(&[("id", &param_value.to_string())]);
2228    }
2229    if let Some(ref param_value) = p_identifier {
2230        req_builder = req_builder.query(&[("identifier", &param_value.to_string())]);
2231    }
2232    if let Some(ref param_value) = p_name {
2233        req_builder = req_builder.query(&[("name", &param_value.to_string())]);
2234    }
2235    if let Some(ref param_value) = p_business_name {
2236        req_builder = req_builder.query(&[("businessName", &param_value.to_string())]);
2237    }
2238    if let Some(ref param_value) = p_business_address1 {
2239        req_builder = req_builder.query(&[("businessAddress1", &param_value.to_string())]);
2240    }
2241    if let Some(ref param_value) = p_business_address2 {
2242        req_builder = req_builder.query(&[("businessAddress2", &param_value.to_string())]);
2243    }
2244    if let Some(ref param_value) = p_business_address3 {
2245        req_builder = req_builder.query(&[("businessAddress3", &param_value.to_string())]);
2246    }
2247    if let Some(ref param_value) = p_business_country {
2248        req_builder = req_builder.query(&[("businessCountry", &param_value.to_string())]);
2249    }
2250    if let Some(ref param_value) = p_business_tax_number {
2251        req_builder = req_builder.query(&[("businessTaxNumber", &param_value.to_string())]);
2252    }
2253    if let Some(ref param_value) = p_billing_email {
2254        req_builder = req_builder.query(&[("billingEmail", &param_value.to_string())]);
2255    }
2256    if let Some(ref param_value) = p_plan {
2257        req_builder = req_builder.query(&[("plan", &param_value.to_string())]);
2258    }
2259    if let Some(ref param_value) = p_plan_type {
2260        req_builder = req_builder.query(&[("planType", &param_value.to_string())]);
2261    }
2262    if let Some(ref param_value) = p_seats {
2263        req_builder = req_builder.query(&[("seats", &param_value.to_string())]);
2264    }
2265    if let Some(ref param_value) = p_max_collections {
2266        req_builder = req_builder.query(&[("maxCollections", &param_value.to_string())]);
2267    }
2268    if let Some(ref param_value) = p_use_policies {
2269        req_builder = req_builder.query(&[("usePolicies", &param_value.to_string())]);
2270    }
2271    if let Some(ref param_value) = p_use_sso {
2272        req_builder = req_builder.query(&[("useSso", &param_value.to_string())]);
2273    }
2274    if let Some(ref param_value) = p_use_key_connector {
2275        req_builder = req_builder.query(&[("useKeyConnector", &param_value.to_string())]);
2276    }
2277    if let Some(ref param_value) = p_use_scim {
2278        req_builder = req_builder.query(&[("useScim", &param_value.to_string())]);
2279    }
2280    if let Some(ref param_value) = p_use_groups {
2281        req_builder = req_builder.query(&[("useGroups", &param_value.to_string())]);
2282    }
2283    if let Some(ref param_value) = p_use_directory {
2284        req_builder = req_builder.query(&[("useDirectory", &param_value.to_string())]);
2285    }
2286    if let Some(ref param_value) = p_use_events {
2287        req_builder = req_builder.query(&[("useEvents", &param_value.to_string())]);
2288    }
2289    if let Some(ref param_value) = p_use_totp {
2290        req_builder = req_builder.query(&[("useTotp", &param_value.to_string())]);
2291    }
2292    if let Some(ref param_value) = p_use2fa {
2293        req_builder = req_builder.query(&[("use2fa", &param_value.to_string())]);
2294    }
2295    if let Some(ref param_value) = p_use_api {
2296        req_builder = req_builder.query(&[("useApi", &param_value.to_string())]);
2297    }
2298    if let Some(ref param_value) = p_use_reset_password {
2299        req_builder = req_builder.query(&[("useResetPassword", &param_value.to_string())]);
2300    }
2301    if let Some(ref param_value) = p_use_secrets_manager {
2302        req_builder = req_builder.query(&[("useSecretsManager", &param_value.to_string())]);
2303    }
2304    if let Some(ref param_value) = p_self_host {
2305        req_builder = req_builder.query(&[("selfHost", &param_value.to_string())]);
2306    }
2307    if let Some(ref param_value) = p_users_get_premium {
2308        req_builder = req_builder.query(&[("usersGetPremium", &param_value.to_string())]);
2309    }
2310    if let Some(ref param_value) = p_use_custom_permissions {
2311        req_builder = req_builder.query(&[("useCustomPermissions", &param_value.to_string())]);
2312    }
2313    if let Some(ref param_value) = p_storage {
2314        req_builder = req_builder.query(&[("storage", &param_value.to_string())]);
2315    }
2316    if let Some(ref param_value) = p_max_storage_gb {
2317        req_builder = req_builder.query(&[("maxStorageGb", &param_value.to_string())]);
2318    }
2319    if let Some(ref param_value) = p_gateway {
2320        req_builder = req_builder.query(&[("gateway", &param_value.to_string())]);
2321    }
2322    if let Some(ref param_value) = p_gateway_customer_id {
2323        req_builder = req_builder.query(&[("gatewayCustomerId", &param_value.to_string())]);
2324    }
2325    if let Some(ref param_value) = p_gateway_subscription_id {
2326        req_builder = req_builder.query(&[("gatewaySubscriptionId", &param_value.to_string())]);
2327    }
2328    if let Some(ref param_value) = p_reference_data {
2329        req_builder = req_builder.query(&[("referenceData", &param_value.to_string())]);
2330    }
2331    if let Some(ref param_value) = p_enabled {
2332        req_builder = req_builder.query(&[("enabled", &param_value.to_string())]);
2333    }
2334    if let Some(ref param_value) = p_license_key {
2335        req_builder = req_builder.query(&[("licenseKey", &param_value.to_string())]);
2336    }
2337    if let Some(ref param_value) = p_public_key {
2338        req_builder = req_builder.query(&[("publicKey", &param_value.to_string())]);
2339    }
2340    if let Some(ref param_value) = p_private_key {
2341        req_builder = req_builder.query(&[("privateKey", &param_value.to_string())]);
2342    }
2343    if let Some(ref param_value) = p_two_factor_providers {
2344        req_builder = req_builder.query(&[("twoFactorProviders", &param_value.to_string())]);
2345    }
2346    if let Some(ref param_value) = p_expiration_date {
2347        req_builder = req_builder.query(&[("expirationDate", &param_value.to_string())]);
2348    }
2349    if let Some(ref param_value) = p_creation_date {
2350        req_builder = req_builder.query(&[("creationDate", &param_value.to_string())]);
2351    }
2352    if let Some(ref param_value) = p_revision_date {
2353        req_builder = req_builder.query(&[("revisionDate", &param_value.to_string())]);
2354    }
2355    if let Some(ref param_value) = p_max_autoscale_seats {
2356        req_builder = req_builder.query(&[("maxAutoscaleSeats", &param_value.to_string())]);
2357    }
2358    if let Some(ref param_value) = p_owners_notified_of_autoscaling {
2359        req_builder =
2360            req_builder.query(&[("ownersNotifiedOfAutoscaling", &param_value.to_string())]);
2361    }
2362    if let Some(ref param_value) = p_status {
2363        req_builder = req_builder.query(&[("status", &param_value.to_string())]);
2364    }
2365    if let Some(ref param_value) = p_use_password_manager {
2366        req_builder = req_builder.query(&[("usePasswordManager", &param_value.to_string())]);
2367    }
2368    if let Some(ref param_value) = p_sm_seats {
2369        req_builder = req_builder.query(&[("smSeats", &param_value.to_string())]);
2370    }
2371    if let Some(ref param_value) = p_sm_service_accounts {
2372        req_builder = req_builder.query(&[("smServiceAccounts", &param_value.to_string())]);
2373    }
2374    if let Some(ref param_value) = p_max_autoscale_sm_seats {
2375        req_builder = req_builder.query(&[("maxAutoscaleSmSeats", &param_value.to_string())]);
2376    }
2377    if let Some(ref param_value) = p_max_autoscale_sm_service_accounts {
2378        req_builder =
2379            req_builder.query(&[("maxAutoscaleSmServiceAccounts", &param_value.to_string())]);
2380    }
2381    if let Some(ref param_value) = p_limit_collection_creation {
2382        req_builder = req_builder.query(&[("limitCollectionCreation", &param_value.to_string())]);
2383    }
2384    if let Some(ref param_value) = p_limit_collection_deletion {
2385        req_builder = req_builder.query(&[("limitCollectionDeletion", &param_value.to_string())]);
2386    }
2387    if let Some(ref param_value) = p_allow_admin_access_to_all_collection_items {
2388        req_builder = req_builder.query(&[(
2389            "allowAdminAccessToAllCollectionItems",
2390            &param_value.to_string(),
2391        )]);
2392    }
2393    if let Some(ref param_value) = p_limit_item_deletion {
2394        req_builder = req_builder.query(&[("limitItemDeletion", &param_value.to_string())]);
2395    }
2396    if let Some(ref param_value) = p_use_risk_insights {
2397        req_builder = req_builder.query(&[("useRiskInsights", &param_value.to_string())]);
2398    }
2399    if let Some(ref param_value) = p_use_organization_domains {
2400        req_builder = req_builder.query(&[("useOrganizationDomains", &param_value.to_string())]);
2401    }
2402    if let Some(ref param_value) = p_use_admin_sponsored_families {
2403        req_builder = req_builder.query(&[("useAdminSponsoredFamilies", &param_value.to_string())]);
2404    }
2405    if let Some(ref user_agent) = configuration.user_agent {
2406        req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
2407    }
2408    if let Some(ref token) = configuration.oauth_access_token {
2409        req_builder = req_builder.bearer_auth(token.to_owned());
2410    };
2411    req_builder = req_builder.json(&p_verify_bank_account_request);
2412
2413    let req = req_builder.build()?;
2414    let resp = configuration.client.execute(req).await?;
2415
2416    let status = resp.status();
2417
2418    if !status.is_client_error() && !status.is_server_error() {
2419        Ok(())
2420    } else {
2421        let content = resp.text().await?;
2422        let entity: Option<
2423            OrganizationsOrganizationIdBillingVnextPaymentMethodVerifyBankAccountPostError,
2424        > = serde_json::from_str(&content).ok();
2425        Err(Error::ResponseError(ResponseContent {
2426            status,
2427            content,
2428            entity,
2429        }))
2430    }
2431}