API Referencev1

Products (v1)

GET /v1/products — Legacy query-string product search.

GET https://api.pricehero.ai/v1/products

Legacy. Prefer v3 catalog search for new integrations.

Backward-compatible endpoint: free-text search and options are passed as query parameters.

Request

curl "https://api.pricehero.ai/v1/products?search=Louis+Vuitton+Speedy&category=handbags%2Cwatches&model=model_abc%2Cmodel_def&style=style_xyz&page=0&page_size=15" \
  -H "Authorization: Bearer ph_test_YOUR_KEY"

Query parameters

ParameterTypeDefaultDescription
searchstringFree-text search
attributestringproductWhich taxonomy node rows to return: product, model, style, brand, category, family, case, or dial. Drives search filtering. Invalid values fall back to product.
pagenumber0Page index (0-based)
page_sizenumber15Page size (max 100)

Optional attribute facets

Use extra query parameters to narrow results. Catalog attributes (brand, model, style, family, case, dial, …) use the same rules as v3 catalog search: OR within a parameter (comma-separated ids), AND across parameters.

  • category — Comma-separated category names or IDs that scope the search. Omit to use the default handbags,watches.

Examples: category=handbags,watches, brand=brand_aaa,brand_bbb, model=model_aaa,model_bbb, style=style_xxx, case=case_xxx, dial=dial_yyy.

Your API key must allow v1. A 403 is returned if the key cannot access v1.

Response

Successful responses include success, data (matching rows), echo search, counts, pagination, and stats (facet hit counts for the page). Product rows include id, attributes, variants (with market_estimates, historical_estimates, pricing_data, images, and thumbnails when available).

{
  "success": true,
  "data": [
    {
      "id": "product_K9xLpQ2vZrT7mN4cHs8YbEwUdA1FgR6jX0qP",
      "attributes": [
        { "field": "category", "id": "handbags", "name": "Handbags" },
        {
          "field": "brand",
          "id": "brand_R7xVn3LpQ2sK8mTzH5YwE9aU4FbG1JdC6uN",
          "name": "Louis Vuitton"
        }
      ],
      "variants": [
        {
          "id": "variant_Z4mQx8TnLpR2sV7cHk9YwE5aU1FbG6JdC3uN",
          "fields": [{ "field": "size", "name": "Medium" }],
          "market_estimates": [
            {
              "source": "google_shopping",
              "region": "NA",
              "A": 5190,
              "B": 4605,
              "C": 4290,
              "D": 3340
            }
          ],
          "historical_estimates": [{ "region": "NA", "url": "https://…" }],
          "pricing_data": [{ "region": "NA", "url": "https://…" }],
          "popularity": 317,
          "images": ["https://…"],
          "thumbnails": ["https://…"]
        }
      ],
      "popularity": 317,
      "images": ["https://…"],
      "thumbnails": ["https://…"]
    }
  ],
  "search": "Louis Vuitton Neverfull",
  "results": 1,
  "total_results": 24,
  "page": 0,
  "total_pages": 2,
  "stats": {
    "id": { "product_K9xLpQ2vZrT7mN4cHs8YbEwUdA1FgR6jX0qP": 1 },
    "nbWordsMatched": 4
  }
}

Credits: catalog + pricing modules per successful billable response — see Credits.

Products (v1) — Price Hero Docs