Developers Program

API Call Limits

eBay APIs support a large number of applications and serve billions of API calls every month. To maintain a high level of availability and provide superior quality of service, eBay limits the API call usage. The limits on the total calls and the rate at which the calls can be made depend on the API.

Our default API call limits are designed for individuals and smaller businesses. If your volume increases, you can get higher limits after completing our Application Growth Check.

After you join the eBay Developers Program and get your application keyset, you can start using eBay APIs immediately. The default call limits on the eBay APIs allow you to test and explore the API capabilities. Many applications are able to perform all capabilities using the default limits. If you need higher call limits, you can complete our Application Growth Check, to verify that your application is adhering to eBay's API License Agreement, and that you've made the most efficient use of the APIs you've implemented.

The following table provides the default API call limit rates for individuals and smaller businesses.

Functional Group API Name Default Call Limits
App Settings & Insight Analytics APIs 5,000 API calls per day
Communication Notification 10,000 API calls per day
Inventory Discovery and Refresh Browse API* All methods except getItems: 5000 API calls per day
getItems: 5000 API calls per day
Feed Beta API* item, item_group, item_priority resources: 10,000 API calls per day
item_snapshot resource: 75,000 API calls per day
Feed v1 API* 75,000 API calls per day
Listing Management Media image resource: 1,000,000 API calls per day
POST rate user level limit: 50 requests per 5 seconds
video resource: 5,000 API calls per day
POST rate user level limit: 50 requests per 5 seconds
document resource: 1,000,000 API calls per day
POST rate user level limit: 50 requests per 5 seconds
Marketing and Discounts Deal API* 5,000 API calls per day
Marketing API* 5,000 API calls per day
Merchandising API 5,000 API calls per day
Marketplace Metadata Catalog† 10,000 API calls per day
Charity 5,000 API calls per day
Taxonomy 5,000 API calls per day
Offers and Leads Offer API* 5,000 API calls per day
Order Management Order v1 API* 5,000 API calls per day
Order v2 API* 5,000 API calls per day
Post-Order API Each resource within the Post-Order API has its own separate call limit:
Other APIs Business Policies API
(deprecated)
5,000 API calls per day
Identity† 5,000 API calls per day
Trading API 5,000 API calls per day
Translation (beta) 5,000 API calls per day

* Buy APIs require an additional license. See the API documentation for details.

† Additional user restrictions apply. See the API documentation for details.

For OAuth token call limit details, see Access token rate limits and best practices.

GraphQL API Rate Limits

Unlike REST APIs, which apply call limits at the API level, Public GraphQL rate limits are applied to individual operations. Each operation (query or mutation) has its own default call limit, independent of other operations in the same API.

The following table lists the default rate limits for Public GraphQL operations.

Functional Group API Name Operation Default Call Limits
Account Management User Note createOrReplaceUserNote 5,000 API calls per day
deleteUserNote 5,000 API calls per day
User user 10,000 API calls per day
Auction API itemBiddingActivity 5,000 API calls per day
userBiddingActivity 5,000 API calls per day
Watch List API addToWatchList 5,000 API calls per day
removeAllFromWatchList 5,000 API calls per day
removeFromWatchList 5,000 API calls per day
userCustomLists 5,000 API calls per day
userWatchList 5,000 API calls per day
Inventory Discovery and Refresh Follow API userSavedSearches 5,000 API calls per day
userSavedSellers 5,000 API calls per day
Order Management Order API orders 5,000 API calls per day
ordersByIds 5,000 API calls per day
orderLineItemsByIds 5,000 API calls per day
Item Commitment API itemCommitments 5,000 API calls per day
itemCommitmentsByIds 5,000 API calls per day
commitToPurchase 5,000 API calls per day
Cancellation API contractCancellation 5,000 API calls per day
Return API orderReturn 5,000 API calls per day
Order Inquiry API orderInquiry 5,000 API calls per day
Purchase Quote API requestPurchaseQuote 5,000 API calls per day
purchaseQuotes 5,000 API calls per day
purchaseQuotesByIds 5,000 API calls per day
purchaseQuoteLineItemsByIds 5,000 API calls per day
App Settings & Insight App Insights applicationApiRateLimits 5,000 API calls per day
userApiRateLimits 5,000 API calls per day
bulkDataTransferThresholds 5,000 API calls per day
Offers and Leads Offer API acceptOffer 45,000 API calls per day
counterOffer 45,000 API calls per day
declineOffer 45,000 API calls per day
makeOffer 10,000 API calls per day
buyerNegotiationHistory 4 Million API calls per day

When a call exceeds its operation rate limit, the API returns HTTP 200 with a GraphQL execution-time error: extensions.errorCode = RATE_LIMITED. See the Response Status and Error Codes → GraphQL API Errors for details.

GraphQL Query Complexity Limits

In addition to rate limits, all Public GraphQL operations are subject to four structural query-complexity limits. These limits are enforced before execution and are independent of rate limits and any operation-specific pagination, result-size, or bulk-input limits. The same complexity limits apply regardless of whether the operation is run on behalf of a buyer or a seller.

Limit Maximum What it means What to do if exceeded
Query depth 15 A single operation can have up to 15 nested selection levels. Remove unnecessary nesting or split the request into smaller, focused operations.
Total fields 2,000 A single operation can select up to 2,000 fields, including fields added through fragments. Request only fields the application needs; simplify fragments; split very large operations.
Root fields 11 A single operation can contain up to 11 non-aliased top-level fields under Query or Mutation. Reduce the number of independent top-level calls or split them across requests.
Root field aliases 0 A single operation cannot contain root field aliases. Do not use aliased root calls; use bulk inputs where available or split the work across requests.

When a call exceeds a query-complexity limit, the API returns HTTP 422 Unprocessable Entity with extensions.errorCode = MAX_COMPLEXITY_EXCEEDED. See Response Status and Error Codes → GraphQL API Errors → HTTP 422 for details.