{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "schema:OfferShippingDetails",
  "title": "OfferShippingDetails",
  "description": "OfferShippingDetails represents information about shipping destinations.\n\nMultiple of these entities can be used to represent different shipping rates for different destinations:\n\nOne entity for Alaska/Hawaii. A different one for continental US. A different one for all France.\n\nMultiple of these entities can be used to represent different shipping costs and delivery times.\n\nTwo entities that are identical but differ in rate and time:\n\nE.g. Cheaper and slower: $5 in 5-7 days\nor Fast and expensive: $15 in 1-2 days.",
  "type": "object",
  "allOf": [
    {
      "description": "Structured values are used when the value of a property has a more complex structure than simply being a textual value or a reference to another thing.",
      "$ref": "schema:StructuredValue"
    }
  ],
  "properties": {
    "deliveryTime": {
      "description": "The total delay between the receipt of the order and the goods reaching the final customer.",
      "$ref": "schema:ShippingDeliveryTime"
    },
    "depth": {
      "description": "The depth of the item.",
      "anyOf": [
        { "type": "string", "$comment": "https://schema.org/Distance" },
        { "$ref": "schema:QuantitativeValue" }
      ]
    },
    "doesNotShip": {
      "description": "Indicates when shipping to a particular [[shippingDestination]] is not available.",
      "type": "boolean"
    },
    "hasShippingService": {
      "description": "Specification of a shipping service offered by the organization.",
      "oneOf": [
        { "$ref": "schema:ShippingService" },
        { "type": "array", "items": { "$ref": "schema:ShippingService" } }
      ]
    },
    "height": {
      "description": "The height of the item.",
      "anyOf": [
        { "type": "string", "$comment": "https://schema.org/Distance" },
        { "$ref": "schema:QuantitativeValue" }
      ]
    },
    "shippingDestination": {
      "description": "indicates (possibly multiple) shipping destinations. These can be defined in several ways, e.g. postalCode ranges.",
      "oneOf": [
        { "$ref": "schema:DefinedRegion" },
        { "type": "array", "items": { "$ref": "schema:DefinedRegion" } }
      ]
    },
    "shippingOrigin": {
      "description": "Indicates the origin of a shipment, i.e. where it should be coming from.",
      "oneOf": [
        { "$ref": "schema:DefinedRegion" },
        { "type": "array", "items": { "$ref": "schema:DefinedRegion" } }
      ]
    },
    "shippingRate": {
      "description": "The shipping rate is the cost of shipping to the specified destination. Typically, the maxValue and currency values (of the [[MonetaryAmount]]) are most appropriate.",
      "anyOf": [
        { "$ref": "schema:MonetaryAmount" },
        { "$ref": "schema:ShippingRateSettings" }
      ]
    },
    "validForMemberTier": {
      "description": "The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for.",
      "$ref": "schema:MemberProgramTier"
    },
    "weight": {
      "description": "The weight of the product or person.",
      "anyOf": [
        { "type": "string", "$comment": "https://schema.org/Mass" },
        { "$ref": "schema:QuantitativeValue" }
      ]
    },
    "width": {
      "description": "The width of the item.",
      "anyOf": [
        { "type": "string", "$comment": "https://schema.org/Distance" },
        { "$ref": "schema:QuantitativeValue" }
      ]
    }
  }
}
