Catalog coverage · primehatstore
Catalog coverage · primehatstore
Catalog coverage · primehatstore.com
Search products from primehatstore.com and retrieve product details as JSON through StoreRouter’s API. Access prices, images, descriptions, and available variant data, plus enriched attributes for filtering.
Snapshot from . Counts are approximate and refresh about daily.
Developer quickstart
export OCTOGEN_PLATFORM_API_KEY="your-api-key". Requests use Authorization: Bearer; the SDKs read this variable automatically. Keep the key on your server.curl -sS https://api.storerouter.ai/v1/products/search \ -H "Authorization: Bearer $OCTOGEN_PLATFORM_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "catalogs": ["primehatstore"], "q": "hats & headwear", "limit": 5 }'# Requires Python 3.11+ and uv; install from the public SDK repository:
# git clone https://github.com/octogen-ai/octogen-dev.git
# cd octogen-dev
# uv sync --project sdks/python
# Save this sample as search.py here, then run:
# uv run --project sdks/python python search.py
import asyncio
from octogen_ai_sdk import OctogenClient
async def main() -> None:
async with OctogenClient(base_url="https://api.storerouter.ai/v1") as client:
page = await client.search_products(
catalogs=["primehatstore"],
q="hats & headwear",
limit=5,
)
for product in page.items:
print(product.title, product.current_price, product.product_url)
asyncio.run(main())// Node.js 20+; install: npm install @octogen-ai/sdk
// Save this sample as search.mjs, then run: node search.mjs
import { OctogenClient } from "@octogen-ai/sdk";
const client = new OctogenClient({ baseUrl: "https://api.storerouter.ai/v1" });
const page = await client.searchProducts({
catalogs: ["primehatstore"],
q: "hats & headwear",
limit: 5,
});
for (const product of page.items) {
console.log(product.title, product.currentPrice, product.productUrl);
}Indexed snapshot from this search, verified by URL lookup. Selected fields only; prices and availability may have changed since retrieval.
Search finds indexed products by query and filters within this retailer’s catalog.Product URL lookup retrieves one product: index_only uses the index and returns 404 on a miss; auto checks the index before resolving a miss on demand. For a fresh page read where supported, use resolutionMode: "on_demand_only" with onDemandCachePolicy: "refresh". On-demand results may be partial and do not guarantee live price or availability.
Example product response
Inspect a product from the search example above, then retrieve its details through the API.
Indexed response retrieved . Price and availability reflect this response and may change.

New Era
$45.99In stock
Sizes: 6 7/8, 7, 7 1/8, 7 1/4, 7 3/8, 7 1/2, 7 5/8, 7 3/4, 8
Officially licensed MLB headwear from New Era, the premier cap manufacturer trusted by professional teams. This 59FIFTY fitted cap features authentic Washington Nationals branding in classic black and white colorway. Constructed from 100% polyester for durability and easy care, the structured design maintains its shape through regular wear. The gray under visor provides sun protection while adding visual depth. Perfect for dedicated fans seeking genuine team apparel with the quality and fit that defines New Era's reputation in baseball culture.
Source product pageProduct content returned by the lookup API, ready for a product page.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "primehatstore",
"product": {
"title": "New Era Washington Nationals 59FIFTY Fitted Hat Black White",
"brand": {
"name": "New Era"
},
"productUrl": "https://primehatstore.com/products/new-era-washington-nationals-black-white-59fifty-fitted-hat",
"currentPrice": 45.99,
"currency": "USD",
"inStock": true,
"description": "Officially licensed MLB headwear from New Era, the premier cap manufacturer trusted by professional teams. This 59FIFTY fitted cap features authentic Washington Nationals branding in classic black and white colorway. Constructed from 100% polyester for durability and easy care, the structured design maintains its shape through regular wear. The gray under visor provides sun protection while adding visual depth. Perfect for dedicated fans seeking genuine team apparel with the quality and fit that defines New Era's reputation in baseball culture.",
"primaryImage": {
"url": "https://cdn.shopify.com/s/files/1/0666/1351/0390/files/new-era-washington-nationals-59fifty-fitted-hat-black-white-front-side.png?v=1773782579",
"cdnUrl": "https://cdn.octogen.ai/4eed58028e4faa99e3c67341efbece43/9144ba4198412cea168e8bda1d990ec5.webp?request_id=9c5eac66-54ea-46da-971a-026314c20040",
"width": 2200,
"height": 2200,
"sizeBytes": 63358,
"mimeType": "image/webp"
},
"details": {
"materials": [],
"fit": [],
"dimensions": null,
"patterns": []
}
}
}StoreRouter classification and attributes. Use attribute_handles as search facet values.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "primehatstore",
"product": {
"enrichment": {
"type": "fitted hat",
"category_path": [
"Apparel & Accessories",
"Accessories",
"Hats & Headwear",
"Caps",
"Baseball Caps"
],
"styles": [
"sporty",
"casual",
"streetwear"
],
"attributes": {
"Fabric": [
"Polyester"
],
"Pattern": [
"Logo",
"Solid"
],
"Material": [
"Polyester"
],
"Occasion": [
"Casual"
],
"Graphic Type": [
"Logo Embroidery"
]
},
"attribute_handles": {
"fabric": [
"fabric__polyester"
],
"pattern": [
"pattern__logo",
"pattern__solid"
],
"material": [
"material__polyester"
],
"graphic_type": [
"graphic_type__logo_embroidery"
],
"occasion_general": [
"occasion_general__casual"
]
}
}
}
}curl -sS https://api.storerouter.ai/v1/products/lookup \
-H "Authorization: Bearer $OCTOGEN_PLATFORM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://primehatstore.com/products/new-era-washington-nationals-black-white-59fifty-fitted-hat",
"resolutionMode": "index_only"
}'Selected response fields are shown. API documentation
Catalog
Attributes
Each attribute below is a search facet: the bar shows the share of Primehatstore products that have it, and each value shows the share tagged with that value. A product can have several values, so these can add up to more than 100%.
Age Group
age_groups
Gender
gender
Pattern
pattern
Product color
color
Color family
color_family
Graphic Type
graphic_type
Headwear features
headwear_features
Material
material
| Field | Facet name | Source | Coverage | Values |
|---|---|---|---|---|
| Activewear | is_activewear | Merchant data | 100% | 2 |
| Product color | color | Merchant data | 98% | 40 |
| Color family | color_family | Merchant data | 98% | 12 |
| Age Group | age_groups | StoreRouter enrichment | 100% | 4 |
| Category at depth 0 | category_path.depth_0 | StoreRouter enrichment | 100% | 1 |
| Category at depth 1 | category_path.depth_1 | StoreRouter enrichment | 100% | 2 |
| Category at depth 2 | category_path.depth_2 | StoreRouter enrichment | 100% | 2 |
| Category at depth 3 | category_path.depth_3 | StoreRouter enrichment | 100% | 3 |
| Gender | gender | StoreRouter enrichment | 100% | 3 |
| Pattern | pattern | StoreRouter enrichment | 100% | 24 |
| Category at depth 4 | category_path.depth_4 | StoreRouter enrichment | 99% | 4 |
| Graphic Type | graphic_type | StoreRouter enrichment | 97% | 7 |
| Occasion | occasion_general | StoreRouter enrichment | 97% | 1 |
| Headwear features | headwear_features | StoreRouter enrichment | 54% | 3 |
| Material | material | StoreRouter enrichment | 31% | 18 |
| Fabric | fabric | StoreRouter enrichment | 14% | 13 |
| Season | season | StoreRouter enrichment | 7% | 2 |
| Jewelry material | jewelry_material | StoreRouter enrichment | 1% | 5 |
| Jewelry type | jewelry_type | StoreRouter enrichment | 1% | 2 |
| Care instructions | care_instructions | StoreRouter enrichment | <1% | 1 |
| Canonical brand name | brand_name | Brand | 98% | 6 |
Data
For agents
Every facet name and value on this page, ready for an agent or a script.
Are you an AI agent? Fetch https://storerouter.ai/llms.txt to learn how to get product data from StoreRouter, and how to make a storefront's products readable by agents.
One API key gives your agent search, product lookup, and similar-item results across every store StoreRouter indexes.
Get an API key