Catalog coverage · nadri
Catalog coverage · nadri
Search products from nadri.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": ["nadri"], "q": "earrings", "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=["nadri"],
q="earrings",
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: ["nadri"],
q: "earrings",
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.

Ajoa
$30.25In stock
Sizes: One Size
Whether you're going on a boat or just daydreaming of one, pair this set of earrings with your next summer outfit. Featuring huggies with dangling anchor and helm
Source product pageProduct content returned by the lookup API, ready for a product page.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "nadri",
"product": {
"title": "AJOA VACAY HELM AND ANCHOR SET OF EARRINGS",
"brand": {
"name": "Ajoa"
},
"productUrl": "https://nadri.com/products/ajoa-vacay-helm-set-of-earrings",
"currentPrice": 30.25,
"currency": "USD",
"inStock": true,
"description": "Whether you're going on a boat or just daydreaming of one, pair this set of earrings with your next summer outfit. Featuring huggies with dangling anchor and helm ",
"primaryImage": {
"url": "https://cdn.shopify.com/s/files/1/1432/4428/products/UD41016GCZ_01copy.jpg?v=1755542898",
"cdnUrl": "https://cdn.octogen.ai/76077f7b80b9fbee2e546401e4a9b83a/31ee7558324465f6328202a4c7dc5e4c.webp?request_id=7ead950e-b539-4cc8-ac94-4a504f1fe6f8",
"width": 3680,
"height": 3680,
"sizeBytes": 236252,
"mimeType": "image/webp"
},
"details": {
"materials": [
"Brass"
],
"fit": [],
"dimensions": null,
"patterns": []
}
}
}StoreRouter classification and attributes. Use attribute_handles as search facet values.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "nadri",
"product": {
"enrichment": {
"type": "earrings",
"category_path": [
"Apparel & Accessories",
"Jewelry",
"Earrings"
],
"styles": [
"nautical",
"preppy",
"vacation"
],
"attributes": {
"Jewelry type": [
"Costume"
],
"Earring design": [
"Dangle",
"Huggie",
"Stud"
],
"Jewelry material": [
"Brass",
"Gold",
"Rhodium Plated"
]
},
"attribute_handles": {
"jewelry_type": [
"jewelry_type__costume"
],
"earring_design": [
"earring_design__dangle",
"earring_design__huggie",
"earring_design__stud"
],
"jewelry_material": [
"jewelry_material__brass",
"jewelry_material__gold",
"jewelry_material__rhodium_plated"
]
}
}
}
}curl -sS https://api.storerouter.ai/v1/products/lookup \
-H "Authorization: Bearer $OCTOGEN_PLATFORM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://nadri.com/products/ajoa-vacay-helm-set-of-earrings",
"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 Nadri 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%.
Product color
color
Color family
color_family
Jewelry material
jewelry_material
Jewelry type
jewelry_type
Earring design
earring_design
Pattern
pattern
Necklace design
necklace_design
| Field | Facet name | Source | Coverage | Values |
|---|---|---|---|---|
| Activewear | is_activewear | Merchant data | 100% | 1 |
| Product color | color | Merchant data | 99% | 10 |
| Color family | color_family | Merchant data | 99% | 8 |
| Age Group | age_groups | StoreRouter enrichment | 100% | 1 |
| 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% | 9 |
| Gender | gender | StoreRouter enrichment | 100% | 2 |
| Jewelry material | jewelry_material | StoreRouter enrichment | 97% | 15 |
| Jewelry type | jewelry_type | StoreRouter enrichment | 75% | 3 |
| Earring design | earring_design | StoreRouter enrichment | 50% | 11 |
| Pattern | pattern | StoreRouter enrichment | 40% | 32 |
| Necklace design | necklace_design | StoreRouter enrichment | 27% | 9 |
| Bracelet design | bracelet_design | StoreRouter enrichment | 13% | 10 |
| Ring design | ring_design | StoreRouter enrichment | 5% | 9 |
| Category at depth 3 | category_path.depth_3 | StoreRouter enrichment | 5% | 8 |
| Material | material | StoreRouter enrichment | 3% | 4 |
| Surface Finish | surface_finish | StoreRouter enrichment | 3% | 2 |
| Hardware finish | hardware_finish | StoreRouter enrichment | 2% | 2 |
| Category at depth 4 | category_path.depth_4 | StoreRouter enrichment | 1% | 2 |
| Chain link type | chain_link_type | StoreRouter enrichment | <1% | 1 |
| Fabric | fabric | StoreRouter enrichment | <1% | 1 |
| Canonical brand name | brand_name | Brand | 99% | 2 |
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