amazon-spapi 2.0.3

A Rust client library for Amazon Selling Partner API (SP-API)
Documentation
/*
 * Selling Partner API for Merchant Fulfillment
 *
 * With the Selling Partner API for Merchant Fulfillment, you can build applications that sellers can use to purchase shipping for non-Prime and Prime orders using Amazon's Buy Shipping Services.
 *
 * The version of the OpenAPI document: v0
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

/// PredefinedPackageDimensions : An enumeration of predefined parcel tokens. If you specify a `PredefinedPackageDimensions` token, you are not obligated to use a branded package from a carrier. For example, if you specify the `FedEx_Box_10kg` token, you do not have to use that particular package from FedEx. You are only obligated to use a box that matches the dimensions specified by the token. Note: Carriers can have restrictions on the type of package allowed for certain ship methods. Check the carrier website for details. Example: Flat rate pricing is available when materials are sent by USPS in a USPS-produced Flat Rate envelope or box.
/// An enumeration of predefined parcel tokens. If you specify a `PredefinedPackageDimensions` token, you are not obligated to use a branded package from a carrier. For example, if you specify the `FedEx_Box_10kg` token, you do not have to use that particular package from FedEx. You are only obligated to use a box that matches the dimensions specified by the token. Note: Carriers can have restrictions on the type of package allowed for certain ship methods. Check the carrier website for details. Example: Flat rate pricing is available when materials are sent by USPS in a USPS-produced Flat Rate envelope or box.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum PredefinedPackageDimensions {
    #[serde(rename = "FedEx_Box_10kg")]
    FedExBox10kg,
    #[serde(rename = "FedEx_Box_25kg")]
    FedExBox25kg,
    #[serde(rename = "FedEx_Box_Extra_Large_1")]
    FedExBoxExtraLarge1,
    #[serde(rename = "FedEx_Box_Extra_Large_2")]
    FedExBoxExtraLarge2,
    #[serde(rename = "FedEx_Box_Large_1")]
    FedExBoxLarge1,
    #[serde(rename = "FedEx_Box_Large_2")]
    FedExBoxLarge2,
    #[serde(rename = "FedEx_Box_Medium_1")]
    FedExBoxMedium1,
    #[serde(rename = "FedEx_Box_Medium_2")]
    FedExBoxMedium2,
    #[serde(rename = "FedEx_Box_Small_1")]
    FedExBoxSmall1,
    #[serde(rename = "FedEx_Box_Small_2")]
    FedExBoxSmall2,
    #[serde(rename = "FedEx_Envelope")]
    FedExEnvelope,
    #[serde(rename = "FedEx_Padded_Pak")]
    FedExPaddedPak,
    #[serde(rename = "FedEx_Pak_1")]
    FedExPak1,
    #[serde(rename = "FedEx_Pak_2")]
    FedExPak2,
    #[serde(rename = "FedEx_Tube")]
    FedExTube,
    #[serde(rename = "FedEx_XL_Pak")]
    FedExXlPak,
    #[serde(rename = "UPS_Box_10kg")]
    UpsBox10kg,
    #[serde(rename = "UPS_Box_25kg")]
    UpsBox25kg,
    #[serde(rename = "UPS_Express_Box")]
    UpsExpressBox,
    #[serde(rename = "UPS_Express_Box_Large")]
    UpsExpressBoxLarge,
    #[serde(rename = "UPS_Express_Box_Medium")]
    UpsExpressBoxMedium,
    #[serde(rename = "UPS_Express_Box_Small")]
    UpsExpressBoxSmall,
    #[serde(rename = "UPS_Express_Envelope")]
    UpsExpressEnvelope,
    #[serde(rename = "UPS_Express_Hard_Pak")]
    UpsExpressHardPak,
    #[serde(rename = "UPS_Express_Legal_Envelope")]
    UpsExpressLegalEnvelope,
    #[serde(rename = "UPS_Express_Pak")]
    UpsExpressPak,
    #[serde(rename = "UPS_Express_Tube")]
    UpsExpressTube,
    #[serde(rename = "UPS_Laboratory_Pak")]
    UpsLaboratoryPak,
    #[serde(rename = "UPS_Pad_Pak")]
    UpsPadPak,
    #[serde(rename = "UPS_Pallet")]
    UpsPallet,
    #[serde(rename = "USPS_Card")]
    UspsCard,
    #[serde(rename = "USPS_Flat")]
    UspsFlat,
    #[serde(rename = "USPS_FlatRateCardboardEnvelope")]
    UspsFlatRateCardboardEnvelope,
    #[serde(rename = "USPS_FlatRateEnvelope")]
    UspsFlatRateEnvelope,
    #[serde(rename = "USPS_FlatRateGiftCardEnvelope")]
    UspsFlatRateGiftCardEnvelope,
    #[serde(rename = "USPS_FlatRateLegalEnvelope")]
    UspsFlatRateLegalEnvelope,
    #[serde(rename = "USPS_FlatRatePaddedEnvelope")]
    UspsFlatRatePaddedEnvelope,
    #[serde(rename = "USPS_FlatRateWindowEnvelope")]
    UspsFlatRateWindowEnvelope,
    #[serde(rename = "USPS_LargeFlatRateBoardGameBox")]
    UspsLargeFlatRateBoardGameBox,
    #[serde(rename = "USPS_LargeFlatRateBox")]
    UspsLargeFlatRateBox,
    #[serde(rename = "USPS_Letter")]
    UspsLetter,
    #[serde(rename = "USPS_MediumFlatRateBox1")]
    UspsMediumFlatRateBox1,
    #[serde(rename = "USPS_MediumFlatRateBox2")]
    UspsMediumFlatRateBox2,
    #[serde(rename = "USPS_RegionalRateBoxA1")]
    UspsRegionalRateBoxA1,
    #[serde(rename = "USPS_RegionalRateBoxA2")]
    UspsRegionalRateBoxA2,
    #[serde(rename = "USPS_RegionalRateBoxB1")]
    UspsRegionalRateBoxB1,
    #[serde(rename = "USPS_RegionalRateBoxB2")]
    UspsRegionalRateBoxB2,
    #[serde(rename = "USPS_RegionalRateBoxC")]
    UspsRegionalRateBoxC,
    #[serde(rename = "USPS_SmallFlatRateBox")]
    UspsSmallFlatRateBox,
    #[serde(rename = "USPS_SmallFlatRateEnvelope")]
    UspsSmallFlatRateEnvelope,

}

impl std::fmt::Display for PredefinedPackageDimensions {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::FedExBox10kg => write!(f, "FedEx_Box_10kg"),
            Self::FedExBox25kg => write!(f, "FedEx_Box_25kg"),
            Self::FedExBoxExtraLarge1 => write!(f, "FedEx_Box_Extra_Large_1"),
            Self::FedExBoxExtraLarge2 => write!(f, "FedEx_Box_Extra_Large_2"),
            Self::FedExBoxLarge1 => write!(f, "FedEx_Box_Large_1"),
            Self::FedExBoxLarge2 => write!(f, "FedEx_Box_Large_2"),
            Self::FedExBoxMedium1 => write!(f, "FedEx_Box_Medium_1"),
            Self::FedExBoxMedium2 => write!(f, "FedEx_Box_Medium_2"),
            Self::FedExBoxSmall1 => write!(f, "FedEx_Box_Small_1"),
            Self::FedExBoxSmall2 => write!(f, "FedEx_Box_Small_2"),
            Self::FedExEnvelope => write!(f, "FedEx_Envelope"),
            Self::FedExPaddedPak => write!(f, "FedEx_Padded_Pak"),
            Self::FedExPak1 => write!(f, "FedEx_Pak_1"),
            Self::FedExPak2 => write!(f, "FedEx_Pak_2"),
            Self::FedExTube => write!(f, "FedEx_Tube"),
            Self::FedExXlPak => write!(f, "FedEx_XL_Pak"),
            Self::UpsBox10kg => write!(f, "UPS_Box_10kg"),
            Self::UpsBox25kg => write!(f, "UPS_Box_25kg"),
            Self::UpsExpressBox => write!(f, "UPS_Express_Box"),
            Self::UpsExpressBoxLarge => write!(f, "UPS_Express_Box_Large"),
            Self::UpsExpressBoxMedium => write!(f, "UPS_Express_Box_Medium"),
            Self::UpsExpressBoxSmall => write!(f, "UPS_Express_Box_Small"),
            Self::UpsExpressEnvelope => write!(f, "UPS_Express_Envelope"),
            Self::UpsExpressHardPak => write!(f, "UPS_Express_Hard_Pak"),
            Self::UpsExpressLegalEnvelope => write!(f, "UPS_Express_Legal_Envelope"),
            Self::UpsExpressPak => write!(f, "UPS_Express_Pak"),
            Self::UpsExpressTube => write!(f, "UPS_Express_Tube"),
            Self::UpsLaboratoryPak => write!(f, "UPS_Laboratory_Pak"),
            Self::UpsPadPak => write!(f, "UPS_Pad_Pak"),
            Self::UpsPallet => write!(f, "UPS_Pallet"),
            Self::UspsCard => write!(f, "USPS_Card"),
            Self::UspsFlat => write!(f, "USPS_Flat"),
            Self::UspsFlatRateCardboardEnvelope => write!(f, "USPS_FlatRateCardboardEnvelope"),
            Self::UspsFlatRateEnvelope => write!(f, "USPS_FlatRateEnvelope"),
            Self::UspsFlatRateGiftCardEnvelope => write!(f, "USPS_FlatRateGiftCardEnvelope"),
            Self::UspsFlatRateLegalEnvelope => write!(f, "USPS_FlatRateLegalEnvelope"),
            Self::UspsFlatRatePaddedEnvelope => write!(f, "USPS_FlatRatePaddedEnvelope"),
            Self::UspsFlatRateWindowEnvelope => write!(f, "USPS_FlatRateWindowEnvelope"),
            Self::UspsLargeFlatRateBoardGameBox => write!(f, "USPS_LargeFlatRateBoardGameBox"),
            Self::UspsLargeFlatRateBox => write!(f, "USPS_LargeFlatRateBox"),
            Self::UspsLetter => write!(f, "USPS_Letter"),
            Self::UspsMediumFlatRateBox1 => write!(f, "USPS_MediumFlatRateBox1"),
            Self::UspsMediumFlatRateBox2 => write!(f, "USPS_MediumFlatRateBox2"),
            Self::UspsRegionalRateBoxA1 => write!(f, "USPS_RegionalRateBoxA1"),
            Self::UspsRegionalRateBoxA2 => write!(f, "USPS_RegionalRateBoxA2"),
            Self::UspsRegionalRateBoxB1 => write!(f, "USPS_RegionalRateBoxB1"),
            Self::UspsRegionalRateBoxB2 => write!(f, "USPS_RegionalRateBoxB2"),
            Self::UspsRegionalRateBoxC => write!(f, "USPS_RegionalRateBoxC"),
            Self::UspsSmallFlatRateBox => write!(f, "USPS_SmallFlatRateBox"),
            Self::UspsSmallFlatRateEnvelope => write!(f, "USPS_SmallFlatRateEnvelope"),
        }
    }
}

impl Default for PredefinedPackageDimensions {
    fn default() -> PredefinedPackageDimensions {
        Self::FedExBox10kg
    }
}