This release is specifically for developers who need to continue using Microsoft's Visual Studio 2003 and .NET 1.1. Please note that we will not support the Microsoft .NET 1.1 Framework after his release. In future releases, we will only support the Microsoft .NET 2.0 Framework. See the eBay SDK for .NET Readme for the latest Full Release when you are ready to upgrade.
Notes: The most recent full SDK release is the eBay SDK 661 for .NET Full Release.
Point releases, unlike full releases, do not go through the typical, full rounds of quality
assurance. Point releases include bug fixes and updates to the wrapper classes. You can download
this release and subsequent point releases from the
eBay SDK for .NET download page.
Please see the most recent version of this Readme file, available at the Windows Developer Center.
Please note that upgrades to an SDK should always be done in a test environment.
Additionally, before using a version of the SDK, please read this Readme file. Please also read
the Trading API Release Notes (which contain tables showing schema changes
that occur every two weeks) for all Trading API versions released after your current version.
The Trading API Release Notes are located at the
Windows Developer Center.
| Contents |
|---|
| Release Information for the eBay SDK for .NET |
| General Information for the eBay SDK for .NET |
Important: Changes to the Trading API affect the SDK. For example, in schema version 499, deprecated objects in the schema were deleted, creating backward incompatibility. Please see the Trading API Release Notes for ongoing updates to the schema (including occasional removals of schema elements). Please also see Versioning Strategy and Deprecated Objects.
This release is compatible with eBay's 661 Trading WSDL, and does not contain new features.
This release is compatible with eBay's 639 Trading WSDL, and does not contain new features.
This release is compatible with eBay's 631 Trading WSDL, and does not contain new features.
This release is compatible with eBay's 623 Trading WSDL, and does not contain new features.
This release is compatible with eBay's 615 Trading WSDL. The complete code source, all samples, and utilities have been built using Microsoft's Visual Studio 2003 and .NET 1.1. You must upgrade to Microsoft Visual Studio 2008 if you want to take advantage of the latest features in future eBay SDK for .NET releases.
This release is compatible with eBay's 603 Trading WSDL, and contains support for the following new features:
Two new helper classes, CategoriesDownloader.cs and FeaturesDownloader.cs, have been added in this release. The CategoriesDownloader.cs class caches eBay Category information to a local disk. The FeaturesDownloader.cs class caches the eBay Category Feature information to a local disk. Using these classes, you can access category information without repeatedly making GetCategory and GetCategoryFeatures requests.
The AttributesDemo sample has been updated to take advantage of the new helper classes, so that you can see how to cache the eBay categories and features in a local repository.
The SampleShippingApplication sample has also been updated to use the new helper classes, so that you can see how to cache the eBay categories and features specifically for a shipping application.
The eBayAccount class was removed as part of a code clean-up in Release 595. It has been added back into the code for this release. It is also available as a downloadable patch for Release 595.
This release is compatible with eBay's 595 Trading WSDL, and contains support for the following new features.
With this release, we provide full support for Microsoft's .NET 2.0 platform (.NET SDK). This version of eBay's SDK for .NET also still supports .NET 1.1.
Build Information:
As of this release, you can now use eBay's SDK for .NET with Microsoft's Vista operating system, provided that you:
Comments:
Since the classes in the eBay Picture Service (EPS) have been replaced by the UploadSiteHostedPictures Trading API (XML) call, the DotNET SDK now supports the UploadSiteHostedPictures call. Because this is a Trading API call, you will need to provide an eBay developer authorization token (that you obtain with your application keys) when making this call.
The UploadSiteHostedPictures call is the only call in the Trading API that doesn't support SOAP. Therefore, you need to use the following (XML) endpoints (Gateway URLs):
You can still use the EPS libraries with this release, but they will eventually be discontinued, so we recommend that you migrate to the newer call as soon as you can. The UploadSiteHostedPictures call enables you to upload files in image formats such as JPG by including a binary attachment after the XML input, as part of the request. The call returns SiteHostedPictureDetails.FullURL, which must be stored by your application (for associating the picture using the Item.PictureDetails.PictureURL field of AddItem, ReviseItem, or RelistItem).
For more information, please see the following:
This release also includes support for the ProPay payment method. ProPay is a third party application that allows small businesses to accept credit cards. For more information about ProPay, see www.ProPay.com. For more information about accepted eBay payment methods, see BuyerPaymentMethodCodeType in the Trading Call Reference.
An updated ASP attributeDemo sample includes return policy information that is integrated with the rest of the Item details, instead of being posted on a separate page. It also includes a dynamic lookup feature for Shipping Service, Payment Methods, Listing Type, and Listing Duration. This sample demonstrates the usage of eBay Custom Item Specifics with the Trading API GetCategoryFeatures and GetCategorySpecifics calls.
Please note that for Return Policy and for the requirement to specify shipping,
some samples contain hard-coded fields. Therefore, if you want to change the
target site used in the sample, you must integrate GetCategoryFeaturesCall
and GeteBayDetailsCall into the sample. For important information, see the
Trading API Release Notes and the eBay Trading Web Services section
of the Developer
Documentation Center.
For important information about the latest API features, including new requirements for listings, please see the Trading API Release Notes and the eBay Trading Web Services section of the Developer Documentation Center.
As of this release, all legacy XML classes and calls have been removed. The new UploadSiteHostedPictures call is the only remaining XML call.
For important information about the latest API features, including new requirements for listings, please see the Trading API Release Notes and the eBay Trading Web Services section of the Developer Documentation Center.
The eBay SDK for .NET contains updated wrapper classes, updated test cases, and other updates that facilitate your use of recent API features. Changes include updates to user token retrieval and deprecation of eBay Express.
Some SDK samples are updated based on recent API features. Please note
that for Return Policy and for the requirement to specify shipping,
some samples contain hard-coded fields. Therefore, if you want to change the
target site used in the sample, you must integrate GetCategoryFeaturesCall
and GeteBayDetailsCall into the sample. For important information, see the
Trading API Release Notes and the eBay Trading Web Services section
of the Developer
Documentation Center.
Beginning with this release, the SDK will only support Microsoft .NET Framework
versions 1.1 and 2.0 (not
version 1.0,
which Microsoft has retired).
If you are still using version 1.0, please update your .NET Framework version.
This may require that you upgrade your integrated development environment.
The eBay SDK for .NET contains updated wrapper classes, updated test cases, and other updates that facilitate your use of recent features of the API.
For information about the latest API features, please see the Trading API Release Notes and the eBay Trading Web Services section of the Developer Documentation Center.
The eBay SDK for .NET includes the user-authentication improvements released with Trading API version 557. For information about these improvements, see the Release Notes for version 557 of the Trading API and see Authentication and Authorization.
The SDK changes include 3 new wrapper classes (GetSessionIDCall, GetTokenStatusCall, and RevokeTokenCall) and new FetchTokenCall functionality. Please use the new FetchTokenCall functionality in your application. The SoapApiDemo samples for both C# and VB.NET are updated with the new FetchTokenCall functionality. The C# SoapApiDemo sample is updated to show uses of the 3 new wrapper classes. The VB.NET SoapApiDemo sample is updated to show the use of GetTokenStatusCall.
The code generator in ...\SDKInstallDir\Code Generator is easier to use and no longer generates stubs for non-SOAP calls.
The Visual Basic 6 sample (formerly under ...\SDKInstallDir\Samples\VB6) has been removed from the SDK. Please see the VB.NET sample (under ...\SDKInstallDir\Samples\VB.NET) instead.
The eBay SDK for .NET contains updated wrapper classes, updated test cases, and other updates that facilitate your use of recent features of the API.
For information about the latest API features, please see the Trading API Release Notes and the eBay Trading Web Services section of the Developer Documentation Center.
The Attributes Library in the SDK now supports downloading and rendering sitewide characteristic sets. This enables you to include sitewide attributes in listings.
On many sites, you use sitewide attribute sets to fill in an item's Return Policy fields, the Item Condition field, or both. Some categories may support zero, one, or both of these sets (as indicated in each sitewide set's "exclude list").
The changes described here assume you are already familiar with the Attributes Library. (For information about working with the Attributes Library, see The Attributes API.)
In the IAttributesMaster interface and AttributesMaster class, these new methods have been defined:
Also, in the AttributesMaster class, the RenderHtml() method has been overloaded to support rendering Return Policy fields (using eBay's XSL stylesheet). This method checks whether the data is for a return policy, and adds the pageId attribute to the SelectedAttributes node if it is.
Note: In a few cases, the Item Condition attribute may appear twice when you render standard and sitewide data for a category (please inform eBay if this occurs). This occurs when a category is mapped to a standard characteristic set that defines an Item Condition attribute locally, and the category is also mapped to a sitewide Item Condition characteristic set. To avoid unexpected results, the seller should either use the local Item Condition defined in the standard set, or you should make sure the same value is used for both when you list the item.
A few helper methods have been added to or modified in IAttributesXmlProvider and AttributesXmlDownloader:
A few helper methods have also been added to ICategoryCSProvider and CategoryCSDownloader:
Before CategoryCSDownloader downloads sitewide characteristic sets, it checks to see what version of the metadata is already stored locally and compares it to the version on the site. If the version on the site is different, or if the metadata isn't stored locally, it downloads the appropriate metadata from the site and stores it in the local file system. These are the filename conventions (where version is the metadata version, not the request version):
| Sitewide characteristic set mapping (all categories) | site.ALL.version.swcs |
| Sitewide characteristic set mapping (one category) | site.categoryID.version.swcs |
site.categoryID.version.
Here are a few cases that may be helpful when you're testing sitewide attributes in the Sandbox:
For a sample that uses the new functionality in the Attributes library, see C:\Program Files\eBay\SDKInstallDir\Samples\ASP.NET\AttributesDemo and the Readme file for that sample.
The Attributes Library now gives you the option to store attribute metadata locally, and only download updates for a site if a newer version exists on the site. Each provider includes one or more Get methods for this purpose. In the downloader classes that implement these provider interfaces, these methods check to see what version of the metadata is already stored locally and compare it to the version on the site. If the version on the site is different, or if the metadata isn't stored locally, these Get methods download the appropriate metadata from the site and store it in the local file system.
These are the filename conventions (where version is the metadata version, not the request version):
| XSL file | site.version.attrxsl |
| Category-to-CS mappings (all categories) | site.ALL.version.catcs |
| Category-to-CS mappings (one category) | site.categoryID.version.catcs |
| Attributes CS (all sets) | site.ALL.version.attrcs |
| Attributes CS (one or more sets) | site.CSIdHashcode.version.attrcs |
For example, if you retrieve a full attribute metadata XML file from the UK site (without specifying a particular CSId), and the attribute system version is 8005, the filename would be: UK.ALL.8005.attrcs.
If you retrieve attribute metadata for one or more CSIds, the downloader creates a hashcode for the set (the sum of the IDs), and uses that value in the filename.
The downloader saves these files in the C:\temp directory.
Important: You can delete these locally stored files, but if you edit or rename them, your application may fail.
Alternatively, each provider includes Download methods to enable you to force a full download of the metadata without checking the version. In the downloader classes, these methods store the metadata in memory only.
For more information about working with the Attributes Library, see The Attributes API. For a sample that uses the new functionality in the Attributes library, see C:\Program Files\eBay\SDKInstallDir\Samples\ASP.NET\AttributesDemo and the Readme file for that sample.
Also note that the following (existing) class and interface definitions have been moved from the AttributesMaster.cs file to individual files in eBay.Service.SDK.Attribute.
The eBay SDK for .NET contains updated wrapper classes, updated test cases, and other updates that facilitate your use of recent features of the API.
For information about the latest API features, please see the Trading API Release Notes and the eBay Trading Web Services section of the Developer Documentation Center.
The following sample (formerly under ...\SDKInstallDir\Samples\C#) has been removed from the SDK: SamplePaymentApplication.
The eBay SDK for .NET no longer is available in the Community Codebase. Instead, it is available on the eBay SDK for .NET download page. The 511 version includes the 511 NDoc.
For information about the latest API features, please see the Trading API Release Notes and the Trading Web Services API Guide at the Windows Developer Center. The Trading Web Services API Guide replaces the eBay SDK for .NET Guide.
Schema version 513 introduced a new XML API call (UploadSiteHostedPictures) for uploading pictures for listings. Availability of this call in the SOAP API is planned for a future date, to be announced. Until this call is available in the SOAP API, no wrapper class will be available for this call in the SDK.
Many deprecated calls and fields were deleted in WSDL version 499. Due to the large number of deletions, SDK Version 511 is not backward compatible.
You can use two new helper classes (in ...\SDKInstallDir\Source\eBay.Service.SDK\Util) for storing the data returned by GetCategoryFeaturesCall and GeteBayDetailsCall.
The sample titled SampleSellingApplication (in ...\SDKInstallDir\Samples\C#\SampleSellingApplication) is not compatible with this SDK version.
The following samples (formerly under ...\SDKInstallDir\Samples\C#) have been removed from the SDK: AttributeBulkEditorControl and AttributeBulkEditorDemo.
Due to a large number of deletions from version 499 of the schema, SDK version 503 is not backward compatible. Deprecated calls and fields were deleted on schema version 499.
For information about SDK changes, please see the NDoc installed in the C:\Program Files\eBay\SDKInstallDir\docs\LibRef folder. Additional information about schema deletions is in the Deprecated Objects page in the Input/Output Reference. Please also read the eBay Schema Versioning Strategy page.
This SDK point release contains updated wrapper classes and other updates that facilitate your use of new API features. The following features, described in the Trading API Release Notes, are among the API features included in this SDK release:
In the Shipping Discount Profiles feature, changes to WSDL elements were made on API version 505. To use the Shipping Discount Profiles feature, please update your SDK to WSDL version 505 or later.
The GetDefaultCurrencyCodeType method of the CurrencyUtility class has been updated to return currencies for newer eBay sites.
The eBay SDK for .NET contains updated wrapper classes, updated test cases, and other updates that facilitate your use of recent features of the API.
The GetMyeBayCall wrapper class has been removed from the SDK due to deprecation of the underlying request/response elements in the schema. For more information about deprecated elements, please see the Versioning Strategy and Versioning Summary. Additionally, the GetMyeBay code has been removed from sample code.
The PictureDetails field replaced the SiteHostedPicture and VendorHostedPicture fields in the API. Therefore, references in sample code to SiteHostedPicture and VendorHostedPicture have been removed from the SDK. For information about when the PictureDetails field replaced the SiteHostedPicture and VendorHostedPicture fields, please see the Versioning Summary.
Four dialog boxes, including dialog boxes for use of GetCartCall and SetCartCall, have been added to the SoapApiDemo sample (C:\Program Files\eBay\SDKInstallDir\Samples\C#\SoapApiDemo).
The multi-call test programs delivered with the SDK have been consolidated. They require only a single compilation after you have opened TestScenarios.sln in C:\Program Files\eBay\SDKInstallDir\Source\SanityTest\TestScenarios. Additionally, they use only one Account Settings dialog box.
Multi-call test programs for adding orders and for retrieving shipping information have been added to the SDK. To run the test programs, use TestScenarios.sln in C:\Program Files\eBay\SDKInstallDir\Source\SanityTest\TestScenarios.
The GetCharitiesCall wrapper class can be used without any call-specific input fields in order to retrieve all charity nonprofit organizations. Formerly, at least one call-specific input field was required in the wrapper class.
You can use the new ExceptionFilter class to specify several types of logging. You can specify logging in cases of specific API errors and HTTP status codes. You also can specify logging in general cases of API exceptions and HTTP exceptions. The new logging feature makes logging more useful and reduces the size of your logs.
The FrmMain.cs file in the SOAPApiDemo sample (at C:\Program Files\eBay\SDKInstallDir\Samples\C#\SoapApiDemo) shows one way to use the new ExceptionFilter class. To use the new logging feature for a program, you can add values from C:\Program Files\eBay\SDKInstallDir\Source\Helper\AppSettingHelper.cs to the app.config file for the program. To see an example of how to log only calls resulting in HTTP status codes 404 and 502, add the following line to the app.config file of SoapApiDemo (case insensitive):
<add key="LogPayloadHttpStatusCodes" value="404;502"/>To see an example of how to log only calls resulting in error codes 17 and 124, add the following line to the app.config file of SoapApiDemo:
<add key="LogPayloadErrorCodes" value="17;124"/>To see an example of how to log only calls resulting generally in API exceptions, add the following line to the app.config file of SoapApiDemo:
<add key="LogPayloadExceptions" value="ApiException"/>To see an example of how to log only calls resulting generally in HTTP exceptions, add the following line to the app.config file of SoapApiDemo:
<add key="LogPayloadExceptions" value="HttpException"/>To see an example of how to log only calls resulting generally in API and HTTP exceptions, add the following line to the app.config file of SoapApiDemo:
<add key="LogPayloadExceptions" value="ApiException;HttpException"/>
Enhancements to core SDK files can help you determine the time needed for each phase of a SOAP API call (client-side phases for encoding and decoding, network-transport phases, and server-side phase).
For an example of how to use the enhancements, see the MultiThread sample (C:\Program Files\eBay\SDKInstallDir\Samples\C#\MultiThread).
Multi-call test programs for leaving feedback and getting item transactions have been added to the SDK.
To run the test programs, use the following solution file: C:\Program Files\eBay\SDKInstallDir\Source\SanityTest\testscenarios\SanityTestScenarios.sln.
The folders of the new programs are in the following folder: C:\Program Files\eBay\SDKInstallDir\Source\SanityTest\testscenarios. The new program that shows one way to test LeaveFeedbackCall is in the SanityTestSNR2 folder. The new program that shows one way to test GetItemTransactionsCall is in the SanityTestSNR3 folder.
AddMemberMessage was removed from the WSDL on version 481. As previously announced, this call has been replaced by AddMemberMessageAAQToPartner, AddMemberMessageRTQ, and AddMemberMessagesAAQToBidder. For information about schema changes, please see the Trading API Release Notes (which contain tables showing the schema changes that occur every two weeks) at the Developer Documentation Center.
The validation rule logic in the Attributes Library (C:\Program Files\eBay\SDKInstallDir\Source\eBay.Service.SDK.Attribute) has been updated to match the current site logic. For information about updates to the Attributes Library, see Attributes Library Notes. The next release of the Trading API documentation will be updated to reflect the same changes.
The reliability of the Sanity Test suite (under the Source\SanityTest folder) has been improved. You can use the Sanity Test suite for simple testing after you change code in the SDK.
The eBay SDK for .NET contains wrapper classes and other updates that facilitate your use of recent features of the API.
The eBay SDK for .NET no longer includes the database sample. In past releases, the database sample was installed at the following location: C:\Program Files\eBay\SDKInstallDir\Samples\C#\DatabaseSample. Additionally, references in other samples to the database sample have been removed. However, the compiled version of the database sample, eBay.Service.SDK.Integration.dll, is available in the following location: C:\Program Files\eBay\SDKInstallDir\eBay.Service.SDK.Integration.dll. In pre-459 releases, the database sample files were referred to as the "integration library." Please note that if you regenerate eBay.snk and then rebuild ebay.Service.dll, errors can occur if you compile and run a sample that depends on the database sample.
Commands in C:\Program Files\eBay\SDKInstallDir\RegSDK.bat for registering eBay.Service.SDK.Integration.dll and AttributeBulkEditBox.dll have been moved to C:\Program Files\eBay\SDKInstallDir\Samples\C#\RegSDKSample.bat.
A multi-call test program demonstrates a scenario that uses 8 different API calls involving data of a single item listing. To run the multi-call test program, use the following solution file: C:\Program Files\eBay\SDKInstallDir\Source\SanityTest\testscenarios\SanityTestScenarios.sln.
You can use updates to the CallRetry and ApiException classes to detect HTTP errors and subsequently perform call retry. Specifically, you can implement call retry in response to 502 HTTP errors, 404 HTTP errors, and related HTTP errors from a web server. In the SoapApiDemo sample, at C:\Program Files\eBay\SDKInstallDir\Samples\C#\SoapApiDemo, updates to FrmGetItem.cs, including a GetCallRetry method, show one way to use the new functionality of the CallRetry class.
The StoresFixedPrice tag, currently available for international sites, will soon be obsolete. The 471 API schema released in late July contained additions to ItemTypeFilterCodeType that apply to searches with GetSearchResults and GetCategoryListings. The additions to ItemTypeFilterCodeType must be used instead of the StoresFixedPrice tag. For more information, please see the Trading API Release Notes (which contain tables showing schema changes that occur every two weeks) at the Developer Documentation Center.
The following wrapper classes now store images in a PictureDetails container, by default: AddItemCall, VerifyAddItemCall, RelistItemCall, and AddLiveAuctionItemCall. Formerly, a SiteHostedPicture container was used. If you want your application to continue using a SiteHostedPicture container, set the UseDeprecatedPictureStructure property of the wrapper class to true. Note that SiteHostedPicture is deprecated. Applications eventually will have to use PictureDetails because with API version 439 and higher, PictureDetails is used for pictures associated with an item.
The following properties are added to the TimeFilter class: TimeFilter.TimeFromUTC and TimeFilter.TimeToUTC. For more information, see Note About Time Values.
An exception resulting from an invalid codetype value now includes the text of the specific value that caused the exception.
The name of the integration library has been changed to "Database Sample." The name change includes a change to the name of the folder containing the sample; the name of the eBay.Service.SDK.Integration folder has been changed to DatabaseSample. The sample is meant solely to show one way to store and access eBay data.
Please see the Past Releases section of the Release Notes in the following GZ file: eBayDotNETSDKAPIAllDocs459.tar.gz.
The WSDL is located at http://developer.ebay.com/webservices/Version/ebaySvc.wsdl.
Version in the URL means latest or it means a numerical version of a WSDL release (see the top of the particular WSDL file).
In the case of Version meaning latest, the WSDL is the latest released version (http://developer.ebay.com/webservices/latest/ebaySvc.wsdl). If Version in the URL means a numerical version of the WSDL, Version is a number (for example, http://developer.ebay.com/webservices/445/ebaySvc.wsdl).
Hypothetically, if the latest release of the WSDL were 449, you would find that WSDL version at both http://developer.ebay.com/webservices/latest/ebaySvc.wsdl and at http://developer.ebay.com/webservices/449/ebaySvc.wsdl.
Note that there are separate versions of NUnit for each Microsoft .NET Framework. So, you either need NUnit for Microsoft .NET Framework 1.1. or NUnit for Microsoft .NET Framework 2.0. Since two versions may not run successfully on one computer, you need to uninstall one version if you want to install the other version.
Note also that if the server-side prerequisites for a call are not present, a call from the Sanity Test suite will show a call failure. Additionally, some tests may fail or may show success even when there has been a failure. After you install NUnit, do the following:
eBay has tested the eBay SDK for .NET using the following client environments:
Samples are available in the following folder: C:\Program Files\eBay\SDKInstallDir\Samples.
To view samples in the C:\Program Files\eBay\SDKInstallDir\Samples\C# folder, use the C:\Program Files\eBay\SDKInstallDir\Samples\C#\CSharp Samples.sln solution.
The SoapApiDemo sample utilizes many of the wrapper classes in the SDK. For more information, see C:\Program Files\eBay\SDKInstallDir\Samples\C#\SoapApiDemo\Readme.htm.
All files under the C:\Program Files\eBay\SDKInstallDir\Samples folder are samples; they are meant solely to show one way to store and access eBay data.
With the eBay SDK 479 for .NET Full Release, the validation rule logic in the Attributes Library (C:\Program Files\eBay\SDKInstallDir\Source\eBay.Service.SDK.Attribute) has been updated to match the current site logic, as follows:
The following can occur with an application based on the SDK: A local time (for example, 10 a.m.) is emitted by an application, and the API will change that time to GMT (for example, to 5 p.m.). And a GMT time from the API (for example, 1 p.m.) received by an application will be converted to local time (for example, to 6 a.m.). For this reason, in conjunction with release of eBay SDK 465 for .NET, the following properties are added to the TimeFilter class: TimeFilter.TimeFromUTC and TimeFilter.TimeToUTC. For more information, see the topic for this class in the Library Reference (NDoc) at C:\Program Files\eBay\SDKInstallDir\docs\LibRef. Additional information is available in the following two MSDN Library topics:
© 2005–2010 eBay Inc. All rights reserved.