OrbioShop Products API
List products
Returns the store's active products with pagination.
GET https://{your-subdomain}.shop.orbiocloud.com/api/public/shop/{your-subdomain}/products
Header: X-API-Key: your_api_keyQuery parameters
page - page number (default 1)
limit - items per page
sort / order - sort field and direction
search - free-text match on product name
category - a category SLUG; matches by membership, so a product in multiple categories is returned for each
brand - a brand SLUG
featured=true - only products flagged as featured
preorder=true - only products flagged as pre-order
curl 'https://your-subdomain.shop.orbiocloud.com/api/public/shop/your-subdomain/products?category=example-category&limit=12' \
-H 'X-API-Key: your_api_key'Response
{
"products": [
{
"id": "...",
"name": "Example Product",
"slug": "example-product",
"price": 49.99,
"images": [{ "url": "https://.../image.webp", "is_primary": true }],
"category": { "id": "...", "name": "Example Category", "slug": "example-category" },
"brand": { "name": "Example Brand", "slug": "example-brand" },
"is_featured": false,
"is_preorder": false
}
],
"pagination": { "total": 44, "page": 1, "limit": 12 }
}The returned category object is the product's primary category, which may differ from the category you filtered on (filtering is membership-based).
Related endpoints
GET .../products/{slug} - a single product
GET .../products/{slug}/related - related products
GET .../products/{slug}/reviews - product reviews
GET .../categories - active categories (empty categories are hidden)
GET .../brands - brands
Caching
Product and category responses are cached server-side for about 60 seconds, so a change made in the dashboard appears within roughly a minute.