primer-api 2.0.0

primer client, generated from the OpenAPI spec.
Documentation
#![allow(unused_imports)]
use primer_api::PrimerClient;
use primer_api::model::*;
#[tokio::main]
async fn main() {
    let client = PrimerClient::from_env();
    let payment_method_token = "your payment method token";
    let response = client
        .create_payment_payments_post(payment_method_token)
        .x_idempotency_key("your x idempotency key")
        .order_id("your order id")
        .currency_code("your currency code")
        .amount(::serde_json::json!({}))
        .order(OrderDetailsApiSchema {
            fees: Some(
                vec![
                    OrderFeesApiSchema { type_ : Some("your type".to_owned()), amount :
                    ::serde_json::json!({}), description : Some("your description"
                    .to_owned()) }
                ],
            ),
            country_code: Some(CountryCodeEnum(::serde_json::json!({}))),
            shipping: Some(OrderShippingApiSchema {
                amount: Some(::serde_json::json!({})),
            }),
            line_items: Some(
                vec![
                    OrderLineItemsApiSchema { item_id : Some("your item id".to_owned()),
                    quantity : Some(1), tax_code : Some("your tax code".to_owned()), name
                    : Some("your name".to_owned()), amount : ::serde_json::json!({}),
                    product_data : Some(OrderLineItemsProductDataApiSchema { brand :
                    Some("your brand".to_owned()), sku : Some("your sku".to_owned()),
                    color : Some("your color".to_owned()), global_trade_item_number :
                    Some("your global trade item number".to_owned()), weight_unit :
                    Some("your weight unit".to_owned()), manufacturer_part_number :
                    Some("your manufacturer part number".to_owned()), weight : Some(1.0)
                    }), product_type : Some("your product type".to_owned()),
                    discount_amount : Some(::serde_json::json!({})), tax_amount :
                    Some(1), description : Some("your description".to_owned()) }
                ],
            ),
        })
        .customer_id("your customer id")
        .customer(CustomerDetailsApiSchema {
            email_address: Some("your email address".to_owned()),
            first_name: Some("your first name".to_owned()),
            last_name: Some("your last name".to_owned()),
            billing_address: Some(CoreApiApiCommonsSchemasAddessAddressApiSchema {
                address_line1: Some("your address line 1".to_owned()),
                postal_code: Some("your postal code".to_owned()),
                address_line2: Some("your address line 2".to_owned()),
                last_name: Some("your last name".to_owned()),
                state: Some("your state".to_owned()),
                first_name: Some("your first name".to_owned()),
                city: Some("your city".to_owned()),
                country_code: Some(CountryCodeEnum(::serde_json::json!({}))),
            }),
            mobile_number: Some("your mobile number".to_owned()),
            shipping_address: Some(CoreApiApiCommonsSchemasAddessAddressApiSchema {
                address_line1: Some("your address line 1".to_owned()),
                postal_code: Some("your postal code".to_owned()),
                address_line2: Some("your address line 2".to_owned()),
                last_name: Some("your last name".to_owned()),
                state: Some("your state".to_owned()),
                first_name: Some("your first name".to_owned()),
                city: Some("your city".to_owned()),
                country_code: Some(CountryCodeEnum(::serde_json::json!({}))),
            }),
            tax_id: Some("your tax id".to_owned()),
            national_document_id: Some("your national document id".to_owned()),
        })
        .metadata(::serde_json::json!({}))
        .payment_method(PaymentRequestPaymentMethodOptionsApiSchema {
            descriptor: Some("your descriptor".to_owned()),
            vault_on_success: Some(true),
            payment_type: Some("your payment type".to_owned()),
        })
        .send()
        .await
        .unwrap();
    println!("{:#?}", response);
}