namespace TradeManageNew.APIClients.FedexApi.Models.Ship
{
///
/// These are customs clearance details. Required for International and intra-country Shipments.
///
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.1.0.0 (NJsonSchema v11.0.2.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class CustomsClearanceDetail
{
///
/// These are the regulatory controls applicable to the shipment.<br> Example:USMCA,FOOD_OR_PERISHABLE
///
[Newtonsoft.Json.JsonProperty("regulatoryControls", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, ItemConverterType = typeof(Newtonsoft.Json.Converters.StringEnumConverter))]
public System.Collections.Generic.ICollection RegulatoryControls { get; set; }
///
/// Specify broker information. Use this option only if you are using Broker Select Option for your shipment. A country code must be specified in addition to one of the following address items: postal code, city, or location id.
///
[Newtonsoft.Json.JsonProperty("brokers", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public System.Collections.Generic.ICollection Brokers { get; set; }
[Newtonsoft.Json.JsonProperty("commercialInvoice", Required = Newtonsoft.Json.Required.Always)]
[System.ComponentModel.DataAnnotations.Required]
public CommercialInvoice CommercialInvoice { get; set; } = new CommercialInvoice();
///
/// Specify the risk owner for the Freight shipment.This element is only mandatory or valid for Intra India shipments.<br>Example: OWN_RISK
///
[Newtonsoft.Json.JsonProperty("freightOnValue", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))]
public CustomsClearanceDetailFreightOnValue? FreightOnValue { get; set; }
[Newtonsoft.Json.JsonProperty("dutiesPayment", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public Payment_1 DutiesPayment { get; set; }
///
/// Indicates the details about the dutiable packages. Maximum upto 999 commodities per shipment.
///
[Newtonsoft.Json.JsonProperty("commodities", Required = Newtonsoft.Json.Required.Always)]
[System.ComponentModel.DataAnnotations.Required]
public System.Collections.Generic.ICollection Commodities { get; set; } = new System.Collections.ObjectModel.Collection();
///
/// Defaults to false. Only used for international Express requests to indicate if just documents are being shipped or not. A valude of DERIVED will cause the value to be determined by PMIS based on the specified commodities information<br>Example: false
///
[Newtonsoft.Json.JsonProperty("isDocumentOnly", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public bool? IsDocumentOnly { get; set; }
[Newtonsoft.Json.JsonProperty("recipientCustomsId", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public RecipientCustomsId RecipientCustomsId { get; set; }
[Newtonsoft.Json.JsonProperty("customsOption", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public CustomsOptionDetail CustomsOption { get; set; }
///
/// The descriptive data for the importer of Record for the shipment and their physical address, contact and account number information.
///
[Newtonsoft.Json.JsonProperty("importerOfRecord", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public Party_1 ImporterOfRecord { get; set; }
///
/// This is the locale for generated document.<br>Example: en_US<br><a onclick='loadDocReference("locales")'>click here to see Locales</a><br>Note: If the locale is left blank or an invalid locale is entered, an error message is returned in response.
///
[Newtonsoft.Json.JsonProperty("generatedDocumentLocale", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public string GeneratedDocumentLocale { get; set; }
[Newtonsoft.Json.JsonProperty("exportDetail", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public ExportDetail ExportDetail { get; set; }
///
/// This is the total customs value.
///
[Newtonsoft.Json.JsonProperty("totalCustomsValue", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public Money TotalCustomsValue { get; set; }
///
/// Specify if the transacting parties are related.
///
[Newtonsoft.Json.JsonProperty("partiesToTransactionAreRelated", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public bool? PartiesToTransactionAreRelated { get; set; }
[Newtonsoft.Json.JsonProperty("declarationStatementDetail", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public CustomsDeclarationStatementDetail DeclarationStatementDetail { get; set; }
///
/// Specify insurance charges if applicable. <br><i>Note: FedEx does not provide insurance of any kind.</i>
///
[Newtonsoft.Json.JsonProperty("insuranceCharge", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public Money InsuranceCharge { get; set; }
private System.Collections.Generic.IDictionary _additionalProperties;
[Newtonsoft.Json.JsonExtensionData]
public System.Collections.Generic.IDictionary AdditionalProperties
{
get { return _additionalProperties ?? (_additionalProperties = new System.Collections.Generic.Dictionary()); }
set { _additionalProperties = value; }
}
}
}