« Cool Desktop eBay Monitor: Nabit | Main | Tech Support Alert: Avoid ReviseItem dropping items from eBay Express »

Tech Support Alert: Changes Involving Shipping Services and Durations

As announced on May 1st, if you were going to update to the the 457 WSDL, it is preferable to update to the 459 WSDL because a change in the 459 WSDL was not backward compatible with the 457 WSDL.

Additionally, as announced with the release of the 457 WSDL, all WSDL elements previously based on ShippingServiceCodeType and ListingDurationCodeType are now based on xs:token (which is a string). This change affects API calls such as AddItem. For more information, see the 457 Release Notes, "Changed Functionality" section.

This change affects the 459 SDK releases to be made available at the end of May. Specifically, programming language bindings for elements such as Item.ShippingDetails.ShippingServiceOptions.ShippingService will be of type string instead of being a ShippingServiceCodeType enumerated type. Similarly, programming language bindings for elements such as Item.ListingDuration will be of type string instead of ListingDurationCodeType.

Therefore, the 459 SDK releases are not backward-compatible with SDKs that are based on a pre-457 WSDL version. Beginning with WSDL version 457, applications should use GeteBayDetails (wrapped by GeteBayDetailsCall) as the primary API for retrieving available shipping services. Applications should use GetCategoryFeatures (wrapped by GetCategoryFeaturesCall) for listing durations. Applications should not depend on ShippingServiceCodeType and ListingDurationCodeType since there is no guarantee that the schema has all of the new and updated entries. ShippingServiceCodeType and ListingDurationCodeType are retained for backward compatibility, but may not be completely up to date with values currently in use on the eBay production site.

If an application uses a pre-457 WSDL version and makes an API call that returns shipping service values, then CustomCode will be returned for services not defined in ShippingServiceCodeType. (Similar logic applies to ListingDurationCodeType.) 

After clients have adopted the 457 or later WSDL version, and supply a value of 457 or greater in the Version input field, shipping services and durations are no longer limited based on the value in the Version input field. This is a key benefit of the schema change. In particular, GeteBayDetails will return the complete list of shipping services. GeteBayDetails formerly could only return shipping services defined in the particular schema version in use by the client.

May 16, 2006 in Critical Notes from Tech Support, Documentation | Permalink