amazon-spapi 2.0.3

A Rust client library for Amazon Selling Partner API (SP-API)
Documentation
/*
 * Amazon Shipping API
 *
 * The Amazon Shipping API is designed to support outbound shipping use cases both for orders originating on Amazon-owned marketplaces as well as external channels/marketplaces. With these APIs, you can request shipping rates, create shipments, cancel shipments, and track shipments.
 *
 * The version of the OpenAPI document: v2
 * Contact: swa-api-core@amazon.com
 * Generated by: https://openapi-generator.tech
 */

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

/// ChannelDetails : Shipment source channel related information.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ChannelDetails {
    #[serde(rename = "channelType")]
    pub channel_type: models::shipping_v2::ChannelType,
    #[serde(rename = "amazonOrderDetails", skip_serializing_if = "Option::is_none")]
    pub amazon_order_details: Option<Box<models::shipping_v2::AmazonOrderDetails>>,
    #[serde(rename = "amazonShipmentDetails", skip_serializing_if = "Option::is_none")]
    pub amazon_shipment_details: Option<Box<models::shipping_v2::AmazonShipmentDetails>>,
}

impl ChannelDetails {
    /// Shipment source channel related information.
    pub fn new(channel_type: models::shipping_v2::ChannelType) -> ChannelDetails {
        ChannelDetails {
            channel_type,
            amazon_order_details: None,
            amazon_shipment_details: None,
        }
    }
}