Still draft. This release collapses the discovery-chain surface from
0.1.0 into three standalone, identically-filtered endpoints. Anything
built against 0.1.0's paths or parameters needs to migrate — nothing below
is additive-only.
Changed (breaking)
- The capped-sample endpoint, previously
GET /v1/catalog/sample, is nowGET /api/v1/sample— its cap is raised from 25 rows to 100 - The complete-set endpoint, previously
GET /v1/catalog/products, is nowGET /api/v1/catalog— cursor-paginated, unchanged in that respect - The coverage endpoint, previously
GET /v1/catalog/coverage, is nowGET /api/v1/coverage - The old date-range parameters are renamed to
start_date/end_date— same ISO 8601 format, still filtering oncrawl_date - The Product row's price field is replaced by
mrp,selling_price, anddiscount_pct— there is no single combined price field anymore - Filters —
retailer,category,department,rcd,start_date,end_date— are now identical and optional on all three endpoints; no endpoint depends on a value proven by an earlier call - Keys are created in the console, not issued out of band. Sign in, name a key, create it — the secret is shown exactly once and never again. See Authentication.
- Keys do not expire. Revoking is the only thing that ends one, and it takes effect on the next request. Hold as many as you need, one per integration.
- The sandbox/production split is gone. There is one kind of key and it reads the catalog directly; there is no tier to request an upgrade to
- The base URL is
https://orbix-fastapi-uat.stylumia.comand every endpoint sits under/api/v1— previously/v1 - Rate limits are counted per team, not per key
Added
departmentfilter, alongsideretailerandcategoryrcdfilter — one or moreretailer:category:departmenttriples, comma-separated, shorthand for the three individual filtersunknown_departmenterror code (400, not retryable), matching the shape ofunknown_retailerandunknown_categorymeta.coverageon every response, including/api/v1/sampleand/api/v1/catalog— combinations matched, matching and corpus row counts, and the date range spanned, so one request answers both "what did I get" and "how much exists"- The Explorer is public — build a request, read the schema, and see an example response without signing in; signing in is only required to run a request against live data
Removed
- The retailer-listing endpoint — no replacement; call
GET /api/v1/coveragewith no filters to see every retailer your team can see - The category-listing endpoint — no replacement;
GET /api/v1/coveragecovers this too - The discovery-chain narrative (list retailers, then categories, then
coverage, then pull rows — each step proving the next) — every endpoint
now works standalone; a wrong filter value returns
valid_optionsnaming the real ones instead