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};

/// PackageDocumentDetail : The post-purchase details of a package that will be shipped using a shipping service.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PackageDocumentDetail {
    /// A client provided unique identifier for a package being shipped. This value should be saved by the client to pass as a parameter to the getShipmentDocuments operation.
    #[serde(rename = "packageClientReferenceId")]
    pub package_client_reference_id: String,
    /// A list of documents related to a package.
    #[serde(rename = "packageDocuments")]
    pub package_documents: Vec<models::shipping_v2::PackageDocument>,
    /// The carrier generated identifier for a package in a purchased shipment.
    #[serde(rename = "trackingId", skip_serializing_if = "Option::is_none")]
    pub tracking_id: Option<String>,
}

impl PackageDocumentDetail {
    /// The post-purchase details of a package that will be shipped using a shipping service.
    pub fn new(package_client_reference_id: String, package_documents: Vec<models::shipping_v2::PackageDocument>) -> PackageDocumentDetail {
        PackageDocumentDetail {
            package_client_reference_id,
            package_documents,
            tracking_id: None,
        }
    }
}