Collectibles – Text Search

This page describes the API for the Collectibles Text Search service. It allows you to search our extensive database of collectible items and their pricing information using text queries and filter results by attributes such as grading company, publisher, or year.

The API has four endpoints right now: one for searching the TCG card catalog, one for TCG card pricing, one for Comic/Manga pricing, and one for Sports card pricing.

Currently supported endpoints:

https://api.ximilar.com/collectibles/text/v2/tcg/list        // Search catalog of trading cards
https://api.ximilar.com/collectibles/text/v2/tcg/pricing     // Search prices of trading cards
https://api.ximilar.com/collectibles/text/v2/comics/pricing  // Search prices of comics/manga
https://api.ximilar.com/collectibles/text/v2/sport/pricing   // Search prices of sports cards

POST/text/v2/tcg/list

This endpoint lets you search our catalog of collectible trading cards using text queries like card names, sets, or series, or any other textual information related to collectibles.

It supports multiple categories, including Pokémon, Yu-Gi-Oh!, Magic: The Gathering, One Piece, Lorcana, and many more (see full taxonomy).

Required attributes

  • Name
    query_record
    Type
    dict
    Description

    A record containing the search query. Must include a _text_data field with the search text.

Optional attributes

  • Name
    page
    Type
    integer
    Default
    Default:1
    Description

    Page number for pagination (starts from 1).

  • Name
    size
    Type
    integer
    Default
    Default:10
    Max
    Maximum:20
    Description

    Number of results per page.

  • Name
    k
    Type
    integer
    Description

    Number of top results to consider for relevance ranking.

  • Name
    filter
    Type
    str
    Description

    String filter. Supported operators include: =, !=, >, >=, <, <=, EXISTS. See available filter fields below.

Returns

HTTP error code 2XX, if the method was OK, and other HTTP error code, if the method failed. The response body is a JSON object with the following fields:

  • Name
    answer_records
    Type
    array
    Description

    An array of collectible items matching the search query, each containing detailed information about the item including name, set, series, rarity, and other attributes.

  • Name
    answer_count
    Type
    integer
    Description

    Total number of items matching the search query across all pages.

  • Name
    page
    Type
    integer
    Description

    Current page number.

  • Name
    totalPages
    Type
    integer
    Description

    Total number of pages.

Request

POST
/text/v2/tcg/list
curl --location 'https://api.ximilar.com/collectibles/text/v2/tcg/list' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token __API_TOKEN__' \
--data '{
  "query_record": {
    "_text_data": "Pikachu ex 247 Surging Sparks"
  },
  "page": 1,
  "size": 10,
  "filter": "lang = 'en'"
}'

Response

{
  "answer_count": 571,
  "answer_records": [
    {
      "Subcategory": "Pokemon",
      "_id": "eb863290-c435-4b48-9ea5-ae3dc73fec4e",
      "card_number": "247",
      "lang": "en",
      "name": "Pikachu ex",
      "rarity": "Hyper Rare",
      "series": "Scarlet & Violet",
      "set": "Surging Sparks",
      "set_code": "SSP",
      "year": 2024
    },
    {
      "Subcategory": "Pokemon",
      "_id": "bc8f12eb-894e-46bc-ae81-48f2aff424fa",
      "card_number": "057",
      "lang": "en",
      "name": "Pikachu ex",
      "rarity": "Double Rare",
      "series": "Scarlet & Violet",
      "set": "Surging Sparks",
      "set_code": "SSP",
      "year": 2024
    },
    {
      "Subcategory": "Pokemon",
      "_id": "2bc0df4a-3d2c-47fa-a3d7-688add47a4fa",
      "card_number": "179",
      "lang": "en",
      "name": "Pikachu ex",
      "rarity": "Hyper Rare",
      "series": "Scarlet & Violet Series",
      "set": "Prismatic Evolutions",
      "set_code": "PRE",
      "year": 2025
    },
    {
      "Subcategory": "Pokemon",
      "_id": "358b4d8c-4f7f-471a-b2b9-5ef2c942e5bb",
      "card_number": "219",
      "lang": "en",
      "name": "Pikachu ex",
      "rarity": "Ultra Rare",
      "series": "Scarlet & Violet",
      "set": "Surging Sparks",
      "set_code": "SSP",
      "year": 2024
    },
    ...
  ],
  "page": 1,
  "query_records": [
    "Pikachu ex 247 Surging Sparks"
  ],
  "size": 10,
  "statistics": {
    "OperationTime": 718
  },
  "totalPages": 58
}

Available filter fields

You can filter the results using the filter parameter with the following fields:

  • Subcategory: e.g., Pokemon, Magic The Gathering
  • lang: language code (jp, en, zh_TW, zh_CN)
  • set_code: set code of the game (string)
  • year: year of release (numerical value)
  • card_number: card number (string)

Filter examples

"Subcategory = 'Magic The Gathering'"
"set_code = 'BW1'"
"lang = 'jp'"
"card_number = '247'"
"year < 2020"

The whole request with filter:

cURL

  curl --location 'https://api.ximilar.com/collectibles/text/v2/tcg/list' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Token __API_TOKEN__' \
  --data '{
    "query_record": {
      "_text_data": "Snow"
    },
    "filter": "Subcategory = 'Magic The Gathering'"
    "page": 1,
    "size": 10
  }'

POST/text/v2/tcg/pricing

This endpoint lets you search for trading card game (TCG) pricing data (listings) using text queries.

It returns historical sales from sources like eBay, Mercari, Rakuten, Rakuma, and others – offering a broad view of market trends for collectors and traders.

Required attributes

  • Name
    query_record
    Type
    dict
    Description

    A record containing the search query. Must include a _text_data field with the search text.

Optional attributes

  • Name
    page
    Type
    integer
    Default
    Default:1
    Description

    Page number for pagination (starts from 1).

  • Name
    size
    Type
    integer
    Default
    Default:10
    Max
    Maximum:20
    Description

    Number of results per page.

  • Name
    k
    Type
    integer
    Description

    Number of top results to consider for relevance ranking.

  • Name
    filter
    Type
    str
    Description

    String filter. Supported operators include: =, !=, >, >=, <, <=, EXISTS. See available filter fields below.

Returns

HTTP error code 2XX, if the method was OK, and other HTTP error code, if the method failed. The response body is a JSON object with the following fields:

  • Name
    answer_records
    Type
    array
    Description

    An array of collectible items that match the search query. Each item includes details such as name, set, series, rarity, price, and other attributes.

  • Name
    answer_count
    Type
    integer
    Description

    Total number of items matching the search query across all pages.

  • Name
    page
    Type
    integer
    Description

    Current page number.

  • Name
    totalPages
    Type
    integer
    Description

    Total number of pages.

Request

POST
/text/v2/tcg/pricing
curl --location 'https://api.ximilar.com/collectibles/text/v2/tcg/pricing' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token __API_TOKEN__' \
--data '{
  "query_record": {
    "_text_data": "pikachu ex 57"
  },
  "page": 1,
  "size": 20,
  "k": 10,
  "filter": "source = 'eBay' AND country_code = 'US'"
}'

Response

{
  "answer_count": 23,
  "answer_records": [
    {
      "Subcategory": "Pokemon",
      "_id": "f8f5e9a3-58d8-4ab3-9301-7dfd6ee11cdf",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2025-03-18",
      "img_link": "https://i.ebayimg.com/images/g/FtMAAOSw-x5n2YIG/s-l1600.jpg",
      "item_id": "v1|226652678923|0",
      "name": "Pokémon TCG Pikachu EX Power Keepers 57/108 Reverse Holo Common",
      "price": 29.95,
      "product_id": "9cd99375-fc93-4e3f-8a44-09475a31570e",
      "source": "eBay"
    },
    {
      "Subcategory": "Pokemon",
      "_id": "cb1c30b8-4282-4bd3-b134-5789b0eaedf0",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2024-11-23",
      "img_link": "https://i.ebayimg.com/images/g/-uMAAOSw~hhnQXE3/s-l1600.jpg",
      "item_id": "v1|375811108331|0",
      "name": "Pikachu 57/108 EX Power Keepers Non Holo 2007 Pokémon TCG NM",
      "price": 10.39,
      "product_id": "9cd99375-fc93-4e3f-8a44-09475a31570e",
      "source": "eBay"
    },
    ...
  ],
  "page": 1,
  "query_records": [
    "pikachu ex 57"
  ],
  "size": 10,
  "statistics": {
    "OperationTime": 4
  },
  "totalPages": 3
}

Available filter fields

You can use the filter parameter to narrow pricing results by:

  • Subcategory: e.g., Pokemon, Magic The Gathering
  • country_code: Country code (e.g., 'US', 'JP', )
  • price: item price (supports comparison operators)
  • source: data source (marketplaces such as 'eBay', 'TCGPlayer')
  • grade_company: grading company (e.g., 'PSA', 'BGS', 'CGC')
  • grade: grade value (e.g., '10', '9', '8')
  • date_of_sale: sale date (YYYY-MM-DD format)
  • date_of_creation: when the listing was added (YYYY-MM-DD format)
  • product_id: ID from our product catalog

Filter examples

"Subcategory = 'Pokemon'"
"source = 'eBay' AND country_code = 'US'"
"grade_company = 'PSA' AND grade >= '9'"
"price > 90 AND price < 100"
"date_of_sale >= '2024-01-01'"
"product_id = '9cd99375-fc93-4e3f-8a44-09475a31570e'"
"date_of_creation >= '2024-01-01'"
"price_sold > 0"

POST/text/v2/comics/pricing

This endpoint lets you search for comic book pricing data (listings) using text queries. It returns historical sales information for comics from Marvel, DC, and other publishers. The data comes from sources like eBay and other marketplaces, providing valuable insights for collectors and traders.

Required attributes

  • Name
    query_record
    Type
    dict
    Description

    A record containing the search query. Must include a _text_data field with the search text.

Optional attributes

  • Name
    page
    Type
    integer
    Default
    Default:1
    Description

    Page number for pagination (starts from 1).

  • Name
    size
    Type
    integer
    Default
    Default:10
    Max
    Maximum:20
    Description

    Number of results per page.

  • Name
    k
    Type
    integer
    Description

    Number of top results to consider for relevance ranking.

  • Name
    filter
    Type
    str
    Description

    String filter. Supported operators include: =, !=, >, >=, <, <=, EXISTS. See available filter fields below.

Returns

HTTP error code 2XX, if the method was OK, and other HTTP error code, if the method failed. The response body is a JSON object with the following fields:

  • Name
    answer_records
    Type
    array
    Description

    An array of comic items matching the search query, each containing detailed information about the item such as name, issue number, price_created, or price_sold.

  • Name
    answer_count
    Type
    integer
    Description

    Total number of items matching the search query across all pages.

  • Name
    page
    Type
    integer
    Description

    Current page number.

  • Name
    totalPages
    Type
    integer
    Description

    Number of total pages.

Request

POST
/text/v2/comics/pricing
curl --location 'https://api.ximilar.com/collectibles/text/v2/comics/pricing' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token __API_TOKEN__' \
--data '{
  "query_record": {
    "_text_data": "The punisher 102"
  },
  "page": 1,
  "size": 10,
  "k": 10
}'

Response

{
  "answer_count": 1000,
  "answer_records": [
    {
      "_id": "b75542a6-b821-4c4e-81b7-415c09bb2aeb",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2025-06-24",
      "img_link": "https://i.ebayimg.com/images/g/xokAAeSwK0ZoWezx/s-l1600.jpg",
      "item_id": "v1|326655748624|0",
      "name": "Marvel the Punisher #102 Comic Book (May 1995) Classic Bullseye Cover Low Print",
      "price": 39.0,
      "price_created": 39.0,
      "price_sold": null,
      "product_id": "4f01f084-5e2b-49ba-9929-67f1249fab87",
      "source": "eBay"
    },
    {
      "_id": "c3afc798-8f5d-4785-8a86-5f8414b2d691",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2024-06-30",
      "img_link": "https://i.ebayimg.com/images/g/aOEAAOSwM3dmgZQO/s-l1600.jpg",
      "item_id": "v1|204862611187|0",
      "name": "Comic The Punisher 102 May 1995 Marvel Chuck Dixon  Bullseye See Pics",
      "price": 99.99,
      "price_created": 99.99,
      "price_sold": null,
      "product_id": "4f01f084-5e2b-49ba-9929-67f1249fab87",
      "source": "eBay"
    },
    {
      "_id": "5de222ed-ca5c-49e2-8966-7b1db2e694bf",
      "country_code": "CA",
      "currency": "USD",
      "date_of_creation": "2025-04-07",
      "img_link": "https://i.ebayimg.com/images/g/V-IAAeSwOSxn9ERS/s-l1600.jpg",
      "item_id": "v1|187122358007|0",
      "name": "Punisher #102 Bullseye Cover May 1995 Marvel Comic Book Direct Ed Mint Condition",
      "price": 72.32,
      "price_created": 72.32,
      "price_sold": null,
      "product_id": "4f01f084-5e2b-49ba-9929-67f1249fab87",
      "source": "eBay"
    },
    {
      "_id": "ddb0518f-4fcd-4248-80dc-bc66708e8078",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2025-06-19",
      "img_link": "https://i.ebayimg.com/images/g/HxYAAeSw8FxoVFIc/s-l1600.jpg",
      "item_id": "v1|177208947700|0",
      "name": "Punisher #102 Newsstand Variant Bullseye Cover & App 1995 Marvel Comics",
      "price": 44.99,
      "price_created": 44.99,
      "price_sold": null,
      "product_id": "4f01f084-5e2b-49ba-9929-67f1249fab87",
      "source": "eBay"
    },
    {
      "_id": "7f81b636-af00-4c19-bbb2-c5d3879864bc",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2024-01-05",
      "img_link": "https://i.ebayimg.com/images/g/MnwAAOSwrHhll76V/s-l1600.jpg",
      "item_id": "v1|266601168721|0",
      "name": "1989 Marvel Comic The Punisher #18 NEWSSTAND FN+/VF",
      "price": 6.0,
      "price_created": 6.0,
      "price_sold": null,
      "product_id": "e7263534-a7a1-496a-9837-14642d833bff",
      "source": "eBay"
    }
  ],
  "page": 1,
  "query_records": [
    "the punisher 102"
  ],
  "size": 10,
  "statistics": {
    "OperationTime": 1
  },
  "totalPages": 100
}

Available filter fields

You can use the filter parameter to narrow pricing results by:

  • country_code: country code (e.g., 'US', 'CA')
  • price: price value (supports comparison operators)
  • price_created: original listing price
  • price_sold: sold price (if available)
  • source: data source (marketplaces like 'eBay')
  • grade_company: grading company (e.g., 'CGC', 'CBCS')
  • grade: grade value (e.g., '9.8', '9.6', '9.4')
  • date_of_creation: date the item was submitted
  • product_id: ID from our product catalog

Filter examples

"country_code = 'US'"
"source = 'eBay'"
"grade_company = 'CGC' AND grade >= '9.0'"
"price > 50 AND price < 100"
"date_of_creation >= '2024-01-01'"
"date_of_sale >= '2024-01-01'"
"product_id = '4f01f084-5e2b-49ba-9929-67f1249fab87'"
"price_sold > 0"
"grade_company = 'CGC'"

POST/text/v2/sport/pricing

This endpoint lets you search for sports card pricing data (listings) using text queries.

It returns historical sales data from sources like eBay, Mercari, Rakuten, Rakuma, and others – offering valuable market insights for collectors and traders across sports categories like basketball, baseball, football, hockey, soccer, and MMA.

Required attributes

  • Name
    query_record
    Type
    dict
    Description

    A record containing the search query. Must include a _text_data field with the search text.

Optional attributes

  • Name
    page
    Type
    integer
    Default
    Default:1
    Description

    Page number for pagination (starts from 1).

  • Name
    size
    Type
    integer
    Default
    Default:10
    Max
    Maximum:20
    Description

    Number of results per page.

  • Name
    k
    Type
    integer
    Description

    Number of top results to consider for relevance ranking.

  • Name
    filter
    Type
    str
    Description

    String filter. Supported operators include: =, !=, >, >=, <, <=, EXISTS. See available filter fields below.

Returns

HTTP error code 2XX, if the method was OK, and other HTTP error code, if the method failed. The response body is a JSON object with the following fields:

  • Name
    answer_records
    Type
    array
    Description

    An array of sports card items matching the search query, each containing detailed information about the item such as name, Subcategory, price_created, price_sold, grade, and other attributes.

  • Name
    answer_count
    Type
    integer
    Description

    Total number of items matching the search query across all pages.

  • Name
    page
    Type
    integer
    Description

    Current page number.

  • Name
    totalPages
    Type
    integer
    Description

    Total number of pages.

Request

POST
/text/v2/sport/pricing
curl --location 'https://api.ximilar.com/collectibles/text/v2/sport/pricing' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token __API_TOKEN__' \
--data '{
  "query_record": {
    "_text_data": "michael jordan 1993 skybox"
  },
  "page": 1,
  "size": 10,
  "k": 10
}'

Response

{
  "answer_count": 1000,
  "answer_records": [
    {
      "Subcategory": "Basketball",
      "_id": "534d3075-0e44-45f9-8776-b3a892708122",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2025-05-01",
      "date_of_sale": null,
      "grade": 8.5,
      "grade_company": "SGC",
      "img_link": "https://i.ebayimg.com/images/g/pjsAAeSw-WZoEvWP/s-l1600.jpg",
      "item_id": "v1|335939375891|545483627395",
      "name": "1993-94 Skybox Premium Dynamic Dunks Michael Jordan #D4 SGC 8.5 HOF",
      "price": 93.4,
      "price_created": 93.4,
      "price_sold": null,
      "product_id": "c0911e4c-6fd4-4f91-abea-a1abe97e7c78",
      "source": "eBay",
      "variation": null,
      "version": "Non-Foil"
    },
    {
      "Subcategory": "Basketball",
      "_id": "7be76cf6-d195-425a-8e00-952d2c0e161f",
      "country_code": "US",
      "currency": "USD",
      "date_of_creation": "2024-12-21",
      "date_of_sale": null,
      "grade": 8.0,
      "grade_company": "PSA",
      "img_link": "https://i.ebayimg.com/images/g/Io4AAOSwq0pnZyb-/s-l1600.jpg",
      "item_id": "v1|356396655643|0",
      "name": "1993-94 Skybox Premium Michael Jordan Dynamic Dunks #D4",
      "price": 104.99,
      "price_created": 104.99,
      "price_sold": null,
      "product_id": "c0911e4c-6fd4-4f91-abea-a1abe97e7c78",
      "source": "eBay",
      "variation": null,
      "version": "Non-Foil"
    },
    ...
  ],
  "page": 1,
  "query_records": [
    "michael jordan 1993 skybox"
  ],
  "size": 10,
  "statistics": {
    "OperationTime": 3
  },
  "totalPages": 100
}

Available filter fields

You can use the filter parameter to narrow pricing results by:

  • Subcategory: e.g., Basketball, Baseball, Football, Hockey
  • country_code: country code (e.g., 'US', 'CA')
  • price: price value (supports comparison operators)
  • price_created: original listing price
  • price_sold: sold price (if available)
  • source: data source (marketplaces like 'eBay')
  • grade_company: grading company (e.g., 'PSA', 'BGS', 'SGC')
  • grade: grade value (e.g., '10', '9.5', '9', '8')
  • date_of_creation: date the item was submitted
  • date_of_sale: sale date (YYYY-MM-DD format)
  • product_id: ID from our product catalog

Filter examples

"Subcategory = 'Basketball'"
"source = 'eBay'"
"grade_company = 'PSA' AND grade >= '9.0'"
"price > 50 AND price < 200"
"date_of_creation >= '2024-01-01'"
"date_of_sale >= '2024-01-01'"
"product_id = 'c0911e4c-6fd4-4f91-abea-a1abe97e7c78'"
"price_sold > 0"
"version = 'Non-Foil'"
"country_code = 'US'"

Was this page helpful?