Migration guide
Marketplace Insights API alternative
Marketplace Insights is eBay’s first-party API for sold data — and it is a limited-release API behind an approval gate. Grail gives you the same recent sold history over a self-serve JSON endpoint you can call in a minute.
Background
What the Marketplace Insights API is
The Marketplace Insights API is eBay’s first-party REST surface for sold and completed item data. It answers the question developers care about most — what did this actually sell for — and it is the one first-party route to that answer.
The catch is access. It is a limited-release API: you must apply through eBay’s Business account program, and approval is not guaranteed. There is no self-serve signup, and access is frequently restricted or unavailable to smaller teams and solo developers. Getting in can take an application, a business account, and a wait — and once you are in, you still handle eBay’s OAuth and quota rules.
So the “official” path to sold data is real, but it is gated. For most developers, the honest summary is: excellent data, hard to reach.
Why it is hard now
The friction, up front
- —Limited release: access is gated behind eBay’s Business-level approval — no self-serve signup.
- —Approval may not come: applications are reviewed and can be declined, so the path is not guaranteed.
- —OAuth on top: even with access, you manage eBay OAuth credentials, token refresh, and quota rules.
- —Aggregate-heavy: the response is designed around summaries, so building per-listing sold history takes extra work.
- —Slow to reach: application plus business account plus wait — not a “start coding in five minutes” API.
The replacement
How Grail replaces it
Grail returns the same kind of recent sold history — up to 240 real eBay sold listings per call from roughly the last 90 days — over a self-serve JSON endpoint. You create a free account, mint a key, and call GET /v1/scrape. No application, no business-account gate, no approval wait.
For cards, Grail also brings in TCGplayer data alongside eBay US sold listings, so a single endpoint covers both marketplaces instead of two integrations. Each row carries 36 fields with provenance — the source listing and when it was observed — and a median/range summary you can use directly.
Self-serve access
Create a free account and get a working key immediately — no approval, no business-account gate.
Up to 240 rows per call
Real eBay sold listings from the recent sold window, returned as structured JSON.
eBay US sold + TCGplayer
Cards are covered on both eBay sold data and TCGplayer from the one endpoint.
Median-after-cleaning, opt-in
Pass relevance=true to compute the median over the cleaned set of sold rows.
REST + MCP connector
Use plain HTTP, or connect an AI agent through the hosted MCP server.
Free to start
100 requests a month free, no card required.
Code
Make the call
curl
curl -H "Authorization: Bearer $GRAIL_KEY" \
"https://grail.solutions/v1/scrape?keyword=psa+10+charizard&count=240&sold=true&relevance=true"Python
import requests
KEY = "grail_..." # free key: https://grail.solutions/signup
r = requests.get(
"https://grail.solutions/v1/scrape",
params={"keyword": "psa 10 charizard", "count": 240, "sold": "true", "relevance": "true"},
headers={"Authorization": f"Bearer {KEY}"},
)
data = r.json()
print(data["rawMedian"]) # median over the sold set
print(len(data["items"])) # up to 240 real sold listings
print(data["items"][0]["endedAt"])Note: prices come back as decimal strings — cast to float before aggregating. Get a key at /signup — 100 requests a month free, no card — then mint it at /dashboard/api-keys.
FAQ
Is there a self-serve alternative to the Marketplace Insights API?
Yes. Grail returns recent sold history — up to 240 real eBay sold listings per call — over a self-serve JSON endpoint. You create a free account, get a key, and call GET /v1/scrape without an application or approval.
Do I need Business-level approval or an eBay business account?
No. Grail issues its own key from a free account, 100 requests a month with no card. There is no eBay approval gate.
How much sold history do I get?
Roughly the last 90 days of real eBay sold listings, up to 240 rows per request, each carrying 36 fields and its source listing as provenance.
Does it cover trading cards?
Yes. Grail brings eBay US sold listings together with TCGplayer data for cards, so graded and raw comps come from one endpoint instead of two.
More guides & starting points
Start free — 100 requests a month.
No credit card. Your own key in the dashboard in under a minute.
Create free account