LogoLogo
Release NotesDataPipelineFAQs
Ruby
Ruby
  • Making Requests
    • API Endpoint Method
    • Proxy Port Method
    • SDK Method
    • Async Requests Method
      • How to use
      • Callbacks
      • API Parameters
      • Async Batch Requests
      • Decoding
    • Structured Data Collection Method
      • Amazon Product Page API
      • Amazon Search API
      • Amazon Offers API
      • Amazon Reviews API
      • Ebay Product Page API
      • Ebay Search API
      • Google SERP API
      • Google News API
      • Google Jobs API
      • Google Shopping API
      • Google Maps Search API
      • Redfin Agent Details API
      • Redfin 'For Rent' Listings API
      • Redfin 'For Sale' Listings API
      • Redfin Listing Search API
      • Walmart Search API
      • Walmart Category API
      • Walmart Product API
      • Walmart Reviews API
    • Async Structured Data Collection Method
      • Amazon Product Page API (Async)
      • Amazon Search API (Async)
      • Amazon Offers API (Async)
      • Amazon Reviews API (Async)
      • Ebay Product Page API (Async)
      • Ebay Search API (Async)
      • Google Search API (Async)
      • Google News API (Async)
      • Google Jobs API (Async)
      • Google Shopping API (Async)
      • Google Maps Search API (Async)
      • Redfin Agent Details API (Async)
      • Redfin 'For Rent' Listings API (Async)
      • Redfin 'For Sale' Listings API (Async)
      • Redfin Listing Search API (Async)
      • Walmart Search API (Async)
      • Walmart Category API (Async)
      • Walmart Product API (Async)
      • Walmart Reviews API (Async)
    • Making POST/PUT Requests
    • Customizing Requests
      • Amazon ZIP Code Targeting
      • Cached Results
      • Cost Control
      • Custom Headers
      • Device Type
      • Geotargeting
      • Geotargeting (Premium)
      • Parameters as Headers
      • Premium Residential/Mobile Proxy Pools
      • Rendering Javascript
        • Render Instruction Set
        • Screenshot Capture🆕
      • Sessions
  • Handling and Processing Responses
    • API Status Codes
    • Output Formats
      • JSON Response - Autoparse 📜
      • LLM Output Formats 💻
    • Response Encoding and Content-Type
  • Dashboard & Billing
    • API Key
    • Credit Usage
    • Delete Account
    • Invoice History
    • Billing Email
    • Billing Address
    • VAT Number
    • Payment Method
    • Cancel Subscription
  • Credits and Requests
  • Account Information
  • Documentation Overview
Powered by GitBook

Quick links

  • Homepage
  • Dashboard
  • Pricing
  • Contact Sales

Resources

  • Developer Guides
  • Blog
  • Contact Support
  • Learning Hub
On this page

Was this helpful?

  1. Making Requests
  2. Async Structured Data Collection Method

Ebay Search API (Async)

This endpoint will retrieve products for a specified search term from Ebay search page and transform it into usable JSON.

Single Query request:

require 'net/http'
require 'json'
require 'uri'
uri = URI('https://async.scraperapi.com/structured/ebay/search')
request = Net::HTTP::Post.new(uri, 'Content-Type' => 'application/json')
request.body = {
  apiKey: 'API_KEY',
  query: 'QUERY',
  country_code: 'COUNTRY_CODE',
  tld: 'TLD',
  condition: 'CONDITION',
  sort_by: 'SORT_BY',
  page: 'PAGE',
  items_per_page: 'ITEMS_PER_PAGE',
  seller_id: 'SELLER_ID',
  buying_format: 'BUYING_FORMAT',
  show_only: 'SHOW_ONLY',
  callback: {
    type: 'webhook',
    url: 'YYYY'
  }
}.to_json
begin
  response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request(request)
  end
  puts response.body
rescue => e
  puts "Error: #{e.message}"
end

Multiple Query request:

require 'net/http'
require 'json'
require 'uri'
uri = URI('https://async.scraperapi.com/structured/ebay/search')
request = Net::HTTP::Post.new(uri, 'Content-Type' => 'application/json')
request.body = {
  apiKey: 'API_KEY',
  queries: ['QUERY1', 'QUERY2'],
  country_code: 'COUNTRY_CODE',
  tld: 'TLD',
  condition: 'CONDITION',
  sort_by: 'SORT_BY',
  page: 'PAGE',
  items_per_page: 'ITEMS_PER_PAGE',
  seller_id: 'SELLER_ID',
  buying_format: 'BUYING_FORMAT',
  show_only: 'SHOW_ONLY',
  callback: {
    type: 'webhook',
    url: 'YYYY'
  }
}.to_json
begin
  response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request(request)
  end
  puts response.body
rescue => e
  puts "Error: #{e.message}"
end

Parameters
Details

API_KEY (required)

User's normal API Key

QUERY (required)

Search query. Example: iPhone

TLD

Top-level Ebay domain to scrape. This is an optional argument and defaults to “com” (ebay.com). Valid values include:

com (ebay.com)

co.uk (ebay.co.uk)

com.au (ebay.com.au)

de (ebay.de)

ca (ebay.ca)

fr (ebay.fr)

it (ebay.it)

es (ebay.es)

at (ebay.at)

ch (ebay.ch)

com.sg (ebay.com.sg)

com.my (ebay.com.my)

ph (ebay.ph)

ie (ebay.ie)

pl (ebay.pl)

nl (ebay.nl)

COUNTRY

country_code influences the language and the currency of the page. The TLD should be set to ‘com’ if you are using languages that are not used by the TLDs listed above.

SORT_BY

Instructs the API to sort the results. Supported values:

ending_soonest newly_listed price_lowest price_highest distance_nearest best_match

PAGE

Page number

ITEMS_PER_PAGE

Number of items returned. Supported values: 60, 120, 240

SELLER_ID

The ‘name’ of the seller. This is a textual id, for example ‘gadget-solutions’

Filter options

CONDITON

Condition of the products. Supported values:

'new', 'used', 'open_box', 'refurbished', 'for_parts', 'not_working’ Note: These categories don’t have the same name for all products.

For example open_box is sometimes called ‘without tag’ on the eBay results page. Please ensure that you are always using the values from the supported list when sending request to the API. Note2: Multiple options can be used here. So if you want to search for new and open_box products you can use the query param: ’used,open_box’ in an URL encoded form like &condition=used%2Copen_box

BUYING_FORMAT

Buying format. Supported values:

buy_it_now auction accepts_offers Note: You can specify multiple options just as with the condition parameter.

SHOW_ONLY

Additional filters for search. Supported values:

returns_accepted authorized_seller completed_items sold_items sale_items listed_as_lots search_in_description benefits_charity authenticity_guarantee Note: Multiple options can be used here. So if you want to search for a product where returns are accepted and it’s from an authorized seller the query param: ’returns_accepted,authorized_seller’ in an URL encoded form like &show_only=returns_accepted%2Cauthorized_seller

Sample Response

Single Query Request:

{                          
  "id": "28cd7eb4-b1a1-4f99-b843-c9c8217d8a46",
  "attempts": 0,           
  "status": "running",     
  "statusUrl": "https://async.scraperapi.com/jobs/28cd7eb4-b1a1-4f99-b843-c9c8217d8a46",
  "query": "iphone",    
  "sort_by": "price_lowest",  
  "supposedToRunAt": "2024-11-11T10:18:01.316Z"
}

Multiple Query Request:

[                                                                                                                                                                                                                                                                                                                             
  {
    "id": "cb102a9b-d294-4172-b1b2-1c5b9f4b47df",
    "attempts": 0,
    "status": "running",
    "statusUrl": "https://async.scraperapi.com/jobs/cb102a9b-d294-4172-b1b2-1c5b9f4b47df",
    "query": "iphone",
    "sort_by": "price_lowest"
  },
  {
    "id": "e4abe7b8-9f71-4bcd-ae43-f2479aff013a",
    "attempts": 0,
    "status": "running",
    "statusUrl": "https://async.scraperapi.com/jobs/e4abe7b8-9f71-4bcd-ae43-f2479aff013a",
    "query": "android",
    "sort_by": "price_lowest"
  }
]

PreviousEbay Product Page API (Async)NextGoogle Search API (Async)

Last updated 5 months ago

Was this helpful?