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

/// AvailableValueAddedServiceGroup : The value-added services available for purchase with a shipping service offering.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AvailableValueAddedServiceGroup {
    /// The type of the value-added service group.
    #[serde(rename = "groupId")]
    pub group_id: String,
    /// The name of the value-added service group.
    #[serde(rename = "groupDescription")]
    pub group_description: String,
    /// When true, one or more of the value-added services listed must be specified.
    #[serde(rename = "isRequired")]
    pub is_required: bool,
    /// A list of optional value-added services available for purchase with a shipping service offering.
    #[serde(rename = "valueAddedServices", skip_serializing_if = "Option::is_none")]
    pub value_added_services: Option<Vec<models::shipping_v2::ValueAddedService>>,
}

impl AvailableValueAddedServiceGroup {
    /// The value-added services available for purchase with a shipping service offering.
    pub fn new(group_id: String, group_description: String, is_required: bool) -> AvailableValueAddedServiceGroup {
        AvailableValueAddedServiceGroup {
            group_id,
            group_description,
            is_required,
            value_added_services: None,
        }
    }
}