Product Data Model
Before managing products via the API, it is essential to understand how entities relate to each other and in what order they must be created.Entity Hierarchy
Required Creation Order
- Get catalog —
GET /v1/catalogs→ yourcatalog_id - Create product —
POST /v1/productswithcatalog_id - Create options —
POST /v1/products/{id}/options→ save the value IDs - Create variants —
POST /v1/products/{id}/variantswithoption_values - Add media —
POST /v1/products/{product_id}/variants/{variant_id}/media - Assign categories —
POST /v1/products/{id}/categorieswithtag_ids
Categories (
POST /v1/categories) are global and can be created at any time — they don’t depend on the product.Key Rules
Categories are global. Creating a category does not associate it with any product. You must explicitly assign it with
POST /v1/products/{product_id}/categories using tag_ids (array of IDs).Images belong to variants, not to products. Each variant can have its own images.
Why are options required before variants?
Statuses
Action Guides
Categories and Catalogs
Query catalogs and manage categories.
Manage Products
Full CRUD for products, variants, options, and media.

