Skip to content
Get started

Products

Creates or updates products in bulk.
products.create_products(ProductCreateProductsParams**kwargs) -> ProductCreateProductsResponse
POST/api/v2/public/products
Retrieves a paginated list of products.
products.list_products(ProductListProductsParams**kwargs) -> ProductListProductsResponse
GET/api/v2/public/products
Deletes products by product numbers.
products.delete_products(ProductDeleteProductsParams**kwargs) -> ProductDeleteProductsResponse
DELETE/api/v2/public/products
Updates a product attribute value across all products matching the old value.
products.update_product_attributes(ProductUpdateProductAttributesParams**kwargs)
PUT/api/v2/public/products/attributes
Creates or updates product prices.
products.create_prices(ProductCreatePricesParams**kwargs) -> ProductCreatePricesResponse
POST/api/v2/public/products/prices
Creates or updates discount prices for products.
products.create_discount_prices(ProductCreateDiscountPricesParams**kwargs) -> ProductCreateDiscountPricesResponse
POST/api/v2/public/products/discountprices
Creates or updates submitted product free fields. Existing keys not included in the request are unchanged.
products.create_product_free_fields(ProductCreateProductFreeFieldsParams**kwargs) -> ProductCreateProductFreeFieldsResponse
POST/api/v2/public/products/freefields
ModelsExpand Collapse
class ProductItem:

Full product details returned from the products GET endpoint, including units, barcodes, pricing, and store/country assignments.

barcode: str

Primary barcode for the product.

carrier_item_quantity: float
formatdouble
edit_min_max_percentage: int
formatint32
price_compare_multiplier: float
formatdouble
product_name: str

Display name of the product.

product_number: str

Unique product number.

shelf_label_quantity: int
formatint32
allow_decimal: Optional[bool]
attention_code: Optional[str]
average_weight: Optional[float]
formatdouble
barcodes_array: Optional[str]
base_unit_name: Optional[str]
brand_code: Optional[str]
brand_description: Optional[str]
category_code: Optional[str]
color: Optional[str]
color_code: Optional[str]
countries_allowed: Optional[List[str]]
countries_not_allowed: Optional[List[str]]
country_code: Optional[str]
deprecation_date: Optional[datetime]
formatdate-time
expiration_min_range: Optional[int]
formatint32
free_fields: Optional[List[FreeField]]
sort_order: int
formatint32
key: Optional[str]
value: Optional[str]
general_ledger: Optional[str]
image_url: Optional[str]
is_active: Optional[bool]
is_counted: Optional[bool]
is_edit_min_max: Optional[bool]
is_edit_replenishment: Optional[bool]
is_expiration: Optional[bool]
is_order_manually: Optional[bool]
is_promotion: Optional[bool]
is_set: Optional[bool]
is_stock: Optional[bool]
is_store_product: Optional[bool]
is_template: Optional[bool]
margin_category: Optional[str]
moq: Optional[float]
formatdouble
old_price: Optional[float]
formatdouble
price: Optional[float]
formatdouble
price_compare_unit: Optional[str]
price_lines: Optional[str]
product_details: Optional[str]
product_type: Optional[str]
product_url: Optional[str]
promo_stores_allowed: Optional[List[str]]
promo_stores_not_allowed: Optional[List[str]]
promotion: Optional[str]
promotion_price: Optional[float]
formatdouble
promotion_week: Optional[str]
purchase_price: Optional[float]
formatdouble
purchase_unit_barcode: Optional[str]
purchase_unit_name: Optional[str]
purchase_unit_product_number: Optional[str]
purchase_unit_quantity: Optional[float]
formatdouble
referral_product_id: Optional[str]
reset_store_stock: Optional[bool]
set_product: Optional[List[SetProduct]]
set_item_quantity: Optional[str]
set_product_number: Optional[str]
shelf_label: Optional[bool]
shelf_label_barcode: Optional[bool]
shelf_label_layout: Optional[int]
formatint32
shelf_label_price: Optional[bool]
size: Optional[str]
size_code: Optional[str]
smallest_product_number: Optional[str]
smallest_quantity: Optional[float]
formatdouble
special_price: Optional[float]
formatdouble
stores_allowed: Optional[List[str]]
stores_not_allowed: Optional[List[str]]
supplier_id: Optional[str]
supplier_name: Optional[str]
supplier_product_number: Optional[str]
units: Optional[List[Unit]]
unit_quantity: float
formatdouble
unit_barcode: Optional[str]
unit_name: Optional[str]
variant_code: Optional[str]
variant_factor: Optional[float]
formatdouble
variant_family: Optional[str]
volume: Optional[str]
class ProductCreateProductsResponse:

Standard success response returned by mutation endpoints.

success: bool

Indicates whether the operation completed successfully.

data: Optional[str]

Optional data payload returned by the operation.

message: Optional[str]

Human-readable message describing the result.

class ProductListProductsResponse:

Lightweight paginated result set.

page_number: int

Current page number (1-based).

formatint64
page_size: int

Maximum number of records returned per page.

formatint32
total_record_count: int

Total number of records matching the query across all pages.

formatint64
records: Optional[List[ProductItem]]

Collection of records for the current page.

barcode: str

Primary barcode for the product.

carrier_item_quantity: float
formatdouble
edit_min_max_percentage: int
formatint32
price_compare_multiplier: float
formatdouble
product_name: str

Display name of the product.

product_number: str

Unique product number.

shelf_label_quantity: int
formatint32
allow_decimal: Optional[bool]
attention_code: Optional[str]
average_weight: Optional[float]
formatdouble
barcodes_array: Optional[str]
base_unit_name: Optional[str]
brand_code: Optional[str]
brand_description: Optional[str]
category_code: Optional[str]
color: Optional[str]
color_code: Optional[str]
countries_allowed: Optional[List[str]]
countries_not_allowed: Optional[List[str]]
country_code: Optional[str]
deprecation_date: Optional[datetime]
formatdate-time
expiration_min_range: Optional[int]
formatint32
free_fields: Optional[List[FreeField]]
sort_order: int
formatint32
key: Optional[str]
value: Optional[str]
general_ledger: Optional[str]
image_url: Optional[str]
is_active: Optional[bool]
is_counted: Optional[bool]
is_edit_min_max: Optional[bool]
is_edit_replenishment: Optional[bool]
is_expiration: Optional[bool]
is_order_manually: Optional[bool]
is_promotion: Optional[bool]
is_set: Optional[bool]
is_stock: Optional[bool]
is_store_product: Optional[bool]
is_template: Optional[bool]
margin_category: Optional[str]
moq: Optional[float]
formatdouble
old_price: Optional[float]
formatdouble
price: Optional[float]
formatdouble
price_compare_unit: Optional[str]
price_lines: Optional[str]
product_details: Optional[str]
product_type: Optional[str]
product_url: Optional[str]
promo_stores_allowed: Optional[List[str]]
promo_stores_not_allowed: Optional[List[str]]
promotion: Optional[str]
promotion_price: Optional[float]
formatdouble
promotion_week: Optional[str]
purchase_price: Optional[float]
formatdouble
purchase_unit_barcode: Optional[str]
purchase_unit_name: Optional[str]
purchase_unit_product_number: Optional[str]
purchase_unit_quantity: Optional[float]
formatdouble
referral_product_id: Optional[str]
reset_store_stock: Optional[bool]
set_product: Optional[List[SetProduct]]
set_item_quantity: Optional[str]
set_product_number: Optional[str]
shelf_label: Optional[bool]
shelf_label_barcode: Optional[bool]
shelf_label_layout: Optional[int]
formatint32
shelf_label_price: Optional[bool]
size: Optional[str]
size_code: Optional[str]
smallest_product_number: Optional[str]
smallest_quantity: Optional[float]
formatdouble
special_price: Optional[float]
formatdouble
stores_allowed: Optional[List[str]]
stores_not_allowed: Optional[List[str]]
supplier_id: Optional[str]
supplier_name: Optional[str]
supplier_product_number: Optional[str]
units: Optional[List[Unit]]
unit_quantity: float
formatdouble
unit_barcode: Optional[str]
unit_name: Optional[str]
variant_code: Optional[str]
variant_factor: Optional[float]
formatdouble
variant_family: Optional[str]
volume: Optional[str]
class ProductDeleteProductsResponse:

Standard success response returned by mutation endpoints.

success: bool

Indicates whether the operation completed successfully.

data: Optional[str]

Optional data payload returned by the operation.

message: Optional[str]

Human-readable message describing the result.

class ProductCreatePricesResponse:

Standard success response returned by mutation endpoints.

success: bool

Indicates whether the operation completed successfully.

data: Optional[str]

Optional data payload returned by the operation.

message: Optional[str]

Human-readable message describing the result.

class ProductCreateDiscountPricesResponse:

Standard success response returned by mutation endpoints.

success: bool

Indicates whether the operation completed successfully.

data: Optional[str]

Optional data payload returned by the operation.

message: Optional[str]

Human-readable message describing the result.

class ProductCreateProductFreeFieldsResponse:

Standard success response returned by mutation endpoints.

success: bool

Indicates whether the operation completed successfully.

data: Optional[str]

Optional data payload returned by the operation.

message: Optional[str]

Human-readable message describing the result.