{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-seller-central/main/json-schema/amazon-seller-central-get-rates-request-schema.json", "title": "GetRatesRequest", "description": "The request schema for the getRates operation. When the channelType is Amazon, the shipTo address is not required and will be ignored.", "x-generated": "2026-09-24", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/amazon-seller-central-shipping-api-openapi.yml#/components/schemas/GetRatesRequest", "type": "object", "required": [ "channelDetails", "packages", "shipFrom" ], "properties": { "shipTo": { "description": "The ship to address.", "$ref": "#/$defs/Address" }, "shipFrom": { "description": "The ship from address.", "$ref": "#/$defs/Address" }, "returnTo": { "description": "The return to address.", "$ref": "#/$defs/Address" }, "shipDate": { "type": "string", "format": "date-time", "description": "The ship date and time (the requested pickup). This defaults to the current date and time." }, "shipperInstruction": { "$ref": "#/$defs/ShipperInstruction", "description": "This field describe shipper instruction." }, "packages": { "$ref": "#/$defs/PackageList" }, "valueAddedServices": { "$ref": "#/$defs/ValueAddedServiceDetails" }, "taxDetails": { "$ref": "#/$defs/TaxDetailList" }, "channelDetails": { "$ref": "#/$defs/ChannelDetails" }, "clientReferenceDetails": { "$ref": "#/$defs/ClientReferenceDetails" }, "shipmentType": { "$ref": "#/$defs/ShipmentType" }, "destinationAccessPointDetails": { "$ref": "#/$defs/AccessPointDetails" }, "carrierAccounts": { "$ref": "#/$defs/CarrierAccounts" } }, "$defs": { "AccessPointDetails": { "type": "object", "description": "AccessPointDetails object", "properties": { "accessPointId": { "$ref": "#/$defs/AccessPointId" } } }, "AccessPointId": { "description": "Unique identifier for the access point", "type": "string" }, "AccountId": { "type": "string", "description": "Identifier for the seller's carrier account." }, "Address": { "type": "object", "required": [ "addressLine1", "city", "countryCode", "name", "postalCode", "stateOrRegion" ], "properties": { "name": { "type": "string", "description": "The name of the person, business or institution at the address.", "minLength": 1, "maxLength": 50 }, "addressLine1": { "type": "string", "description": "The first line of the address.", "minLength": 1, "maxLength": 60 }, "addressLine2": { "type": "string", "description": "Additional address information, if required.", "minLength": 1, "maxLength": 60 }, "addressLine3": { "type": "string", "description": "Additional address information, if required.", "minLength": 1, "maxLength": 60 }, "companyName": { "type": "string", "description": "The name of the business or institution associated with the address." }, "stateOrRegion": { "$ref": "#/$defs/StateOrRegion" }, "city": { "$ref": "#/$defs/City" }, "countryCode": { "$ref": "#/$defs/CountryCode" }, "postalCode": { "$ref": "#/$defs/PostalCode" }, "email": { "type": "string", "description": "The email address of the contact associated with the address.", "maxLength": 64 }, "phoneNumber": { "type": "string", "description": "The phone number of the person, business or institution located at that address, including the country calling code.", "minLength": 1, "maxLength": 20 }, "geocode": { "$ref": "#/$defs/Geocode" } }, "description": "The address." }, "AmazonOrderDetails": { "type": "object", "required": [ "orderId" ], "properties": { "orderId": { "type": "string", "description": "The Amazon order ID associated with the Amazon order fulfilled by this shipment." } }, "description": "Amazon order information. This is required if the shipment source channel is Amazon." }, "AmazonShipmentDetails": { "type": "object", "required": [ "shipmentId" ], "properties": { "shipmentId": { "type": "string", "description": "This attribute is required only for a Direct Fulfillment shipment. This is the encrypted shipment ID." } }, "description": "Amazon shipment information." }, "CarrierAccount": { "type": "object", "required": [ "carrierAccountId", "carrierId" ], "properties": { "carrierAccountId": { "$ref": "#/$defs/AccountId" }, "carrierId": { "$ref": "#/$defs/CarrierId" } }, "description": "Carrier Account details used to fetch rates." }, "CarrierAccounts": { "type": "array", "description": "A list of CarrierAccounts", "items": { "$ref": "#/$defs/CarrierAccount" } }, "CarrierId": { "type": "string", "description": "The carrier identifier for the offering, provided by the carrier." }, "ChannelDetails": { "type": "object", "required": [ "channelType" ], "properties": { "channelType": { "$ref": "#/$defs/ChannelType" }, "amazonOrderDetails": { "$ref": "#/$defs/AmazonOrderDetails" }, "amazonShipmentDetails": { "$ref": "#/$defs/AmazonShipmentDetails" } }, "description": "Shipment source channel related information." }, "ChannelType": { "type": "string", "description": "The shipment source channel type.", "enum": [ "AMAZON", "EXTERNAL" ], "x-docgen-enum-table-extension": [ { "value": "AMAZON", "description": "Indicates that the shipment originates from an Amazon order." }, { "value": "EXTERNAL", "description": "Indicates that the shipment originates from a non-Amazon channel." } ] }, "ChargeComponent": { "type": "object", "description": "The type and amount of a charge applied on a package.", "properties": { "amount": { "$ref": "#/$defs/Currency" }, "chargeType": { "type": "string", "description": "The type of charge.", "enum": [ "TAX", "DISCOUNT" ], "x-docgen-enum-table-extension": [ { "value": "TAX", "description": "A tax imposed on a package." }, { "value": "DISCOUNT", "description": "A discount deducted from the cost of a package." } ] } } }, "ChargeList": { "type": "array", "description": "A list of charges based on the shipping service charges applied on a package.", "items": { "$ref": "#/$defs/ChargeComponent" } }, "City": { "type": "string", "description": "The city or town where the person, business or institution is located." }, "ClientReferenceDetail": { "type": "object", "required": [ "clientReferenceType", "clientReferenceId" ], "properties": { "clientReferenceType": { "type": "string", "description": "Client Reference type.", "enum": [ "IntegratorShipperId", "IntegratorMerchantId" ], "x-docgen-enum-table-extension": [ { "value": "IntegratorShipperId", "description": "The unique identifier assigned to a 3P seller by the shipping integrator." }, { "value": "IntegratorMerchantId", "description": "The unique identifier assigned to a 3P shipping integrator by Amazon." } ] }, "clientReferenceId": { "type": "string", "description": "The Client Reference Id." } }, "description": "Client Reference Details" }, "ClientReferenceDetails": { "type": "array", "description": "Object to pass additional information about the MCI Integrator shipperType: List of ClientReferenceDetail", "items": { "$ref": "#/$defs/ClientReferenceDetail" } }, "CollectOnDelivery": { "type": "object", "required": [ "amount" ], "properties": { "amount": { "$ref": "#/$defs/Currency" } }, "description": "The amount to collect on delivery." }, "CountryCode": { "type": "string", "description": "The two digit country code. Follows ISO 3166-1 alpha-2 format." }, "Currency": { "description": "The monetary value in the currency indicated, in ISO 4217 standard format.", "type": "object", "required": [ "unit", "value" ], "properties": { "value": { "type": "number", "description": "The monetary value." }, "unit": { "type": "string", "description": "The ISO 4217 format 3-character currency code.", "minLength": 3, "maxLength": 3 } } }, "DangerousGoodsDetails": { "type": "object", "properties": { "unitedNationsRegulatoryId": { "type": "string", "description": "The specific UNID of the item being shipped.", "pattern": "^(UN|ID|NA)[0-9]{4}$" }, "transportationRegulatoryClass": { "type": "string", "description": "The specific regulatory class of the item being shipped.", "pattern": "^[1-9](\\.[1-9])?$" }, "packingGroup": { "type": "string", "description": "The specific packaging group of the item being shipped.", "enum": [ "I", "II", "III" ], "x-docgen-enum-table-extension": [ { "value": "I", "description": "Packing group I indicates great danger." }, { "value": "II", "description": "Packing group II indicates medium danger." }, { "value": "III", "description": "Packing group III indicates minor danger." } ] }, "packingInstruction": { "type": "string", "description": "The specific packing instruction of the item being shipped.", "enum": [ "PI965_SECTION_IA", "PI965_SECTION_IB", "PI965_SECTION_II", "PI966_SECTION_I", "PI966_SECTION_II", "PI967_SECTION_I", "PI967_SECTION_II", "PI968_SECTION_IA", "PI968_SECTION_IB", "PI969_SECTION_I", "PI969_SECTION_II", "PI970_SECTION_I", "PI970_SECTION_II" ], "x-docgen-enum-table-extension": [ { "value": "PI965_SECTION_IA", "description": "Ion PI965 Section IA (LiBa)" }, { "value": "PI965_SECTION_IB", "description": "Ion PI965 Section IB (LiBa)" }, { "value": "PI965_SECTION_II", "description": "Ion PI965 Section II (LiBa)" }, { "value": "PI966_SECTION_I", "description": "Ion PI966 Section I (LiBa with equipment)" }, { "value": "PI966_SECTION_II", "description": "Ion PI966 Section II (LiBa with equipment)" }, { "value": "PI967_SECTION_I", "description": "Ion PI967 Section I (LiBa in equipment)" }, { "value": "PI967_SECTION_II", "description": "Ion PI967 Section II (LiBa in equipment)" }, { "value": "PI968_SECTION_IA", "description": "Metal PI968 Section IA (LiBa)" }, { "value": "PI968_SECTION_IB", "description": "Metal PI968 Section IB (LiBa)" }, { "value": "PI969_SECTION_I", "description": "Metal PI969 Section I (LiBa with equipment)" }, { "value": "PI969_SECTION_II", "description": "Metal PI969 Section II (LiBa with equipment)" }, { "value": "PI970_SECTION_I", "description": "Metal PI970 Section I (LiBa in equipment)" }, { "value": "PI970_SECTION_II", "description": "Metal PI970 Section II (LiBa in equipment)" } ] } }, "description": "Details related to any dangerous goods/items that are being shipped." }, "Dimensions": { "type": "object", "required": [ "height", "length", "unit", "width" ], "properties": { "length": { "type": "number", "description": "The length of the package." }, "width": { "type": "number", "description": "The width of the package." }, "height": { "type": "number", "description": "The height of the package." }, "unit": { "type": "string", "description": "The unit of measurement.", "enum": [ "INCH", "CENTIMETER" ], "x-docgen-enum-table-extension": [ { "value": "INCH", "description": "The imperial unit of length equal to one twelfth of a foot." }, { "value": "CENTIMETER", "description": "A metric unit of length, equal to one hundredth of a meter." } ] } }, "description": "A set of measurements for a three-dimensional object." }, "DirectFulfillmentItemIdentifiers": { "type": "object", "required": [ "lineItemID" ], "properties": { "lineItemID": { "type": "string", "description": "A unique identifier for an item provided by the client for a direct fulfillment shipment. This is only populated for direct fulfillment multi-piece shipments. It is required if a vendor wants to change the configuration of the packages in which the purchase order is shipped." }, "pieceNumber": { "type": "string", "description": "A unique identifier for an item provided by the client for a direct fulfillment shipment. This is only populated if a single line item has multiple pieces. Defaults to 1." } }, "description": "Item identifiers for an item in a direct fulfillment shipment." }, "Geocode": { "type": "object", "description": "Defines the latitude and longitude of the access point.", "properties": { "latitude": { "description": "The latitude of access point.", "type": "string" }, "longitude": { "description": "The longitude of access point.", "type": "string" } } }, "InvoiceDetails": { "description": "The invoice details for charges associated with the goods in the package. Only applies to certain regions.", "type": "object", "properties": { "invoiceNumber": { "type": "string", "description": "The invoice number of the item." }, "invoiceDate": { "type": "string", "format": "date-time", "description": "The invoice date of the item in ISO 8061 format." } } }, "Item": { "type": "object", "required": [ "quantity" ], "properties": { "itemValue": { "$ref": "#/$defs/Currency" }, "description": { "type": "string", "description": "The product description of the item." }, "itemIdentifier": { "type": "string", "description": "A unique identifier for an item provided by the client." }, "quantity": { "type": "integer", "description": "The number of units. This value is required." }, "weight": { "$ref": "#/$defs/Weight" }, "liquidVolume": { "$ref": "#/$defs/LiquidVolume" }, "isHazmat": { "type": "boolean", "description": "When true, the item qualifies as hazardous materials (hazmat). Defaults to false." }, "dangerousGoodsDetails": { "$ref": "#/$defs/DangerousGoodsDetails" }, "productType": { "type": "string", "description": "The product type of the item." }, "invoiceDetails": { "$ref": "#/$defs/InvoiceDetails" }, "serialNumbers": { "type": "array", "items": { "type": "string" }, "description": "A list of unique serial numbers in an Amazon package that can be used to guarantee non-fraudulent items. The number of serial numbers in the list must be less than or equal to the quantity of items being shipped. Only applicable when channel source is Amazon." }, "directFulfillmentItemIdentifiers": { "$ref": "#/$defs/DirectFulfillmentItemIdentifiers" } }, "description": "An item in a package." }, "ItemList": { "type": "array", "description": "A list of items.", "items": { "$ref": "#/$defs/Item" } }, "LiquidVolume": { "type": "object", "required": [ "unit", "value" ], "properties": { "unit": { "type": "string", "description": "The unit of measurement.", "enum": [ "ML", "L", "FL_OZ", "GAL", "PT", "QT", "C" ], "x-docgen-enum-table-extension": [ { "value": "ML", "description": "Milliliter - Metric unit of volume." }, { "value": "L", "description": "Liter - Metric unit of volume." }, { "value": "FL_OZ", "description": "Fluid Ounce - Imperial unit of volume." }, { "value": "GAL", "description": "Gallon - Imperial unit of volume." }, { "value": "PT", "description": "Pint - Imperial unit of volume." }, { "value": "QT", "description": "Quart - Imperial unit of volume." }, { "value": "C", "description": "Cup - Imperial unit of volume." } ] }, "value": { "type": "number", "description": "The measurement value." } }, "description": "Liquid Volume." }, "Package": { "type": "object", "required": [ "dimensions", "insuredValue", "items", "packageClientReferenceId", "weight" ], "properties": { "dimensions": { "$ref": "#/$defs/Dimensions" }, "weight": { "$ref": "#/$defs/Weight" }, "insuredValue": { "$ref": "#/$defs/Currency" }, "isHazmat": { "type": "boolean", "description": "When true, the package contains hazardous materials. Defaults to false." }, "sellerDisplayName": { "type": "string", "description": "The seller name displayed on the label." }, "charges": { "$ref": "#/$defs/ChargeList" }, "packageClientReferenceId": { "$ref": "#/$defs/PackageClientReferenceId" }, "items": { "$ref": "#/$defs/ItemList" } }, "description": "A package to be shipped through a shipping service offering." }, "PackageClientReferenceId": { "type": "string", "description": "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." }, "PackageList": { "type": "array", "description": "A list of packages to be shipped through a shipping service offering.", "items": { "$ref": "#/$defs/Package" } }, "PostalCode": { "type": "string", "description": "The postal code of that address. It contains a series of letters or digits or both, sometimes including spaces or punctuation." }, "ShipmentType": { "type": "string", "description": "Shipment type.", "enum": [ "FORWARD", "RETURNS" ], "x-docgen-enum-table-extension": [ { "value": "FORWARD", "description": "Additional information about shipment representing package journey from origin address to destination address in the transportation/shipping request." }, { "value": "RETURNS", "description": "Additional information about shipment representing package journey from destination address to origin/return address in the original transportation/shipping request." } ] }, "ShipperInstruction": { "type": "object", "properties": { "deliveryNotes": { "type": "string", "description": "The delivery notes for the shipment", "maxLength": 256 } }, "description": "The shipper instruction." }, "StateOrRegion": { "type": "string", "description": "The state, county or region where the person, business or institution is located." }, "TaxDetail": { "description": "Indicates the tax specifications associated with the shipment for customs compliance purposes in certain regions.", "type": "object", "required": [ "taxRegistrationNumber", "taxType" ], "properties": { "taxType": { "$ref": "#/$defs/TaxType" }, "taxRegistrationNumber": { "description": "The shipper's tax registration number associated with the shipment for customs compliance purposes in certain regions.", "type": "string" } } }, "TaxDetailList": { "type": "array", "description": "A list of tax detail information.", "items": { "$ref": "#/$defs/TaxDetail" } }, "TaxType": { "type": "string", "description": "Indicates the type of tax.", "enum": [ "GST" ], "x-docgen-enum-table-extension": [ { "value": "GST", "description": "Goods and Services Tax." } ] }, "ValueAddedServiceDetails": { "type": "object", "properties": { "collectOnDelivery": { "$ref": "#/$defs/CollectOnDelivery" } }, "description": "A collection of supported value-added services." }, "Weight": { "description": "The weight in the units indicated.", "type": "object", "required": [ "unit", "value" ], "properties": { "unit": { "type": "string", "description": "The unit of measurement.", "enum": [ "GRAM", "KILOGRAM", "OUNCE", "POUND" ], "x-docgen-enum-table-extension": [ { "value": "GRAM", "description": "Metric unit of mass equal to one thousandth of a kilogram." }, { "value": "KILOGRAM", "description": "Metric unit of mass." }, { "value": "OUNCE", "description": "The imperial unit of weight that is one sixteenth of a pound." }, { "value": "POUND", "description": "The imperial unit of weight." } ] }, "value": { "type": "number", "description": "The measurement value." } } } } }