Alt API endpoint
Searches Alt's universal aggregator index -- live auction and fixed-price listings from Alt itself and every other source auction house its search carries (eBay, Fanatics Collect, Pristine Auction, Goldin, CardHobby, Memory Lane) -- by free-text query, category, source auction house, grading company, and listing type, in a caller-selected sort order. Only currently-live listings are returned; see alt-sold-listings for completed sales. See alt-categories for the accepted category/auction_house/grading_company/listing_type/sort values.
/alt/searchQuery parameters:
q (optional) — free-text search across item name, subject, brand, and
variety. Omit or pass * to browse everything.category (optional) — comma-separated card category filter. One or
more of BASEBALL_CARDS, POKEMON_CARDS, FOOTBALL_CARDS,
BASKETBALL_CARDS, POP-CULTURE_CARDS, HOCKEY_CARDS, SOCCER_CARDS,
ONE_PIECE_CARDS, OTHER_CARDS, TCG_CARDS, COMBAT_SPORTS_CARDS,
RACING_CARDS, MAGIC_CARDS, YUGIOH_CARDS, GOLF_CARDS,
TENNIS_CARDS. See alt-categories for live discovery.auction_house (optional) — comma-separated source auction house filter.
One or more of eBay, Fanatics Collect, Alt, Pristine Auction,
Goldin, CardHobby, Memory Lane. See alt-categories.grading_company (optional) — comma-separated grading company filter.
One or more of PSA, CGC, BGS, CSG, SGC, PSA/DNA, BVG,
BCCG, Factory Sealed, BAS, AUTHENTIC, TAG, RELABEL,
RECASE, JSA/BVG, REVIEW, INTERNAL, NEW/, BULK, OTHERS,
UNGRADED. See alt-categories.listing_type (optional) — comma-separated listing type filter. One or
more of AUCTION, FIXED_PRICE, EXTERNAL_AUCTION,
EXTERNAL_FIXED_PRICE. Omit to search auctions and fixed-price
listings from every source together. See alt-categories.sort (optional) — one of recommended (default), alt_value_desc,
alt_value_asc, price_desc, price_asc, watched_desc,
ending_soonest_asc, timestamp_desc.page (optional) — 1-based page number, default 1.per_page (optional) — results per page, default 24, max 100.Notable response behavior:
results[].auction_house tells you the listing's actual source — a
result is not necessarily an Alt listing.alt_value (Alt's own estimated market value) is only populated for
Alt's own native listings.brand (for example
Pokemon Base Set and Pokemon Base Set Japanese), and each language
printing has its own asset_id. For one of Alt's own listings, call
alt-listing to get cert_number.price on one of Alt's own live auctions is the current bid in US
dollars, before Alt's 20% buyer's premium.bid_count/watch_count reflect Alt's own aggregator tracking and may
be 0 for external listings Alt doesn't track engagement on.| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| id | 20 | |
| asset_id | 20 | |
| listing_id | 20 | |
| name | 20 | “2012 Upper Deck Jordan Unc Master Collection Letterman "I"…” and 16 other values |
| subject | 20 | Michael Jordan in all 20 |
| year | 20 | 1,995 to 2,012, median 2,008 |
| brand | 20 | Upper Deck (8), Upper Deck MJ Living Legend (3), Upper Deck Michael Jordan Maste… (2) and 5 more |
| variety | 20 | “Letterman "I"” and 8 other values |
| card_number | 20 | “L-MJ” and 16 other values |
| category | 20 | BASKETBALL_CARDS in all 20 |
| auction_house | 20 | Alt in all 20 |
| auction_name | 20 | Oct 02 - Oct 15, 2026 (12), Oct 09 - Oct 22, 2026 (8) |
| listing_type | 20 | AUCTION in all 20 |
| grading_company | 20 | PSA (16), CGC (3), BGS (1) |
| grade | 20 | 10 (8), 9 (5), 9.5 (3) and 3 more |
| autograph | 1 | 10 |
| serial | 2 | 5 to 8, median 5 |
| print_run | 2 | 5 to 23, median 5 |
| price | 20 | 18 to 3,100, median 31 |
| alt_value | 20 | 107.1 to 6,543.53, median 199.67 |
| bid_count | 13 | 1 to 12, median 2 |
| watch_count | 15 | 2 to 59, median 4 |
| view_count | 13 | 6 to 4,408, median 147 |
| expires_at | 20 | 2026-10-16 to 2026-10-23 |
| created_at | 20 | 2026-10-01 to 2026-10-13 |
| badges | 8 | median 2 entries |
| images | 20 | median 2 entries |
| pop | 18 | 1 to 578, median 95 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| q | string | No | Free-text search across item name, subject, brand, and variety. Omit or pass * to browse everything. | michael jordan | |
| category | string | No | Comma-separated card category filter Allowed values: BASEBALL_CARDS, POKEMON_CARDS, FOOTBALL_CARDS, BASKETBALL_CARDS, POP-CULTURE_CARDS, HOCKEY_CARDS, SOCCER_CARDS, ONE_PIECE_CARDS, OTHER_CARDS, TCG_CARDS, COMBAT_SPORTS_CARDS, RACING_CARDS, MAGIC_CARDS, YUGIOH_CARDS, GOLF_CARDS, TENNIS_CARDS. | ||
| auction_house | string | No | Comma-separated source auction house filter Allowed values: eBay, Fanatics Collect, Alt, Pristine Auction, Goldin, CardHobby, Memory Lane. | ||
| grading_company | string | No | Comma-separated grading company filter Allowed values: PSA, CGC, BGS, CSG, SGC, PSA/DNA, BVG, BCCG, Factory Sealed, BAS, AUTHENTIC, TAG, RELABEL, RECASE, JSA/BVG, REVIEW, INTERNAL, NEW/, BULK, OTHERS, UNGRADED. | ||
| listing_type | string | No | Comma-separated listing type filter. Omit to search auctions and fixed-price listings from every source together. Allowed values: AUCTION, FIXED_PRICE, EXTERNAL_AUCTION, EXTERNAL_FIXED_PRICE. | ||
| sort | string | No | Result order. Default recommended. Allowed values: recommended, alt_value_desc, alt_value_asc, price_desc, price_asc, watched_desc, ending_soonest_asc, timestamp_desc. | ||
| page | integer | No | 1-based page number, default 1 | ||
| per_page | integer | No | Results per page, default 24, max 100 | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/alt/search?q=coffee&category=BASEBALL_CARDS&auction_house=eBay&grading_company=PSA&listing_type=AUCTION&sort=recommended&page=1" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "michael jordan",
"page": 1,
"per_page": 24,
"total": 40845,
"results": [
{
"id": "463ed059-bda6-4e9b-8c16-bd15cd79d9b8",
"asset_id": "388b5eac-8130-4f27-93ab-f5be29cdac0f",
"listing_id": "463ed059-bda6-4e9b-8c16-bd15cd79d9b8",
"name": "2012 Upper Deck Jordan Unc Master Collection Sketch Autograph Michael Jordan #MJM7 /30",
"subject": "Michael Jordan",
"year": 2012,
"brand": "Upper Deck Jordan Unc Master Collection",
"variety": "Sketch Autograph",
"card_number": "MJM7",
"category": "BASKETBALL_CARDS",
"auction_house": "Alt",
"auction_name": "Sep 04 - Sep 17, 2026",
"listing_type": "AUCTION",
"grading_company": "BGS",
"grade": "8.5",
"serial": 3,
"print_run": 30,
"pop": 2,
"price": 541.17,
"alt_value": 3765.74,
"bid_count": 6,
"watch_count": 20,
"expires_at": "2026-09-18 01:05:00+00:00",
"images": [
{
"position": "FRONT",
"url": "https://onlyalt-images.s3.us-east-2.amazonaws.com/image/public/front.png"
}
]
}
]
}
}Request schema
No body schema
Response schema
#/definitions/alt.searchResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | alt.SearchResponse | No | ||||
| data.page | integer | No | ||||
| data.per_page | integer | No | ||||
| data.query | string | No | ||||
| data.results | array | No | ||||
| data.results[].alt_value | number | No | ||||
| data.results[].asset_id | string | No | ||||
| data.results[].auction_house | string | No | ||||
| data.results[].auction_name | string | No | ||||
| data.results[].autograph | string | No | ||||
| data.results[].badges | array | No | ||||
| data.results[].bid_count | integer | No | ||||
| data.results[].brand | string | No | ||||
| data.results[].card_number | string | No | ||||
| data.results[].category | string | No | ||||
| data.results[].created_at | integer | No | ||||
| data.results[].expires_at | string | No | ||||
| data.results[].grade | string | No | ||||
| data.results[].grading_company | string | No | ||||
| data.results[].id | string | No | ||||
| data.results[].images | array | No | ||||
| data.results[].images[].position | string | No | ||||
| data.results[].images[].url | string | No | ||||
| data.results[].listing_id | string | No | ||||
| data.results[].listing_type | string | No | ||||
| data.results[].name | string | No | ||||
| data.results[].pop | integer | No | ||||
| data.results[].price | number | No | ||||
| data.results[].print_run | integer | No | ||||
| data.results[].serial | integer | No | ||||
| data.results[].subject | string | No | ||||
| data.results[].variety | string | No | ||||
| data.results[].view_count | integer | No | ||||
| data.results[].watch_count | integer | No | ||||
| data.results[].year | integer | No | ||||
| data.total | integer | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 500 | Internal Server Error | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/alt/search?q=coffee&category=BASEBALL_CARDS&auction_house=eBay&grading_company=PSA&listing_type=AUCTION&sort=recommended&page=1" \
-H "x-api-key: $CRAWLORA_API_KEY"