Developers
ohhORACLE API v1
Base URL /v1. Send your key as X-API-Key (or Authorization: Bearer). Requests without a key get the anonymous limit. One key works across every category.
| GET /v1/search | q (fuzzy, typo-tolerant), kind, game, set, number, language, year, page, pageSize (≤100) |
|---|---|
| GET /v1/cards | Same filters (list form). Returns every collectible type, not only cards. |
| GET /v1/cards/:id | One item by Oracle ID, with its catalog details |
| GET /v1/sets | Sets and series: kind, game, q, page, pageSize (≤250) |
kind is one of: comics, manga, cards, sports, stamps, coins (toys, magazines, and slabs are coming).
Example
curl -H "X-API-Key: ohk_free_..." "https://<host>/v1/search?q=action+comics&kind=comics"
{"total":null,"page":1,"pageSize":24,"data":[{"id":119805,"kind":"cards","category":"tcg","game":"pokemon",
"name":"Charizard ex","number":"6/165","set":"151","language":"English","year":2023,"rarity":"Double Rare",
"finish":null,"title":"Charizard ex 6/165 151","image_url":null,"source":"tcgdex"}]}The API returns catalog data only. image_url is always null: third-party card images are not part of the API (our own item photos may be added later).
Rate limits
Every response carries X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset and X-Plan. Over the limit returns 429 with Retry-After.
Errors
401 invalid_api_key · 404 not_found · 429 rate_limited · 500 internal_error