130point API Alternative

Updated . Plan numbers are the ones on the developers page that day; the live plans table wins if they ever disagree.

Quick answer

130point is a free sold-sales search over eBay and the major auction houses, and as of November 1, 2026 it has no public API. If you need the same kind of data in your own app, the HobbyCardIndex sales endpoint returns a card's sold sales matched to the exact card and grade, with Best Offer accepted prices, bids and listing links, on plans from $99 a month with a free setup month by application.

What people searching for a 130point API want

130point is the search a lot of us open at a show: type a card, see what it sold for, including the accepted price on Best Offer listings that eBay itself hides. It's free, it's fast for a person, and it pulls from eBay and the big auction houses. What it isn't, as of November 1, 2026, is something you can call from code; its pages don't list developer access. The searches that land here are from people who want that data inside their own product: a comp list on a card page, a pricing tool for inventory, an overlay for a stream. That's a licensing question as much as a technical one, and it's what the commercial plans are for.

How the HobbyCardIndex sales endpoint is different

Everything lives under https://hobbycardindex.com/api/v1/ and takes your key in an X-API-Key header (an Authorization: Bearer header works too). Every successful response is wrapped as {"success": true, "data": {...}}; the examples on this page show what sits inside data. Prices are US dollars with two decimals.

130point runs a keyword search and shows every matching listing it finds, which is the right design for a person who can read titles. The sales endpoint starts from a card instead: find it with GET /prices/search or POST /scan, then GET /prices/{cardId}/sales returns the sales matched to that exact card, each tagged with its grade, the newest 100 per grade within your window, with a summary of count, average, low and high. There's no title cleanup on your side and a raw sale never lands in a PSA 10 average. The trade is that you need the card in the catalog first, which with 16 million-plus cards is almost always the case, and that it's paid.

Try it: Best Offer sales with the accepted price

curl 'https://hobbycardindex.com/api/v1/prices/12345/sales?days=30' \
  -H 'X-API-Key: hci_live_...'
{
  "card": {
    "id": 12345,
    "name": "Mike Trout #US175",
    "playerName": "Mike Trout"
  },
  "periodDays": 30,
  "summary": {
    "count": 14,
    "average": 2350.75,
    "low": 1900,
    "high": 2800
  },
  "sales": [
    {
      "soldAt": "2026-10-21T02:41:00Z",
      "price": 2150,
      "grade": "PSA 10",
      "gradingCompany": "PSA",
      "title": "2011 Topps Update Mike Trout RC #US175 PSA 10 Gem Mint",
      "auction": false,
      "saleType": "best_offer",
      "askingPrice": 2399.99,
      "bids": null,
      "source": "ebay",
      "url": "https://www.ebay.com/itm/...",
      "imageUrl": "https://..."
    },
    {
      "soldAt": "2026-10-28T17:04:00Z",
      "price": 2500,
      "grade": "PSA 10",
      "gradingCompany": "PSA",
      "title": "2011 Topps Update Mike Trout RC #US175 PSA 10",
      "auction": true,
      "saleType": "auction",
      "askingPrice": null,
      "bids": 23,
      "source": "ebay",
      "url": "https://www.ebay.com/itm/...",
      "imageUrl": "https://..."
    }
  ]
}

Example values, not live sales. On a best_offer sale, askingPrice is what the listing asked and price is what was accepted.

What each sale carries

Price and date, grade and grading company, the listing title, saleType (auction, buy_it_now or best_offer; null when the marketplace didn't say), askingPrice on Best Offer sales, bids on auctions, the marketplace in source (ebay, fanatics-collect, goldin, heritage or tcgplayer), a link to the listing and a link to its photo. Seller names aren't included, by design. The full field table is on the sold comps API page.

Where 130point is still the right tool

If you're checking one comp for yourself, keep using 130point, or open the card on our site; the HobbyCardIndex vs 130point page compares the two as tools for a person. Its keyword search will also surface things a catalog match won't, like a lot of three cards or a misdescribed listing, which is sometimes exactly what you want to see. The API is for when the comps have to live inside something you're building and showing to other people, with a licence that says you can.

What you get

Plans and prices

Commercial plans in US dollars, as listed on the developers page on November 1, 2026
PlanPriceRequests a monthPhoto scansSold-sale lookupsCert lookupsLookups a secondPast the requests and scans (up to 3x)
Lite$99 a month25,00025,0005,00015010$1 per 250 more
Growth Lite$249 a month125,000125,00025,00075015$1 per 500 more
Growth$499 a month500,000500,000100,0003,00020$1 per 1,000 more
Platformfrom $1,500 a month2,000,0001,500,000500,00050,000, plus 50,000 pop reports50Set up with Sean, invoiced; bulk price files included

Price history comes with every size. Sold-sale, cert and pop lookups stop at the plan's number and never run over. Two add-ons: pop reports plus cert lookups for $100 a month, which brings 32,000 of each to Lite, Growth Lite or Growth, and the daily price files for $450 a month on Growth Lite or Growth (included in Platform, not offered on Lite). Lite, Growth Lite and Growth are month to month by card, cancelled any time in Settings, API Access, and run to the end of the paid month.

The free setup month is 30 days on real data with no card: 1,000 requests and 1,000 photo scans a day, 500 sold-sale lookups and 100 cert lookups for the month. You apply in Settings, API Access once you're signed in, and Sean reviews each one. When the 30 days end, the first month of the plan you applied with is invoiced, and paying it keeps the key going. Full plan details are on the developers page.

Apply for a free setup month

Credit and data use

A commercial plan licenses the data for a product your users see. You can store the prices and price history you pull while the plan is active and use them on card pages, in charts, collection values and your own estimates. Sold-sale records can be shown to your users and kept in your product, but not turned into a standalone sales database, copied by the category or offered as a download. Card recognition stays with the scan endpoint: show our identifications, don't use them to build a recognizer of your own.

The terms ask for one link back to us somewhere on your site, such as "Prices and API supplied by Hobby Card Index". It does not need to be beside the prices or on your main page. When a plan ends, stored copies go within 30 days. The full wording is in the Terms of Service, section 8, and the shorter version is under Data use on the developers page.

Common questions

Does 130point have an API?

Not a public one, as of November 2026. 130point is a free sales-search site over eBay and the major auction houses, built for a person typing a search, and its pages don't list developer access. If that changes, their pages beat ours. The HobbyCardIndex API is a documented REST API with public plans and a free setup month.

How is the HobbyCardIndex sales endpoint different from a 130point search?

130point runs a keyword search and shows every matching listing it finds. Our sales endpoint starts from a card in a 16 million-plus catalog and returns sales matched to that exact card, each tagged with its grade, so you get the newest 100 per grade with a summary rather than a keyword's worth of listings to clean up.

Does it include Best Offer accepted prices like 130point?

Yes. A best_offer sale carries askingPrice, the listing's asking price, and price, the accepted offer. Auctions carry bids and Buy It Now sales come through as buy_it_now. saleType is null when the marketplace didn't report how the item sold, which happens on some non-auction sales recorded before September 2026.

Which marketplaces are in the sold sales?

eBay is by far the biggest share, and Fanatics Collect, Goldin, Heritage and TCGplayer sales are in there too, each tagged in the source field. We get them through a data partner, not direct agreements with the marketplaces, and that agreement is what lets us license the records to you to display in your own app.

Can I use it for free like 130point?

The API itself starts at $99 a month, but you can apply for a free setup month on real data with 500 sold-sale lookups to test with, no card needed. For checking a comp yourself with no code, our card pages show recent sales free, and 130point remains a good free search for a person at a keyboard.

How many sold-sale lookups does each plan include?

Lite has 5,000 a month, Growth Lite 25,000, Growth 100,000 and Platform 500,000; the free setup month has 500. One call to the sales endpoint is one lookup and one request, and sale lookups stop at the plan's number rather than running over. Each call returns the newest 100 sales per grade for the card.