eBay API endpoint

Search eBay listings

Returns normalized eBay search results.

POSTapiKey3 credits/requestebay.SearchOptionebay.searchResponseDoc/ebay/search

Parameters

NameInTypeRequiredEnumExampleDescription
optionbodyobjectYeseBay search payload
x-api-keyheaderstringYesAPI key required

Authentication

Send your scraping API key in the x-api-key header. Use the console API Keys page to rotate or select the active key.

Billing

Endpoint usage is metered in credits. The plan prices, included credits, limits, and overage rates below match the active backend billing configuration.

Credit cost
3 credits/request
Charged response
Successful 2xx responses
PlanPriceIncluded creditsDaily capRate limitOverage
Free$0/mo2,000500 daily credits5/minNo overage
Starter$9/mo20,0005,000 daily credits15/min$0.75/1,000 overage credits when enabled
Growth$29/mo100,00025,000 daily credits45/min$0.45/1,000 overage credits when enabled
Pro$79/mo400,000No daily cap120/min$0.30/1,000 overage credits
Business$199/mo1,200,000No daily cap300/min$0.20/1,000 overage credits
Enterprise$499/mo5,000,000No daily cap1,000/min$0.12/1,000 overage credits

Failure responses

StatusDescriptionSchema
400Bad Request#/definitions/app.Response
429Too Many Requests#/definitions/app.Response
500Internal Server Error#/definitions/app.Response
502Bad Gateway#/definitions/app.Response

Request body example

{
  "keyword": "1952 topps baseball mickey mantle #311",
  "limit": 60,
  "listing_type": "active",
  "page": 1
}

Example response

{
  "code": 200,
  "msg": "OK",
  "data": {
    "page": 1,
    "total": 123,
    "has_more": true,
    "result": [
      {
        "image": "https://i.ebayimg.com/images/g/item1/s-l140.webp",
        "caption": "New Listing",
        "item_id": "196435705622",
        "title": "OpenAI Shirt",
        "sub_title": "Brand New",
        "link": "https://www.ebay.com/itm/196435705622"
      }
    ]
  }
}

Request schema

#/definitions/ebay.SearchOption

FieldTypeRequiredEnumBoundsExampleDescription
keywordstringYes1952 topps baseball mickey mantle #311keyword to search on Ebay
limitintegerNo60, 120, 24060Number of items per page
listing_typestringNoactive, sold, completed, sold_completedactiveListing type to search
pageintegerNo1Page number

Response schema

#/definitions/ebay.searchResponseDoc

FieldTypeRequiredEnumBoundsExampleDescription
codeintegerNoCode is the HTTP status code or a custom code used to indicate the result of the request @example 200
dataebay.SearchRespNo
data.has_morebooleanNotrue
data.pageintegerNo1
data.resultarrayNo
data.result[].bid_countintegerNo9
data.result[].captionstringNocaption
data.result[].imagestringNohttps://i.ebayimg.com/images/g/b6wAAOSwLRdmZeHS/s-l500.jpg
data.result[].is_authenticity_guaranteedbooleanNofalse
data.result[].item_idstringNo196435705622
data.result[].linkstringNohttps://www.ebay.com/itm/196435705622
data.result[].locationstringNoCanada
data.result[].logisticstringNo+$4.95 shipping
data.result[].offer_notestringNoBuy It Now
data.result[].pricenumberNo49.95
data.result[].price_fromnumberNo10$10 to $20
data.result[].price_tonumberNo20
data.result[].ratingnumberNo5
data.result[].rating_numintegerNo1
data.result[].sellerstringNosoonerfan1949 (998) 100%
data.result[].sold_countintegerNo178
data.result[].sub_titlestringNoPre-Owned
data.result[].titlestringNo1983 TOPPS BASEBALL - 1952 TOPPS REPRINTS #311 MICKEY MANTLE
data.result[].watcher_countintegerNo26
data.totalintegerNo120
msgunknownNoMsg is the message that describes the result of the request @example "Request successful"

Example request

curl -X POST "https://api.crawlora.net/api/v1/ebay/search" -H "x-api-key: <api-key>" -H "Content-Type: application/json" -d '{"keyword":"1952 topps baseball mickey mantle #311","limit":60,"listing_type":"active","page":1}'

TypeScript fetch

const url = new URL("https://api.crawlora.net/api/v1/ebay/search");
const headers = new Headers();
headers.set("x-api-key", "<api-key>");
headers.set("Content-Type", "application/json");
const response = await fetch(url, {
  method: "POST",
  headers,
  body: JSON.stringify({
    "keyword": "1952 topps baseball mickey mantle #311",
    "limit": 60,
    "listing_type": "active",
    "page": 1
  }),
});
const payload = await response.json();