The Product (also called Inventory) APIs let you create, retrieve, update, and manage product data. Use these APIs to define your product catalogue, define attributes, organise brands and categories, and manage SKUs across organisation units (OUs).
What you can do
You can use the Product APIs to:
- Create, read, and update product entities such as brands, categories, attributes, attribute values, and SKUs
- Search across products, brands, categories, attributes, and SKUs using prefix-based queries
- Build and retrieve hierarchies for brands and categories, including parent–child relationships
- Support for bulk create and update operations using DIY template
- Scope data by organisation unit (OU) where OU support is enabled
Notes
- Deletion is not supported through these APIs. Product entities are expected to be managed through create and update operations only.
- At present, there is no UI for adding products and will be available in future.
Search behaviour
Search across Product APIs uses starts with search on code. Each API documents its supported search parameters, precedence rules, and warnings to avoid ambiguity.
Hierarchy model
The Product APIs support hierarchical structures for:
- Categories (parent–child category trees)
- Brands (parent and child brands)
Hierarchy depth and child limits are controlled through configuration and are documented explicitly in the relevant APIs.
Organisation unit (OU) support
Product entities can be scoped at the organisation level or OU level.
Before using OU-scoped product APIs, you must:
- Mark the concept as OU-enabled
- Enable OU-level product and inventory configurations. To enable OU support for product entities, you need to create a JIRA ticket and enable the config
CONF_OU_LEVEL_PRODUCTS_ENABLED. For more information, see Configuring Organisation Unit (OU) support for product entities.
Both steps are required. If the configuration is incomplete, the APIs return warnings or conflicts. Each API clearly documents OU behaviour, default scope, and conflict scenarios.
Bulk operations and integrations
All core product entities support bulk create and update operations.
You can:
- Submit batch requests through APIs
- Ingest large datasets using DYI templates
- Create complete hierarchies (parent and child entities) in a single request
Batch size limits, hierarchy limits, and default behaviours are documented per API.
QuickStart: set up products using the Product APIs
Use this sequence when onboarding a new catalogue or integrating for the first time. Follow the order to avoid dependency and validation errors.
Step 1: Create brands
Create parent and child brands first. SKUs and categories reference brand codes and require them to exist.
Step 2: Create categories
Create product categories and category hierarchies.
Step 3: Create product attributes
Define custom attributes such as material, size, or fit.
Step 4: Create attribute values
Create allowed values for attributes that require controlled inputs.
Step 5: Create SKUs
Create SKUs only after brands, categories, and attributes exist.
Step 6: Retrieve and verify data
Use GET and search APIs to validate the setup.
- 1POSTCreate brands Create parent and child brands first. SKUs and categories reference brand codes.
- 2POSTCreate categories Create product categories and category hierarchies.
- 3POSTCreate product attributes Define custom attributes such as material, size, or fit.
- 4POSTCreate attribute values Create allowed values for attributes that require controlled inputs.
- 5POSTCreate SKUs Create SKUs only after brands, categories, and attributes exist.
- 6GETRetrieve and verify data Use GET and search APIs to validate the setup.
