Detect datasets for a Shopify store
/v1/datasets/detectFinds the active datasets that are fed by a given Shopify store. It is
built for storefront integrations (such as a theme extension) that know
the shop's myshopify.com domain but not which dataset to point the
widget at.
How matching works
.myshopify.comis stripped from the domain to get the shop slug (my-store.myshopify.com→my-store), case-insensitively.- Your organization's active Shopify data sources whose endpoint contains that slug are collected.
- Their parent datasets are returned — but only those in
activestatus.
A store with no matching source, or whose datasets are all draft or
archived, yields detected: false and an empty list rather than an
error.
Good to know
- Because matching is a substring test on the slug, a short slug can
match more than one store (
shopmatchesmy-shopandshop-two). Use the full domain. - Only
datasetId,nameand the four store fields ofconfigare returned per dataset.
Query parameters
1The store's Shopify domain, for example my-store.myshopify.com. Trimmed and lower-cased before matching.
Response
true when at least one active dataset matched.
Matching active datasets. Empty when detected is false.
Unique id of the dataset.
Display name.
The four store fields of the dataset's configuration. Any that were never set are omitted.
Errors
19Every error is JSON with a single error string unless noted. Match on the status code; the message is for humans.
shopDomain is required and must be a string.The shopDomain query parameter is absent or empty.
shopDomain cannot be empty.shopDomain is blank after trimming.
curl -X GET "https://stylor.ai/api/v1/datasets/detect?shopDomain=my-store.myshopify.com" \
-H "Authorization: Bearer $STYLOR_API_KEY"{
"detected": true,
"datasets": [
{
"datasetId": "c9b3c6c0-9b0f-4f42-bf3f-2b7a6b1b9d31",
"name": "Spring 2026",
"config": {
"storeDomain": "example-boutique.com",
"storeUrl": "https://example-boutique.com",
"storeName": "Example Boutique",
"storeId": "58712345678"
}
}
]
}