API methods generally correspond to particular individual activities that an eBay user would trigger while on an eBay site or application. Each API call has a distinct purpose and may only be applicable at a particular point in the lifecycle of a listing, such as when the item is first listed, when a buyer is considering the purchase of a listed item, or when the seller and buyer are completing an order.
You can select a programming language (such as PHP, .NET, Java, or any other language that you're comfortable with) to interact with eBay APIs. We also have software developer kits (SDKs) to make your programming tasks in these languages easier.
Through the power of eBay APIs, your application can operate independently of the eBay user interface. Your application doesn't need to change every time the eBay user interface changes, and it doesn't need to present data in the same way that eBay does. Your eBay-enabled application can present data in custom ways that best meet your users' needs.
eBay APIs provide programmatic access to an eBay marketplace, enabling you to build custom applications, tools, and services that leverage the eBay marketplaces in new ways. With eBay APIs, you can create applications that perform many of the operations that you can perform on the eBay site, eBay mobile application, or other eBay tools.
The eBay Developers Program offers the following APIs to create innovative solutions that tap into the power of eBay:
-
Sell APIs—Create end-to-end selling applications to help professional sellers with their selling activity on eBay. From configuring account settings and listing inventory on eBay to marketing listings and reporting on seller performance, the selling APIs help you create applications that enable sellers to scale their businesses on eBay. These APIs also cover core capabilities related to general commerce activities, such as identifying appropriate eBay categories, searching for products in the eBay catalog, and retrieving user account profile information.
Note: Traditional APIs—If a function you want to use isn't available in the RESTful APIs above, explore the capabilities in these Traditional SOAP-based APIs. As we improve the RESTful APIs and create new ones, we're also gradually deprecating these Traditional APIs. So consider carefully before you decide to use a Traditional API.
-
Buy APIs—Use these turnkey solutions to create buying experiences in your application or website. Retrieve purchasable items, check out, then track orders without visiting the eBay site
-
Developer APIs—Get insights into your API integrations
Our latest buy and sell APIs provide you with powerful technology and features that let you build applications to provide buyers and sellers with a seamless, connected experience across their commerce workflow.
Understand eBay Marketplaces
Numerous eBay marketplaces exist around the globe. If you want your application to interface with multiple eBay marketplaces, it's important to understand how these marketplaces work.
-
Sellers can list the same item on multiple marketplaces to make the item available to a broader audience. In some cases, eBay will automatically expose the same listing on multiple marketplaces as long as the seller is willing to ship to the country of that marketplace. Learn more about selling internationally.
-
From a buyer's point-of-view, most of the listings that the buyer sees will probably be listings that were created on that marketplace. They could see listings created on another marketplace because eBay is surfacing those listings on the buyer's marketplace.
-
For prices/currencies, eBay converts to the currency of the marketplace where the buyer is viewing the listing. For example, if a buyer is viewing an item that an eBay US seller listed on the UK marketplace, that buyer sees prices converted to British pounds even though the seller listed the item in US dollars. This currency conversion is done automatically by eBay and isn't something the seller or your application needs to do.
-
Common differences between marketplaces are the inventory available and the currencies and languages used. All API schema elements are in English, but the values of some fields are returned in the native language used by the eBay marketplace's country. In some cases, you can use language-related headers to localize some field values into the specified language.
eBay uses predefined site identifiers for each eBay marketplace. You may need to enter a site identifier to specify the eBay marketplace you're working with. Depending on the API call, these IDs may be passed through an HTTP header, through a path or query parameter, or through the request payload.
For a full list of site IDs, see:
To learn more about how to use these IDs to set the eBay marketplace, see:
Understand the Sandbox and Production environments
As a member of the eBay Developers Program, you'll work in two environments:
|
Sandbox
|
A self-contained virtual testing environment that allows you to test your application without impacting real eBay users, real eBay listings, or real money.
As you develop your application, you'll need to test its functionality in the Sandbox by simulating the various tasks related to buying and selling on eBay before you transact in the Production environment. Items listed and sold in the Sandbox aren't real transactions, and all listing fees and item purchases are paid with fictional money.
|
|
Production
|
The live environment where an eBay-enabled application sends real data to the eBay marketplace with real eBay users, listings, and transactions. An eBay user who views the eBay marketplace through a browser or the eBay mobile application is viewing data in the Production environment. Your application will run in this environment after you go live.
|
Sandbox benefits
Testing in the Sandbox has the following benefits:
-
Fully test and debug your eBay API routines before you run them in Production. Make calls to experiment with function calls, prototype new routines, and test your application's business logic.
Important! Don't use the Sandbox for testing eBay service performance or load handling—high call volumes may result in an interruption of service for your account.
-
Test buying, selling, and after-sale workflows without using real money.
-
List and relist items without having to pay real fees to eBay and without any obligation to deliver real items to real buyers.
-
Watch how mock eBay transactions generated by your requests to the eBay APIs are processed, without touching any live eBay listings, user accounts, or bank accounts.
We recommend using Production to test searching capabilities and metadata calls.
Understand user accounts
This table outlines the differences between the following accounts. These accounts are independent and not interoperable across sites.
Understand application keysets
eBay uses unique identifiers called “application keysets” that tell eBay which application is making a call. An application keyset serves as your application's credentials and is required for making API calls.
-
Application ID/client ID—Uniquely identifies your application; can't be changed
-
Dev ID—Uniquely identifies your developer profile; can't be changed
-
Cert ID/secret—A client secret, like a password for this keyset, that should be kept confidential; can be reset
You can create a separate keyset for the Sandbox and Production environments.
Tip: Just as you would store and protect passwords, use the same caution in storing and using your application keyset. For example, if authorization strings are hard-coded in a compiled application, an unethical individual could see the IDs by inspecting or reverse engineering. We highly recommend using strong encryption of the IDs in your application to prevent credential theft.
Resetting your cert ID
Your application cert ID is like a password for your keyset. If you think your keyset has been compromised, you can change your cert ID at any time. Creating a new cert ID doesn't affect existing user tokens that have already been created for your application.
Once you generate a new cert ID, your old cert ID expires at the end of the grace period that you specify.
-
The grace period can be a value between 0 (expires immediately) and 4000 days. Use 4000 if your company's security standard is to always have two cert IDs available, so that you can switch between them as needed without signing in to the eBay Developers portal.
-
A typical grace period is between 30 and 90 days. During the grace period, both cert IDs are valid, so that you can deploy your application changes and revoke older tokens as needed.
-
You can't use the new cert ID to revoke user tokens that you created with the old ID. If you plan to revoke older tokens, make sure you do so before the old cert ID expires.
- Use Case Description: Explain the specific use case this guide addresses (e.g., integrating payment systems, fetching product data, etc.).
- Why This Use Case?: Briefly explain the importance and benefits of this particular use case.