Skip to main content
Published: August 09 2006, 3:20:00 PMUpdated: July 29 2022, 4:06:00 AM

I am getting the following error message on my AddItem call:

  <Errors>
    <ShortMessage>Input data is invalid.</ShortMessage>
    <LongMessage>Input data for tag <Item.ShippingRegions> is invalid or missing. Please check API documentation.</LongMessage>
    <ErrorCode>37</ErrorCode>
    <SeverityCode>Error</SeverityCode>
    <ErrorParameters ParamID="0">
      <Value>Item.ShippingRegions</Value>
    </ErrorParameters>
    <ErrorClassification>RequestError</ErrorClassification>
  </Errors>

What is going on? Why am I getting this error now?

ShippingRegions is obsolete with compatibility level 373 and higher as documented here:
http://developer.ebay.com/DevZone/SOAP/docs/WSDL/xsd/1/element/325.htm

Please do not use the ShippingRegions field in your AddItem calls.

As a general rule, please do not use elements in an API call that are documented as obsolete, especially once your application uses a compatibility level greater than the one in which the element became obsolete.

Please use ShipToLocations at the Item level as documented here:
http://developer.ebay.com/DevZone/SOAP/docs/WSDL/xsd/1/element/514.htm

Or use ShippingDetails with explicit ShipToLocation choices inside each international shipping service as documented here:
http://developer.ebay.com/DevZone/SOAP/docs/WSDL/xsd/1/complextype/InternationalShippingServiceOptionsType.htm#xmlInstance

Here is an example of using ShipToLocations at the Item level:

  <Item>
  ...
    <ShipToLocations>Asia</ShipToLocations>
    <ShipToLocations>Europe</ShipToLocations>
  ...
  </Item>

Here is an example of using ShipToLocation in international shipping services:

  <Item>
  ...
    <ShippingDetails>
    ...
      <InternationalShippingServiceOption>
        <ShippingService>USPSEconomyParcel</ShippingService>
        <ShippingServiceCost currencyID="USD">15.5</ShippingServiceCost>
        <ShippingServiceAdditionalCost currencyID="USD">0.0</ShippingServiceAdditionalCost>
        <ShippingServicePriority>1</ShippingServicePriority>
        <ShipToLocation>DE</ShipToLocation>
        <ShipToLocation>GB</ShipToLocation>
      </InternationalShippingServiceOption>
      <InternationalShippingServiceOption>
        <ShippingService>UPSWorldWideExpress</ShippingService>
        <ShippingServiceCost currencyID="USD">19.75</ShippingServiceCost>
        <ShippingServiceAdditionalCost currencyID="USD">0.0</ShippingServiceAdditionalCost>
        <ShippingServicePriority>2</ShippingServicePriority>
        <ShipToLocation>MX</ShipToLocation>
      </InternationalShippingServiceOption>
      <InternationalShippingServiceOption>
        <ShippingService>UPSWorldWideExpedited</ShippingService>
        <ShippingServiceCost currencyID="USD">25.3</ShippingServiceCost>
        <ShippingServiceAdditionalCost currencyID="USD">0.0</ShippingServiceAdditionalCost>
        <ShippingServicePriority>3</ShippingServicePriority>
        <ShipToLocation>Europe</ShipToLocation>
      </InternationalShippingServiceOption>
    ...
    </ShippingDetails>
  ...
  </Item>

How well did this answer your question?
Answers others found helpful