Trawl vs Terapeak: the Terapeak API alternative
Terapeak is eBay's research tool for sellers, now named Product Research, in Seller Hub and the eBay app. There is no Terapeak API. Trawl answers the same search as JSON.
What it is
Terapeak is the research page of eBay's Seller Hub. eBay now names it Product Research. It shows three years of sales as report figures, at no cost, to sellers with Seller Hub. It has no API. On 2026-10-08 eBay's developer site lists none.
For the sales behind those figures as data, create a free account and call the eBay Sold Listings API.
Side by side
| Terapeak (Product Research) | Trawl | |
|---|---|---|
| What it is | eBay's own research tool, now named Product Research. A page in Seller Hub, under Research, and a screen in the eBay app. | An HTTP API, GET /ebay/v1/sold, with a published OpenAPI document. A request in, JSON out. |
| Access | Sellers with access to Seller Hub. | Any account. The key is created at signup. |
| API | None. eBay's developer site lists no Terapeak API. eBay's API for sold items is Marketplace Insights, a Limited Release for approved partners. | One GET request with the key in a header. Samples in curl, Python and Node on the reference page. |
| History | The last three years of eBay sales. | Recorded sales, selected by sale date. The history guide reads a year, one month per call. |
| Search | Keyword or product id. Filters: category, condition, brand, colour, buyer and seller location. | Keyword, in one category or all. Filters: condition, item specifics, price, sale date, excluded words. No product id search. |
| What you get | Report figures: sales trend, average sold price, sold price range, average shipping cost and free-shipping count, sell-through rate for the last 90 days, number of sellers, selling format. | The sales themselves, one row each: price, shipping, sale date, condition, buying format, bids, item id. The script below computes the figures from them. |
| Marketplaces | All of eBay's marketplaces. | ebay.com and ebay.co.uk, one per request. |
| Price | No cost. Sourcing insights, a second tool, comes with a Basic Store subscription or above. | Credits: 1 per page of 100 results, 0 for an empty result. 250 credits a month free, then from $20 a month for 3,000. |
The same search on Trawl
A Product Research search names keywords, a condition and a date range. Trawl's search takes the same three. The script reads the sales back and computes the figures the tool shows: average sold price, sold price range, free shipping and selling format. It reads the key from TRAWL_API_KEY. The search costs 1 credit.
# product_research.py (pip install requests)
import os
import statistics
from collections import Counter
import requests
# A Product Research search: keywords, a condition and the last 90 days.
# The same search on Trawl, then the figures the tool shows, from the sales themselves.
r = requests.get(
"https://api.trawl.dev/ebay/v1/sold",
headers={"x-api-key": os.environ["TRAWL_API_KEY"]},
params={
"query": "nintendo switch oled",
"condition": "used",
"date_from": "2026-07-10",
"date_to": "2026-10-08",
"max_pages": 1, # up to 100 sales, 1 credit
},
timeout=30,
)
r.raise_for_status()
sold = r.json()
sales = sold["results"]
prices = [s["sale_price"] for s in sales]
free = sum(1 for s in sales if s["shipping_price"] == 0)
print(f"{sold['count']} sold, {sold['credits_charged']} credit")
print(f"average sold price {statistics.mean(prices):.2f}, sold price range {min(prices):.2f} to {max(prices):.2f}")
print(f"free shipping on {free} of {len(sales)}")
for fmt, n in Counter(s["buying_format"] for s in sales).most_common():
print(f"{fmt}: {n}")100 sold, 1 credit
average sold price 170.47, sold price range 9.00 to 360.00
free shipping on 36 of 100
Best Offer: 49
Buy It Now: 42
Auction: 9Where Terapeak is the better fit
A seller who wants the report in a browser, with no code, should use it. It is free with Seller Hub. It shows a sales trend and a sell-through rate. Trawl records sales only, so it cannot give a sell-through rate. Its three years may reach further back than Trawl's recorded sales for a query. It searches by product id; Trawl returns the ePID on a sale but does not search by it.
Where Trawl differs
Trawl is an API, so the sales go into your own code. Each sale is one row, with its own date, price and shipping. Any account gets a key; no seller account is needed. The scrape eBay sold listings Python guide shows a search and the median in a 30-line script. The eBay sold listings history guide reads a year of sales, one month per call. eBay's own API for sold items is the subject of Trawl vs the eBay Marketplace Insights API.