amazon_spapi/models/shipping/
purchase_shipment_request.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PurchaseShipmentRequest {
17 #[serde(rename = "clientReferenceId")]
19 pub client_reference_id: String,
20 #[serde(rename = "shipTo")]
21 pub ship_to: Box<models::shipping::Address>,
22 #[serde(rename = "shipFrom")]
23 pub ship_from: Box<models::shipping::Address>,
24 #[serde(rename = "shipDate", skip_serializing_if = "Option::is_none")]
26 pub ship_date: Option<String>,
27 #[serde(rename = "serviceType")]
28 pub service_type: models::shipping::ServiceType,
29 #[serde(rename = "containers")]
31 pub containers: Vec<models::shipping::Container>,
32 #[serde(rename = "labelSpecification")]
33 pub label_specification: Box<models::shipping::LabelSpecification>,
34}
35
36impl PurchaseShipmentRequest {
37 pub fn new(client_reference_id: String, ship_to: models::shipping::Address, ship_from: models::shipping::Address, service_type: models::shipping::ServiceType, containers: Vec<models::shipping::Container>, label_specification: models::shipping::LabelSpecification) -> PurchaseShipmentRequest {
39 PurchaseShipmentRequest {
40 client_reference_id,
41 ship_to: Box::new(ship_to),
42 ship_from: Box::new(ship_from),
43 ship_date: None,
44 service_type,
45 containers,
46 label_specification: Box::new(label_specification),
47 }
48 }
49}
50