Shopping — entry 005 of 15

eBay

Verified Jul 2026

eBay's REST platform — Browse, Sell, and related APIs — requires an OAuth2 client-credentials or authorization-code token, confirmed live by a standard invalid_client error from its token endpoint, and is built for server-side integration rather than in-browser calls. New developer accounts get a free daily call allowance with no published paid tier, and higher volume comes from an approval process rather than a fee.

ecommerceoauth2marketplacerest-apiauctions
AuthenticationOAuthRequires an OAuth flow; expect app registration.
HTTPSSupportedTraffic is encrypted in transit.
CORSDisabledBrowser calls need a server-side proxy.
PricingFreeNo paid tier — free for the documented use case.
FormatsJSON, XMLResponses can be requested as JSON or XML.

GreatAPIs Score

Score83out of 100
Authentication8/25OAuth flow required
Pricing20/20Free to use
Docs20/20Machine-readable spec file bundled
Formats15/15Supports 2 response formats
Freshness20/20Verified within 6 months

Embed this badge

Scored 83 on greatapis.com
<a href="https://greatapis.com/api/ebay/"><img src="https://greatapis.com/badge/ebay.svg" alt="Scored 83 on greatapis.com"></a>

Auth quickstart

  1. Register an app / run the OAuth flow to obtain a bearer token.
  2. Send it as an Authorization headerAuthorization: Bearer <token>
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Endpoints

Servers
https://api.ebay.com/buy/browse/v1
Auth
Client CredentialsAuthorization Code
item5
GET/item/
Parameters
NameInRequiredType
item_idsquerynostring
item_group_idsquerynostring
Responses
StatusDescriptionSchema
200SuccessItems
400Bad Request
404Not Found
409Conflict
500Internal Server Error
GET/item/get_item_by_legacy_id
Parameters
NameInRequiredType
fieldgroupsquerynostring
legacy_item_idqueryyesstring
legacy_variation_idquerynostring
legacy_variation_skuquerynostring
Responses
StatusDescriptionSchema
200OKItem
400Bad Request
404Not Found
409Conflict
500Internal Server Error
GET/item/get_items_by_item_group
Parameters
NameInRequiredType
item_group_idqueryyesstring
Responses
StatusDescriptionSchema
200OKItemGroup
400Bad Request
404Not Found
409Conflict
500Internal Server Error
GET/item/{item_id}
Parameters
NameInRequiredType
fieldgroupsquerynostring
item_idpathyesstring
Responses
StatusDescriptionSchema
200SuccessItem
400Bad Request
404Not Found
409Conflict
500Internal Server Error
POST/item/{item_id}/check_compatibility
Parameters
NameInRequiredType
item_idpathyesstring
X-EBAY-C-MARKETPLACE-IDheaderyesstring
Request body

application/jsonCompatibilityPayload

Responses
StatusDescriptionSchema
200OKCompatibilityResponse
400Bad Request
404Not Found
409Conflict
500Internal Server Error
item_summary1
GET/item_summary/search
Parameters
NameInRequiredType
aspect_filterquerynostring
auto_correctquerynostring
category_idsquerynostring
charity_idsquerynostring
compatibility_filterquerynostring
epidquerynostring
fieldgroupsquerynostring
filterquerynostring
gtinquerynostring
limitquerynostring
offsetquerynostring
qquerynostring
sortquerynostring
Responses
StatusDescriptionSchema
200OKSearchPagedCollection
400Bad Request
409Conflict
500Internal Server Error
search_by_image1
POST/item_summary/search_by_image
Parameters
NameInRequiredType
aspect_filterquerynostring
category_idsquerynostring
charity_idsquerynostring
fieldgroupsquerynostring
filterquerynostring
limitquerynostring
offsetquerynostring
sortquerynostring
Request body

application/jsonSearchByImageRequest

Responses
StatusDescriptionSchema
200OKSearchPagedCollection
400Bad Request
409Conflict
500Internal Server Error
shopping_cart4
GET/shopping_cart/
Responses
StatusDescriptionSchema
200OKRemoteShopcartResponse
204No Content
400Bad Request
403Forbidden
404Not Found
500Internal Server Error
POST/shopping_cart/add_item
Request body

application/jsonAddCartItemInput

Responses
StatusDescriptionSchema
200OKRemoteShopcartResponse
204No Content
400Bad Request
403Insufficient permissions to fulfill the request
409Conflict
500Internal Server Error
POST/shopping_cart/remove_item
Request body

application/jsonRemoveCartItemInput

Responses
StatusDescriptionSchema
200OKRemoteShopcartResponse
204No Content
400Bad Request
403Insufficient permissions to fulfill the request
409Conflict
500Internal Server Error
POST/shopping_cart/update_quantity
Request body

application/jsonUpdateCartItemInput

Responses
StatusDescriptionSchema
200OKRemoteShopcartResponse
400Bad Request
403Insufficient permissions to fulfill the request
409Conflict
500Internal Server Error

Try it

Developer reference

Base URLhttps://api.ebay.com/buy/browse/v1
Rate limit

5,000 API calls per day for the default (non-Growth-Check) application tier, confirmed against eBay's own published API Call Limits table (the Browse API's per-app daily allotment, distinct from the higher 10,000/day given to its Feed API); a live unauthenticated GET returns a standard OAuth invalid_token error rather than rate-limit headers, so this couldn't be re-confirmed via response headers the way a keyless API can -- apps close to the ceiling can request a higher limit via eBay's Compatible Application Check / Application Growth Check process.

Key endpoints
  • GET/item_summary/search
  • GET/item/{item_id}
  • GET/item/get_item_by_legacy_id
  • GET/item/get_items_by_item_group
  • GET/shopping_cart/