Get/Search Product SKUs

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Use this API to retrieve product SKU details from your organisation. You can fetch SKUs in bulk, search SKUs by SKU code, brand name, or category name, or retrieve specific SKUs using SKU IDs or codes. The API supports pagination, sorting, and filtering, and can optionally return related data such as product attributes, style, colour, and size.

You can use this API to:

  • Fetch all product SKUs in the organisation.
  • Search SKUs by SKU code prefix, brand name prefix, or category name prefix using the q parameter.
  • Retrieve specific SKUs using SKU IDs or SKU codes.
  • Filter SKUs by organisation unit (OU) when OU support is enabled.
  • Retrieve additional related data (attributes, style, colour, size) for a single SKU.

The response includes SKU details, pricing and return information, brand and category, optional related entities, attribution metadata, and pagination details.

Example request

curl --location 'eu.intouch.capillarytech.com/v2/product/skus?limit=2&offset=0' \
--header 'Authorization: Basic bmVlcmFqLmRvWE4YTcwNmM0YzM0YTE2ODkxZjg0ZTdi'
curl --location 'eu.intouch.capillarytech.com/v2/product/skus?entityIds=504528848' \
--header 'Authorization: Basic bmVlcmFqLmRvY3NlccwNmM0YzM0YTE2ODkxZjg0ZTdi'
curl --location 'eu.intouch.capillarytech.com/v2/product/skus?q=brand:Zeta,category:Delta' \
--header 'Authorization: Basic bmVlcmFqLmRvY3NlcDI1OjgyN2NjYYTE2ODkxZjg0ZTdi'
curl --location 'eu.intouch.capillarytech.com/v2/product/skus?entityIds=504528848&include=attributes' \
--header 'Authorization: Basic bmVlcmFqLmRvY3NlcDI1OjgyN2YzM0YTE2ODkxZjg0ZTdi'

Prerequisites

Resource information

Pagination supportYes
Batch supportYes

Query parameters

FieldTypeRequiredDescription
qstringOptionalSearch product SKUs using a structured field:value format. Multiple fields are separated by commas and act as an AND condition. Allowed fields:
  • code — matches SKUs whose code starts with the given prefix. Case-insensitive. Max 30 characters.
  • brand — matches SKUs assigned to a brand whose name starts with the given prefix. Case-insensitive.
  • category — matches SKUs assigned to a category whose name starts with the given prefix. Case-insensitive.
Example: q=code:SHIRT, q=brand:Nike, q=brand:Nike,category:Footwear

This parameter overrides entityCodes and entityIds. If provided along with those filters, a warning is returned and the other filters are ignored.

entityCodesstringOptionalA single or comma-separated list of product SKU codes. Use the value of the code parameter from the response of the Add Product SKU API.Used when q parameter is not provided.
  • Format: Case-insensitive; supports UTF-8 characters.
  • Limits: Maximum 30 codes; 50 characters per code.
  • This parameter is ignored if query parameter q is provided.
Example: code1, 10001
entityIdsstringOptionalA single or comma-separated list of product SKU id. Use the value of the id parameter from the response of the Add Product SKU API.
  • Limits: Maximum 30 ID's.
  • This parameter is ignored if the query parameter q or entityCodes are provided.
Example: 1999, 2000
includestringOptional

Comma-separated list of optional related data to include in the response. Only applied when retrieving a single SKU (using entityIds or entityCodes with a single value).

Possible values: attributes, style, color, size.

Note: brand and category are always returned in the base response regardless of this parameter.

limitintegerOptionalMaximum number of SKUs to retrieve. The default value is 10, and the maximum allowed value is 100.
offsetintegerOptionalNumber of SKUs to skip from the beginning of the response.
sortBystringOptionalAllows you to sort the response based on specific fields. Supported values are id and code. Defaults to id.
sortOrderstringOptionalSort direction. Supported values: ASC, DESC. Default: DESC
ouCodestringOptionalFilters product SKUs by the Organization's concept code. This parameter is only applicable when OU support is enabled.
fetchTypestringOptionalScope of product categories to fetch. Supported Values: ALL (master org and OU), ORG (master org only), SCOPE (OU only).

Example response

{
    "data": [
        {
            "id": 504528848,
            "orgId": 100737,
            "ouId": -1,
            "code": "TEST-SKU-APITEST-001",
            "ean": "TEST-EAN-APITEST-001",
            "price": 999.0,
            "description": "Test SKU for API documentation",
            "longDescription": "A test SKU created for API documentation testing purposes",
            "imageUrl": "https://example.com/test-image.jpg",
            "returnable": true,
            "returnableDays": 30,
            "brand": {
                "id": 1219533,
                "code": "TEST-BRAND-APITEST-001",
                "name": "Test Brand APITest"
            },
            "category": {
                "id": 2477825,
                "code": "TEST-CAT-APITEST-001",
                "name": "Test Category APITest"
            },
            "attribution": {
                "modifiedDate": "2026-06-18T09:11:07Z"
            }
        },
        {
            "id": 503348546,
            "orgId": 100737,
            "ouId": -1,
            "code": "00001453234013",
            "ean": "00001453234013",
            "price": 500.0,
            "description": "",
            "imageUrl": "",
            "returnable": true,
            "returnableDays": -1,
            "attribution": {
                "modifiedDate": "2026-04-13T05:19:02Z"
            }
        }
    ],
    "pagination": {
        "limit": 2,
        "offset": 0,
        "total": 54
    }
}
{
    "data": [
        {
            "id": 504528848,
            "orgId": 100737,
            "ouId": -1,
            "code": "TEST-SKU-APITEST-001",
            "ean": "TEST-EAN-APITEST-001",
            "price": 999.0,
            "description": "Test SKU for API documentation",
            "longDescription": "A test SKU created for API documentation testing purposes",
            "imageUrl": "https://example.com/test-image.jpg",
            "returnable": true,
            "returnableDays": 30,
            "brand": {
                "id": 1219533,
                "code": "TEST-BRAND-APITEST-001",
                "name": "Test Brand APITest"
            },
            "category": {
                "id": 2477825,
                "code": "TEST-CAT-APITEST-001",
                "name": "Test Category APITest"
            },
            "attributes": [],
            "attribution": {
                "modifiedDate": "2026-06-18T09:11:07Z"
            }
        }
    ],
    "pagination": {
        "limit": 10,
        "offset": 0,
        "total": 1
    }
}

Response parameters

ParameterTypeDescription
idlongUnique numeric identifier for the SKU, from the Add Product SKU API response.
orgIdlongOrganisation ID to which the SKU belongs.
ouIdlongOrganisational unit ID. -1 if the SKU belongs to the master organisation.
codestringUnique code for the SKU (also called item code).
eanstringEuropean Article Number (EAN) of the product.
pricedecimalMonetary cost of the product.
descriptionstringShort summary or title of the product.
longDescriptionstringDetailed description of the product.
imageUrlstringURL of the product image.
returnablebooleanWhether the product is eligible for return.
returnableDaysintegerNumber of days within which the product can be returned. -1 if not applicable.
brandobjectObject containing the brand assigned to this SKU. Always returned in the base response.
.idlongUnique numeric identifier for the brand.
.codestringUnique code for the brand.
.namestringDisplay name of the brand.
categoryobjectObject containing the category assigned to this SKU. Always returned in the base response.
.idlongUnique numeric identifier for the category.
.codestringUnique code for the category.
.namestringDisplay name of the category.
styleobjectObject containing the style variant. Returned when include=style is specified.
colorPaletteobjectObject containing the colour variant. Returned when include=color is specified.
sizeobjectObject containing the size variant. Returned when include=size is specified.
attributesarrayList of custom product attributes. Returned when include=attributes is specified.
.idlongUnique identifier of the attribute definition.
.codestringSystem code identifying the attribute type (for example, material).
.namestringDisplay name of the attribute type.
.valueobjectObject containing the assigned attribute value details.
..idlongUnique identifier for the specific attribute value.
..codestringCode representing the attribute value.
..namestringDisplay name of the attribute value.
attributionobjectObject containing modification metadata.
.modifiedDatestringDate and time when the SKU was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ), returned in the server time zone.
paginationobjectObject containing pagination details.
.limitintegerMaximum number of records returned per page.
.offsetintegerNumber of records skipped from the beginning of the result set.
.totalintegerTotal number of SKUs matching the request filters.

Error and warning codes

CodeError numberTypeDescription
ERR_INVALID_OU_CODE10001ErrorThe provided ouCode is invalid or does not exist. HTTP 400.
ERR_OU_LEVEL_DISABLED10002ErrorOU-level product filtering is disabled for your organisation, but an ouCode was provided. HTTP 400.
ERR_PAGINATION_LIMIT_EXCEEDED10004ErrorPagination limit cannot exceed 100. HTTP 400.
ERR_PAGINATION_LIMIT_NEGATIVE10005ErrorPagination limit cannot be zero or negative. HTTP 400.
ERR_PAGINATION_OFFSET_NEGATIVE10006ErrorPagination offset cannot be negative. HTTP 400.
ERR_ENTITY_CODES_LIMIT_EXCEEDED10007ErrorentityCodes cannot have more than 30 comma-separated values. HTTP 400.
ERR_ENTITY_IDS_LIMIT_EXCEEDED10008ErrorentityIds cannot have more than 30 comma-separated values. HTTP 400.
ERR_INVALID_SKU_Q_FORMAT10071ErrorInvalid q parameter format. Expected format: field:value,field2:value2. Allowed fields: code, brand, category. HTTP 400.
WARN_SEARCH_BY_QUERY_PRIORITY10009WarningSearching by q parameter; entityCodes and entityIds were ignored.
WARN_SEARCH_BY_CODES_PRIORITY10010WarningSearching by entityCodes; entityIds was ignored.
WARN_BLANK_ENTITIES_IGNORED10011WarningOne or more blank values in entityCodes or entityIds were ignored.
WARN_NON_NUMERIC_IDS_IGNORED10012WarningOne or more non-numeric values in entityIds were ignored.
WARN_ALL_ENTITY_IDS_IGNORED10013WarningAll provided entityIds were invalid and ignored. The query fetches all entities.
WARN_INVALID_SORT_KEY10014WarningInvalid sortBy parameter. Defaulting to sort by id.
WARN_INCLUDE_IGNORED_FOR_MULTIPLE_SKUS10018WarningThe include parameter is only supported for single SKU requests and will be ignored.
WARN_INVALID_INCLUDE_VALUES10019WarningOne or more values passed to include are invalid and will be ignored.

Query Params
string
integer
Response
200

OK

Language
Credentials
Basic
base64
:
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here!