Catalog coverage · materialgood
Catalog coverage · materialgood
Catalog coverage · materialgood.com
Search products from materialgood.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": ["materialgood"], "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=["materialgood"],
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: ["materialgood"],
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.
Material Good
Material Good
Suzanne Kalan
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.

Material Good
$12,650.00In stock
One-of-a-kind drop earrings showcasing biwa keshi pearls suspended below pavé diamond circles, green tourmaline, and reddish orange coral pieces. The dramatic length of these one-of-a-kind earrings is punctuated by eye-catching organic shapes, coming together to form the ideal summer drop. This unique design is a celebration of summer motifs and stunning craftsmanship.
Source product pageProduct content returned by the lookup API, ready for a product page.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "materialgood",
"product": {
"title": "Coral & Pearl Drop Earrings",
"brand": {
"name": "Material Good"
},
"productUrl": "https://materialgood.com/products/coral-pearl-drop-earrings",
"currentPrice": 12650,
"currency": "USD",
"inStock": true,
"description": "One-of-a-kind drop earrings showcasing biwa keshi pearls suspended below pavé diamond circles, green tourmaline, and reddish orange coral pieces. The dramatic length of these one-of-a-kind earrings is punctuated by eye-catching organic shapes, coming together to form the ideal summer drop. This unique design is a celebration of summer motifs and stunning craftsmanship.",
"primaryImage": {
"url": "https://cdn.shopify.com/s/files/1/0561/5190/0369/products/MGEarring12-00051a1.jpg?v=1669416826",
"cdnUrl": "https://cdn.octogen.ai/c4c95a9914e3ad55149dc197b9d869cc/5da061afa17c90640745cdffcbac7854.webp?request_id=4088dfee-334a-4ef8-b62a-d74d2780bcbe",
"width": 2048,
"height": 2048,
"sizeBytes": 78896,
"mimeType": "image/webp"
},
"details": {
"materials": [
"18K yellow gold"
],
"fit": [],
"dimensions": null,
"patterns": []
}
}
}StoreRouter classification and attributes. Use attribute_handles as search facet values.
JSON response excerpt
{
"source": "indexed",
"catalogKey": "materialgood",
"product": {
"enrichment": {
"type": "drop earrings",
"category_path": [
"Apparel & Accessories",
"Jewelry",
"Earrings"
],
"styles": [
"eclectic",
"luxurious",
"bohemian"
],
"attributes": {
"Pattern": [
"Organic"
],
"Jewelry type": [
"Fine Jewelry"
],
"Earring design": [
"Dangle",
"Drop"
],
"Jewelry material": [
"Diamond",
"Gold",
"Pearl",
"Stone"
]
},
"attribute_handles": {
"pattern": [
"pattern__organic"
],
"jewelry_type": [
"jewelry_type__fine_jewelry"
],
"earring_design": [
"earring_design__dangle",
"earring_design__drop"
],
"jewelry_material": [
"jewelry_material__diamond",
"jewelry_material__gold",
"jewelry_material__pearl",
"jewelry_material__stone"
]
}
}
}
}curl -sS https://api.storerouter.ai/v1/products/lookup \
-H "Authorization: Bearer $OCTOGEN_PLATFORM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://materialgood.com/products/coral-pearl-drop-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 Materialgood 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%.
Gender
gender
Jewelry material
jewelry_material
Product color
color
Color family
color_family
Pattern
pattern
Earring design
earring_design
Band color
band_color
Case color
case_color
Dial color
dial_color
Band pattern
band_pattern
Watch material
watch_material
Dial pattern
dial_pattern
Watch case shape
watch_case_shape
Watch movement type
watch_movement_type
Case pattern
case_pattern
Ring design
ring_design
Necklace design
necklace_design
Watch features
watch_features
| Field | Facet name | Source | Coverage | Values |
|---|---|---|---|---|
| Activewear | is_activewear | Merchant data | 100% | 1 |
| Product color | color | Merchant data | 60% | 40 |
| Color family | color_family | Merchant data | 60% | 12 |
| 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% | 7 |
| Age Group | age_groups | StoreRouter enrichment | 99% | 1 |
| Gender | gender | StoreRouter enrichment | 99% | 3 |
| Jewelry material | jewelry_material | StoreRouter enrichment | 77% | 15 |
| Jewelry type | jewelry_type | StoreRouter enrichment | 77% | 1 |
| Pattern | pattern | StoreRouter enrichment | 40% | 27 |
| Earring design | earring_design | StoreRouter enrichment | 25% | 11 |
| Category at depth 3 | category_path.depth_3 | StoreRouter enrichment | 24% | 4 |
| Band color | band_color | StoreRouter enrichment | 22% | 14 |
| Case color | case_color | StoreRouter enrichment | 22% | 9 |
| Dial color | dial_color | StoreRouter enrichment | 22% | 17 |
| Watch display | watch_display | StoreRouter enrichment | 22% | 1 |
| Band pattern | band_pattern | StoreRouter enrichment | 22% | 6 |
| Watch material | watch_material | StoreRouter enrichment | 22% | 8 |
| Dial pattern | dial_pattern | StoreRouter enrichment | 21% | 17 |
| Watch case shape | watch_case_shape | StoreRouter enrichment | 21% | 6 |
| Watch movement type | watch_movement_type | StoreRouter enrichment | 21% | 3 |
| Case pattern | case_pattern | StoreRouter enrichment | 21% | 6 |
| Ring design | ring_design | StoreRouter enrichment | 21% | 11 |
| Necklace design | necklace_design | StoreRouter enrichment | 20% | 11 |
| Watch features | watch_features | StoreRouter enrichment | 19% | 19 |
| Bracelet design | bracelet_design | StoreRouter enrichment | 9% | 7 |
| Sustainability Features | sustainability_features | StoreRouter enrichment | <1% | 3 |
| Bag closure type | bag_closure_type | StoreRouter enrichment | <1% | 1 |
| Category at depth 4 | category_path.depth_4 | StoreRouter enrichment | <1% | 2 |
| Chain link type | chain_link_type | StoreRouter enrichment | <1% | 1 |
| Graphic Type | graphic_type | StoreRouter enrichment | <1% | 1 |
| Hardware finish | hardware_finish | StoreRouter enrichment | <1% | 1 |
| Bag/Case storage features | bag_case_storage_features | StoreRouter enrichment | <1% | 1 |
| Canonical brand name | brand_name | Brand | 96% | 28 |
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