Catalog coverage · hanselfrombasel
Catalog coverage · hanselfrombasel
Catalog coverage · hanselfrombasel.com
Search products from hanselfrombasel.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": ["hanselfrombasel"], "q": "underwear & sleepwear", "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=["hanselfrombasel"],
q="underwear & sleepwear",
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: ["hanselfrombasel"],
q: "underwear & sleepwear",
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.
Hansel from Basel
Hansel from Basel
Hansel from Basel
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.

Hansel from Basel
$32.00In stock
Sizes: 12-24 mos, 2-3 yrs, 4-5 yrs, 6-7 yrs
Strike a pose! These cozy cotton-blend crews feature fuzzy little pandas who just so happen to love doing yoga. Can you even bear it?!Mini + Me Sets include: 1pr kid's + 1pr men's crew, the perfect opportunity to match your mini :)
Source product pageProduct content returned by the lookup API, ready for a product page.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "hanselfrombasel",
"product": {
"title": "Downward Panda Mini + Me Men's Set",
"brand": {
"name": "Hansel from Basel"
},
"productUrl": "https://hanselfrombasel.com/products/downward-panda-bundle",
"currentPrice": 32,
"currency": "USD",
"inStock": true,
"description": "Strike a pose! These cozy cotton-blend crews feature fuzzy little pandas who just so happen to love doing yoga. Can you even bear it?!Mini + Me Sets include: 1pr kid's + 1pr men's crew, the perfect opportunity to match your mini :)",
"primaryImage": {
"url": "https://cdn.shopify.com/s/files/1/0780/4991/files/hfb_112390_downward_panda_mens_crew_ochre_mini_set.jpg?v=1717639218",
"cdnUrl": "https://cdn.octogen.ai/5eebb0331ceafda3b5049712fb83d23d/55c033de0730b193412d20a5edf128c8.jpeg?request_id=931028a1-dfcf-42ad-a653-c9124805dc5d",
"width": 1500,
"height": 2000,
"sizeBytes": 310951,
"mimeType": "image/jpeg"
},
"details": {
"materials": [
"cotton/nylon blend"
],
"fit": [],
"dimensions": null,
"patterns": []
}
}
}StoreRouter classification and attributes. Use attribute_handles as search facet values.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "hanselfrombasel",
"product": {
"enrichment": {
"type": "sock set",
"category_path": [
"Apparel & Accessories",
"Clothing",
"Underwear & Sleepwear",
"Socks",
"Crew / Mid-Calf"
],
"styles": [
"playful",
"casual",
"whimsical"
],
"attributes": {
"Fabric": [
"Cotton",
"Nylon / Polyamide"
],
"Pattern": [
"Animal"
]
},
"attribute_handles": {
"fabric": [
"fabric__cotton",
"fabric__nylon"
],
"pattern": [
"pattern__animal"
]
}
}
}
}curl -sS https://api.storerouter.ai/v1/products/lookup \
-H "Authorization: Bearer $OCTOGEN_PLATFORM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://hanselfrombasel.com/products/downward-panda-bundle",
"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 Hanselfrombasel 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
Pattern
pattern
Product color
color
Color family
color_family
Gender
gender
Fabric
fabric
| Field | Facet name | Source | Coverage | Values |
|---|---|---|---|---|
| Activewear | is_activewear | Merchant data | 100% | 2 |
| Product color | color | Merchant data | 98% | 47 |
| 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% | 3 |
| Category at depth 2 | category_path.depth_2 | StoreRouter enrichment | 100% | 7 |
| Pattern | pattern | StoreRouter enrichment | 100% | 38 |
| Category at depth 3 | category_path.depth_3 | StoreRouter enrichment | 99% | 7 |
| Gender | gender | StoreRouter enrichment | 98% | 3 |
| Fabric | fabric | StoreRouter enrichment | 97% | 22 |
| Category at depth 4 | category_path.depth_4 | StoreRouter enrichment | 89% | 9 |
| General Clothing Features | general_clothing_features | StoreRouter enrichment | 56% | 1 |
| Sustainability Features | sustainability_features | StoreRouter enrichment | 14% | 5 |
| Embellishments | embellishments | StoreRouter enrichment | 10% | 3 |
| Pants length type | pants_length_type | StoreRouter enrichment | 6% | 2 |
| Opacity | opacity_level | StoreRouter enrichment | 5% | 1 |
| Bottoms Closure | bottoms_closure | StoreRouter enrichment | 4% | 1 |
| Graphic Type | graphic_type | StoreRouter enrichment | 4% | 4 |
| Leg Shape | pants_leg_shape | StoreRouter enrichment | 4% | 2 |
| Material | material | StoreRouter enrichment | 3% | 5 |
| Bag/Case material | bag_case_material | StoreRouter enrichment | 2% | 1 |
| Bag closure type | bag_closure_type | StoreRouter enrichment | 2% | 1 |
| Bag Shape | bag_shape | StoreRouter enrichment | 2% | 1 |
| Carry options | carry_options | StoreRouter enrichment | 2% | 2 |
| Fit | fit_bottoms | StoreRouter enrichment | 2% | 1 |
| Front Closure | front_closure_type | StoreRouter enrichment | 2% | 2 |
| Sleeve length type | sleeve_length_type | StoreRouter enrichment | 2% | 1 |
| Front Closure Length | front_closure_length | StoreRouter enrichment | 2% | 3 |
| Neckline | neckline | StoreRouter enrichment | 2% | 5 |
| Season | season | StoreRouter enrichment | 2% | 3 |
| Front Opening | placket_type | StoreRouter enrichment | 2% | 1 |
| Sleeve Style | sleeve_style | StoreRouter enrichment | 2% | 4 |
| Top length type | top_length_type | StoreRouter enrichment | 2% | 3 |
| Tote handle type | tote_handle_type | StoreRouter enrichment | 1% | 2 |
| Collar Style | collar_style | StoreRouter enrichment | <1% | 2 |
| Fit (Tops) | fit_top | StoreRouter enrichment | <1% | 2 |
| Knit Style | knit_style | StoreRouter enrichment | <1% | 2 |
| Bag Size | bag_size | StoreRouter enrichment | <1% | 1 |
| Fabric Weight | fabric_weight | StoreRouter enrichment | <1% | 1 |
| Headwear features | headwear_features | StoreRouter enrichment | <1% | 1 |
| Size Type | size_group | StoreRouter enrichment | <1% | 1 |
| Canonical brand name | brand_name | Brand | 99% | 1 |
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