Fetch product by sku

Fetch product by sku Deprecated. Use https://graphql.enad.io instead.

GET/api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku
API
Shopper
Updated
Apr 26, 2026

shopper-api:GET:/api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku

Fetch product by sku Deprecated. Use https://graphql.enad.io instead.

API ownership

  • API family: Shopper API
  • Best for: Public storefront catalog reads and shopper-facing product discovery.
  • Prefer Search API for: New product discovery, facets, autocomplete, and other search-heavy storefront flows.
  • Do not use from: Trusted admin integrations that create, update, or delete merchant-owned data.
  • Guide route: /apis/shopper/latest

The OpenAPI contract defines the method, path, parameters, request body, and responses for this operation.

Operation

  • Method: GET
  • Path: /api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku
  • Summary: Fetch product by sku
  • Description: Fetch product by sku Deprecated. Use https://graphql.enad.io instead.
  • OpenAPI contract: shopper-api
  • Operation ID: Not documented in the OpenAPI contract.

Operation key uses API family, method, and path because this OpenAPI contract does not publish an operation ID.

Parameters3 parameters
NameInRequiredTypeDescription
skupathYesstringThe product sku
localepathYesstringAlpha 2 country code. e.g se
marketpathYesstringFilter to only get related information to the market
Request bodyNo documented body

Not documented in the OpenAPI contract.

Responses3 statuses
StatusDescriptionContent
200Productapplication/json (object)
404Product not foundapplication/json (object)
500Internal server errorapplication/json (object)

200 - object

Product With Bundles Response

PropertyTypeRequiredDetails
dataobjectNo-
Product With Bundles
PropertyTypeRequiredDetails
attributesobjectNo-
brandsobjectNo-
bundlesobject[]No-
categoriesobject[]No-
collectionsobject[]No-
created_atstringNo-
custom_fieldsobjectNo-
descriptionstringNo-
filesobject[]No-
html_descriptionstringNo-
html_short_descriptionstringNo-
idstringNo-
imagesobject[]No-
in_stockbooleanNo-
is_activebooleanNo-
meta_descriptionstringNo-
meta_titlestringNo-
product_namestringNo-
product_numberstringNo-
ranknumberNo-
redirectsobjectNo-
related_productsobject[]No-
short_descriptionstringNo-
slugstringNo-
slug_translationsobjectNo-
statusstringNo-
tagsobject[]No-
third_party_linksobject[]No-
updated_atstringNo-
variantsobject[]No-
videosobject[]No-
Product Brand
PropertyTypeRequiredDetails
addressobjectNo-
namestringNo-
seriesobjectNo-
slugstringNo-
Brand Address
PropertyTypeRequiredDetails
citystringNo-
co_addressstringNo-
countrystringNo-
emailstringNo-
house_numberstringNo-
postal_codestringNo-
state_provincestringNo-
street_addressstringNo-
Product Series
PropertyTypeRequiredDetails
namestringNo-
slugstringNo-
Bundle
PropertyTypeRequiredDetails
attributesobjectNo-
descriptionstringNo-
discountsobjectNo-
idstringNo-
item_rulesobject[]No-
namestringNo-
productsobject[]No-
valid_date_rangeobjectNo-
Product Category
PropertyTypeRequiredDetails
attributesobjectNo-
cover_urlstringNo-
full_path_namestring[]No-
full_uri_translationsobjectNo-
idstringNo-
namestringNo-
orderintegerNo-
parent_idstringNo-
redirectsobjectNo-
slug_translationsobjectNo-
sort_orderintegerNo-
statusstringNo-
sub_categoriesobject[]No-
uristringNo-
Product Collection
PropertyTypeRequiredDetails
childrenobject[]No-
idstringNo-
orderintegerNo-
parent_idstringNo-
titlestringNo-
uristringNo-
File
PropertyTypeRequiredDetails
attributesobjectNo-
titlestringNo-
typestringNo-
urlstringNo-
Image
PropertyTypeRequiredDetails
altstringNo-
attributesobjectNo-
blurhashstringNo-
custom_fieldsobjectNo-
sortintegerNo-
titlestringNo-
urlstringNo-
Product Relations
PropertyTypeRequiredDetails
directionstringNo-
idstringNo-
main_productstringNo-
productsobject[]No-
titlestringNo-
typestringNo-
Product Tag
PropertyTypeRequiredDetails
attributesobjectNo-
created_atstringNo-
filterablebooleanNo-
idstringNo-
keystringNo-
namestringNo-
orderintegerNo-
statusstringNo-
updated_atstringNo-
PropertyTypeRequiredDetails
idstringNo-
titlestringNo-
typestringNo-
urlstringNo-
Variant
PropertyTypeRequiredDetails
attributesobjectNo-
custom_fieldsobjectNo-
descriptionstringNo-
dimensionsobjectNo-
idstringNo-
image_urlstringNo-
imagesobject[]No-
inventoriesobject[]No-
is_activebooleanNo-
packaging_dimensionsobjectNo-
pricesobject[]No-
shipping_attributesstring[]No-
tagsobject[]No-
validate_stockbooleanNo-
variant_namestringNo-
variant_numberstringNo-
videosobject[]No-
Video
PropertyTypeRequiredDetails
attributesobjectNo-
descriptionstringNo-
titlestringNo-
urlstringNo-
{
  "data": {
    "attributes": {},
    "brands": {
      "address": {
        "city": "string",
        "co_address": "string",
        "country": "string",
        "email": "string",
        "house_number": "string",
        "postal_code": "string",
        "state_province": "string",
        "street_address": "string"
      },
      "name": "string",
      "series": {
        "name": "string",
        "slug": "string"
      },
      "slug": "string"
    },
    "bundles": [
      {
        "attributes": {},
        "description": "string",
        "discounts": {
          "fixed_discounts": null,
          "percentage": null,
          "type": null
        },
        "id": "string",
        "item_rules": [],
        "name": "string",
        "products": [],
        "valid_date_range": {
          "from": null,
          "to": null
        }
      }
    ],
    "categories": [
      {
        "attributes": {},
        "cover_url": "string",
        "full_path_name": [],
        "full_uri_translations": {},
        "id": "string",
        "name": "string",
        "order": 0,
        "parent_id": "string",
        "redirects": {},
        "slug_translations": {},
        "sort_order": 0,
        "status": "string",
        "sub_categories": [],
        "uri": "string"
      }
    ],
    "collections": [
      {
        "children": [],
        "id": "string",
        "order": 0,
        "parent_id": "string",
        "title": "string",
        "uri": "string"
      }
    ],
    "created_at": "string",
    "custom_fields": {},
    "description": "string",
    "files": [
      {
        "attributes": {},
        "title": "string",
        "type": "string",
        "url": "string"
      }
    ],
    "html_description": "string",
    "html_short_description": "string",
    "id": "string",
    "images": [
      {
        "alt": "string",
        "attributes": {},
        "blurhash": "string",
        "custom_fields": {},
        "sort": 0,
        "title": "string",
        "url": "string"
      }
    ],
    "in_stock": false,
    "is_active": false,
    "meta_description": "string",
    "meta_title": "string",
    "product_name": "string",
    "product_number": "string",
    "rank": 0,
    "redirects": {},
    "related_products": [
      {
        "direction": "string",
        "id": "string",
        "main_product": "string",
        "products": [],
        "title": "string",
        "type": "string"
      }
    ],
    "short_description": "string",
    "slug": "string",
    "slug_translations": {},
    "status": "string",
    "tags": [
      {
        "attributes": {},
        "created_at": "string",
        "filterable": false,
        "id": "string",
        "key": "string",
        "name": "string",
        "order": 0,
        "status": "string",
        "updated_at": "string"
      }
    ],
    "third_party_links": [
      {
        "id": "string",
        "title": "string",
        "type": "string",
        "url": "string"
      }
    ],
    "updated_at": "string",
    "variants": [
      {
        "attributes": {},
        "custom_fields": {},
        "description": "string",
        "dimensions": {
          "capacity_milliliter": null,
          "depth": null,
          "diameter": null,
          "height": null,
          "length": null,
          "weight": null,
          "width": null
        },
        "id": "string",
        "image_url": "string",
        "images": [],
        "inventories": [],
        "is_active": false,
        "packaging_dimensions": {
          "capacity_milliliter": null,
          "depth": null,
          "diameter": null,
          "height": null,
          "length": null,
          "weight": null,
          "width": null
        },
        "prices": [],
        "shipping_attributes": [],
        "tags": [],
        "validate_stock": false,
        "variant_name": "string",
        "variant_number": "string",
        "videos": []
      }
    ],
    "videos": [
      {
        "attributes": {},
        "description": "string",
        "title": "string",
        "url": "string"
      }
    ]
  }
}

404 - object

Error Message

PropertyTypeRequiredDetails
messagestringNo-

Generated example (synthetic):

{
  "message": "string"
}

500 - object

Error Message

PropertyTypeRequiredDetails
messagestringNo-

Generated example (synthetic):

{
  "message": "string"
}

Contract identity

Use these fields to confirm you are implementing the intended endpoint contract.

  • API family: Shopper API
  • Method: GET
  • Path: /api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku
  • Operation ID: Not documented in the OpenAPI contract.
  • OpenAPI tag: Products
  • OpenAPI summary: Fetch product by sku

Fetch product by sku

# Fetch product by sku Fetch product by sku Deprecated. Use https://graphql.enad.io instead.
GET /api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku
Purpose

Fetch product by sku Deprecated.

Required inputs

sku path locale path market path

Primary response

200 ยท Product

Operation key

shopper-api:GET:/api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku

## API ownership - API family: Shopper API - Best for: Public storefront catalog reads and shopper-facing product discovery. - Prefer Search API for: New product discovery, facets, autocomplete, and other search-heavy storefront flows. - Do not use from: Trusted admin integrations that create, update, or delete merchant-owned data. - Guide route: [/apis/shopper/latest](/apis/shopper/latest) The OpenAPI contract defines the method, path, parameters, request body, and responses for this operation. ## Operation - Method: `GET` - Path: `/api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku` - Summary: Fetch product by sku - Description: Fetch product by sku Deprecated. Use https://graphql.enad.io instead. - OpenAPI contract: shopper-api - Operation ID: Not documented in the OpenAPI contract. - Stable operation key: `shopper-api:GET:/api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku` Operation key uses API family, method, and path because this OpenAPI contract does not publish an operation ID. ## Parameters | Name | In | Required | Type | Description | | --- | --- | --- | --- | --- | | sku | path | Yes | string | The product sku | | locale | path | Yes | string | Alpha 2 country code. e.g `se` | | market | path | Yes | string | Filter to only get related information to the market | ## Request body Not documented in the OpenAPI contract. ## Responses | Status | Description | Content | | --- | --- | --- | | 200 | Product | application/json (object) | | 404 | Product not found | application/json (object) | | 500 | Internal server error | application/json (object) | ### 200 - object #### Product With Bundles Response | Property | Type | Required | Details | | --- | --- | --- | --- | | `data` | object | No | - | ##### Product With Bundles | Property | Type | Required | Details | | --- | --- | --- | --- | | `attributes` | object | No | - | | `brands` | object | No | - | | `bundles` | object[] | No | - | | `categories` | object[] | No | - | | `collections` | object[] | No | - | | `created_at` | string | No | - | | `custom_fields` | object | No | - | | `description` | string | No | - | | `files` | object[] | No | - | | `html_description` | string | No | - | | `html_short_description` | string | No | - | | `id` | string | No | - | | `images` | object[] | No | - | | `in_stock` | boolean | No | - | | `is_active` | boolean | No | - | | `meta_description` | string | No | - | | `meta_title` | string | No | - | | `product_name` | string | No | - | | `product_number` | string | No | - | | `rank` | number | No | - | | `redirects` | object | No | - | | `related_products` | object[] | No | - | | `short_description` | string | No | - | | `slug` | string | No | - | | `slug_translations` | object | No | - | | `status` | string | No | - | | `tags` | object[] | No | - | | `third_party_links` | object[] | No | - | | `updated_at` | string | No | - | | `variants` | object[] | No | - | | `videos` | object[] | No | - | ##### Product Brand | Property | Type | Required | Details | | --- | --- | --- | --- | | `address` | object | No | - | | `name` | string | No | - | | `series` | object | No | - | | `slug` | string | No | - | ##### Brand Address | Property | Type | Required | Details | | --- | --- | --- | --- | | `city` | string | No | - | | `co_address` | string | No | - | | `country` | string | No | - | | `email` | string | No | - | | `house_number` | string | No | - | | `postal_code` | string | No | - | | `state_province` | string | No | - | | `street_address` | string | No | - | ##### Product Series | Property | Type | Required | Details | | --- | --- | --- | --- | | `name` | string | No | - | | `slug` | string | No | - | ##### Bundle | Property | Type | Required | Details | | --- | --- | --- | --- | | `attributes` | object | No | - | | `description` | string | No | - | | `discounts` | object | No | - | | `id` | string | No | - | | `item_rules` | object[] | No | - | | `name` | string | No | - | | `products` | object[] | No | - | | `valid_date_range` | object | No | - | ##### Product Category | Property | Type | Required | Details | | --- | --- | --- | --- | | `attributes` | object | No | - | | `cover_url` | string | No | - | | `full_path_name` | string[] | No | - | | `full_uri_translations` | object | No | - | | `id` | string | No | - | | `name` | string | No | - | | `order` | integer | No | - | | `parent_id` | string | No | - | | `redirects` | object | No | - | | `slug_translations` | object | No | - | | `sort_order` | integer | No | - | | `status` | string | No | - | | `sub_categories` | object[] | No | - | | `uri` | string | No | - | ##### Product Collection | Property | Type | Required | Details | | --- | --- | --- | --- | | `children` | object[] | No | - | | `id` | string | No | - | | `order` | integer | No | - | | `parent_id` | string | No | - | | `title` | string | No | - | | `uri` | string | No | - | ##### File | Property | Type | Required | Details | | --- | --- | --- | --- | | `attributes` | object | No | - | | `title` | string | No | - | | `type` | string | No | - | | `url` | string | No | - | ##### Image | Property | Type | Required | Details | | --- | --- | --- | --- | | `alt` | string | No | - | | `attributes` | object | No | - | | `blurhash` | string | No | - | | `custom_fields` | object | No | - | | `sort` | integer | No | - | | `title` | string | No | - | | `url` | string | No | - | ##### Product Relations | Property | Type | Required | Details | | --- | --- | --- | --- | | `direction` | string | No | - | | `id` | string | No | - | | `main_product` | string | No | - | | `products` | object[] | No | - | | `title` | string | No | - | | `type` | string | No | - | ##### Product Tag | Property | Type | Required | Details | | --- | --- | --- | --- | | `attributes` | object | No | - | | `created_at` | string | No | - | | `filterable` | boolean | No | - | | `id` | string | No | - | | `key` | string | No | - | | `name` | string | No | - | | `order` | integer | No | - | | `status` | string | No | - | | `updated_at` | string | No | - | ##### Third Party Link | Property | Type | Required | Details | | --- | --- | --- | --- | | `id` | string | No | - | | `title` | string | No | - | | `type` | string | No | - | | `url` | string | No | - | ##### Variant | Property | Type | Required | Details | | --- | --- | --- | --- | | `attributes` | object | No | - | | `custom_fields` | object | No | - | | `description` | string | No | - | | `dimensions` | object | No | - | | `id` | string | No | - | | `image_url` | string | No | - | | `images` | object[] | No | - | | `inventories` | object[] | No | - | | `is_active` | boolean | No | - | | `packaging_dimensions` | object | No | - | | `prices` | object[] | No | - | | `shipping_attributes` | string[] | No | - | | `tags` | object[] | No | - | | `validate_stock` | boolean | No | - | | `variant_name` | string | No | - | | `variant_number` | string | No | - | | `videos` | object[] | No | - | ##### Video | Property | Type | Required | Details | | --- | --- | --- | --- | | `attributes` | object | No | - | | `description` | string | No | - | | `title` | string | No | - | | `url` | string | No | - |
Generated example (synthetic) ```json { "data": { "attributes": {}, "brands": { "address": { "city": "string", "co_address": "string", "country": "string", "email": "string", "house_number": "string", "postal_code": "string", "state_province": "string", "street_address": "string" }, "name": "string", "series": { "name": "string", "slug": "string" }, "slug": "string" }, "bundles": [ { "attributes": {}, "description": "string", "discounts": { "fixed_discounts": null, "percentage": null, "type": null }, "id": "string", "item_rules": [], "name": "string", "products": [], "valid_date_range": { "from": null, "to": null } } ], "categories": [ { "attributes": {}, "cover_url": "string", "full_path_name": [], "full_uri_translations": {}, "id": "string", "name": "string", "order": 0, "parent_id": "string", "redirects": {}, "slug_translations": {}, "sort_order": 0, "status": "string", "sub_categories": [], "uri": "string" } ], "collections": [ { "children": [], "id": "string", "order": 0, "parent_id": "string", "title": "string", "uri": "string" } ], "created_at": "string", "custom_fields": {}, "description": "string", "files": [ { "attributes": {}, "title": "string", "type": "string", "url": "string" } ], "html_description": "string", "html_short_description": "string", "id": "string", "images": [ { "alt": "string", "attributes": {}, "blurhash": "string", "custom_fields": {}, "sort": 0, "title": "string", "url": "string" } ], "in_stock": false, "is_active": false, "meta_description": "string", "meta_title": "string", "product_name": "string", "product_number": "string", "rank": 0, "redirects": {}, "related_products": [ { "direction": "string", "id": "string", "main_product": "string", "products": [], "title": "string", "type": "string" } ], "short_description": "string", "slug": "string", "slug_translations": {}, "status": "string", "tags": [ { "attributes": {}, "created_at": "string", "filterable": false, "id": "string", "key": "string", "name": "string", "order": 0, "status": "string", "updated_at": "string" } ], "third_party_links": [ { "id": "string", "title": "string", "type": "string", "url": "string" } ], "updated_at": "string", "variants": [ { "attributes": {}, "custom_fields": {}, "description": "string", "dimensions": { "capacity_milliliter": null, "depth": null, "diameter": null, "height": null, "length": null, "weight": null, "width": null }, "id": "string", "image_url": "string", "images": [], "inventories": [], "is_active": false, "packaging_dimensions": { "capacity_milliliter": null, "depth": null, "diameter": null, "height": null, "length": null, "weight": null, "width": null }, "prices": [], "shipping_attributes": [], "tags": [], "validate_stock": false, "variant_name": "string", "variant_number": "string", "videos": [] } ], "videos": [ { "attributes": {}, "description": "string", "title": "string", "url": "string" } ] } } ```
### 404 - object #### Error Message | Property | Type | Required | Details | | --- | --- | --- | --- | | `message` | string | No | - | **Generated example (synthetic):** ```json { "message": "string" } ``` ### 500 - object #### Error Message | Property | Type | Required | Details | | --- | --- | --- | --- | | `message` | string | No | - | **Generated example (synthetic):** ```json { "message": "string" } ``` ## Contract identity Use these fields to confirm you are implementing the intended endpoint contract. - API family: Shopper API - Method: `GET` - Path: `/api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku` - Operation ID: Not documented in the OpenAPI contract. - Stable operation key: `shopper-api:GET:/api/v1/omni/:app_id/:store_group/:market/:locale/products/sku/:sku` - OpenAPI tag: Products - OpenAPI summary: Fetch product by sku