Skip to main content
GET
/
products
List products
curl --request GET \
  --url https://integrations.clopos.com/open-api/products \
  --header 'x-brand: <api-key>' \
  --header 'x-token: <api-key>' \
  --header 'x-venue: <api-key>'

Overview

This endpoint allows you to retrieve your branch-based product catalog. It offers a multitude of filtering options such as type, category_id, and tags, and supports five main product types: GOODS, DISH, TIMER, PREPARATION, and INGREDIENT. The returned data includes product variants (modifications), modifiers (modificator_groups), recipes (recipe), and all other related data.

Product Types and Behaviors

While all product types are fundamentally “products,” each has its own specific models and behaviors:
  • GOODS: These can have variants (modifications).
    • With Variants: If a product has variants, only those variants can be sold. The main product acts as a parent and cannot be sold itself. Each modification behaves like a standard GOODS product without variants.
    • Without Variants: Standard products that can be sold directly.
  • DISH: This type can have modificator_groups (modifiers).
    • Modifiers: Modifiers (Modificator) are used exclusively for DISH type products. They represent add-on options like “Spice Level” or “Extra Lavash.”
  • TIMER: Represents time-based services (e.g., PS5 rental). Pricing is determined by rules defined in the setting field.
  • PREPARATION: Semi-finished items that have their own recipe and are used in the production of other DISH items.
  • INGREDIENT: Raw materials used in production.

HTTP Request

GET https://integrations.clopos.com/open-api/products

Query Parameters

Queries are added to the URL as a single, URL-encoded JSON object.
page
integer
default:"1"
The page number for pagination.
limit
integer
default:"50"
The number of products to return per page (Max: 100).
filters
object
An object containing the filters to apply. See the Filtering section for details and examples.
params
object
Additional parameters reserved for future use.
url
string
default:"product"
The backend resource the request is routed to. This is typically fixed as "product".

Filtering

The filters parameter allows you to create complex and detailed queries. Each filter is defined as an array with the structure ["filter_name", value].
type
array[string]
Filters by product type. Possible values: GOODS, DISH, TIMER, PREPARATION, INGREDIENT. Example: {"type":["type",["GOODS","DISH"]]}
category_id
array[integer]
Lists products belonging to the specified category IDs. Example: {"category_id":["category_id",[1,3]]}
station_id
array[integer]
Retrieves products assigned to the specified station IDs. Example: {"station_id":["station_id",[1,2]]}
tags
array[integer]
Filters for products with the specified tag IDs. Example: {"tags":["tags",[1,2]]}
giftable
string
Filters for products that are ("1") or are not giftable. Example: {"giftable":["giftable","1"]}
discountable
string
Filters for products that are ("1") or are not discountable. Example: {"discountable":["discountable","1"]}
inventory_behavior
string
Filters by inventory behavior mode (e.g., "3"). Example: {"inventory_behavior":["inventory_behavior","3"]}
haveIngredients
string
Retrieves products that have a recipe/ingredients ("1"). Example: {"haveIngredients":["haveIngredients","1"]}
sold_by_portion
string
Lists products sold by portion ("1"). Example: {"sold_by_portion":["sold_by_portion","1"]}
has_variants
string
Lists products that have variants (modifications) ("1"). Example: {"has_variants":["has_variants","1"]}
has_modifiers
string
Retrieves products that have a modifier group (modificator_groups) ("1"). Example: {"has_modifiers":["has_modifiers","1"]}
has_barcode
string
Retrieves products that have a barcode ("1"). Example: {"has_barcode":["has_barcode","1"]}
has_service_charge
string
Lists products to which a service charge applies ("1"). Example: {"has_service_charge":["has_service_charge","1"]}

Request Examples

# A URL-encoded JSON request including all filters
curl -G 'https://integrations.clopos.com/open-api/products' \
  --data-urlencode '{
    "page": 1,
    "limit": 50,
    "filters": {
      "type": ["type", ["GOODS","DISH","TIMER"]],
      "category_id": ["category_id", [1, 3]],
      "station_id": ["station_id", [1, 2]],
      "giftable": ["giftable", "1"],
      "haveIngredients": ["haveIngredients", "1"],
      "inventory_behavior": ["inventory_behavior", "3"],
      "tags": ["tags", [1, 2]],
      "sold_by_portion": ["sold_by_portion", "1"],
      "discountable": ["discountable", "1"],
      "has_modifiers": ["has_modifiers", "1"],
      "has_variants": ["has_variants", "1"],
      "has_barcode": ["has_barcode", "1"],
      "has_service_charge": ["has_service_charge", "1"]
    },
    "params": {},
    "url": "product"
  }' \
  -H "x-token: oauth_example_token" \
  -H "x-brand: openapitest" \
  -H "x-venue: 1"

Response Body

GOODS (With Variants)
{
    "id": 419,
    "cid": null,
    "parent_id": null,
    "station_id": null,
    "category_id": null,
    "unit_id": 1,
    "net_output": 1,
    "type": "GOODS",
    "name": "Fanta",
    "parent_name": "",
    "image": null,
    "position": null,
    "barcode": null,
    "gov_code": "654564",
    "status": 1,
    "hidden": 0,
    "sold_by_weight": false,
    "max_age": null,
    "discountable": true,
    "giftable": false,
    "has_modifications": true,
    "meta": {
        "langs": {
            "en": [],
            "az": []
        },
        "availability": {
            "schedules": {
                "itemAvailability": [],
                "itemVisibility": []
            }
        },
        "gov_package_code": "234234324"
    },
    "setting": null,
    "emenu_category_id": null,
    "emenu_position": null,
    "emenu_hidden": false,
    "accounting_category_id": null,
    "description": null,
    "price": 0,
    "cost_price": 0,
    "markup_rate": 0,
    "cooking_time": 0,
    "ignore_service_charge": false,
    "inventory_behavior": 0,
    "low_stock": 0,
    "unit_weight": 1,
    "created_at": "2024-07-01 07:51:25",
    "updated_at": "2024-07-01 08:01:04",
    "deleted_at": null,
    "name_slug": "fanta",
    "full_name": "Fanta",
    "gross_margin": 0,
    "slug": "fanta",
    "color": "00bcd4",
    "is_inventory_behavior_changeable": true,
    "venues": [],
    "properties": [],
    "modifications": [
        {
            "id": 420,
            "cid": null,
            "parent_id": 419,
            "station_id": null,
            "category_id": null,
            "unit_id": 1,
            "net_output": 1,
            "type": "MODIFICATION",
            "name": "0.5 L",
            "parent_name": "Fanta",
            "image": null,
            "position": null,
            "barcode": null,
            "gov_code": null,
            "status": 1,
            "hidden": 0,
            "sold_by_weight": false,
            "max_age": null,
            "discountable": true,
            "giftable": false,
            "has_modifications": false,
            "meta": {
                "langs": {
                    "en": [],
                    "az": []
                },
                "gov_package_code": "234234324"
            },
            "setting": null,
            "emenu_category_id": null,
            "emenu_position": null,
            "emenu_hidden": false,
            "accounting_category_id": null,
            "description": null,
            "price": 5,
            "cost_price": 1,
            "markup_rate": 400,
            "cooking_time": 0,
            "ignore_service_charge": false,
            "inventory_behavior": 0,
            "low_stock": 0,
            "unit_weight": 1,
            "created_at": "2024-07-01 07:51:25",
            "updated_at": "2025-08-22 12:19:43",
            "deleted_at": null,
            "name_slug": "05 l",
            "full_name": "Fanta 0.5 L",
            "gross_margin": 80,
            "slug": "05-l",
            "venues": [],
            "properties": []
        },
        {
            "id": 421,
            "cid": null,
            "parent_id": 419,
            "station_id": null,
            "category_id": null,
            "unit_id": 1,
            "net_output": 1,
            "type": "MODIFICATION",
            "name": "1 L",
            "parent_name": "Fanta",
            "image": null,
            "position": null,
            "barcode": null,
            "gov_code": null,
            "status": 1,
            "hidden": 0,
            "sold_by_weight": false,
            "max_age": null,
            "discountable": true,
            "giftable": false,
            "has_modifications": false,
            "meta": {
                "langs": {
                    "en": [],
                    "az": []
                },
                "gov_package_code": "234234324"
            },
            "setting": null,
            "emenu_category_id": null,
            "emenu_position": null,
            "emenu_hidden": false,
            "accounting_category_id": null,
            "description": null,
            "price": 10,
            "cost_price": 7,
            "markup_rate": 42.8571,
            "cooking_time": 0,
            "ignore_service_charge": false,
            "inventory_behavior": 0,
            "low_stock": 0,
            "unit_weight": 1,
            "created_at": "2024-07-01 07:51:26",
            "updated_at": "2025-09-05 10:32:59",
            "deleted_at": null,
            "name_slug": "1 l",
            "full_name": "Fanta 1 L",
            "gross_margin": 30,
            "slug": "1-l",
            "venues": [],
            "properties": []
        }
    ],
    "taxes": [],
    "tags": [],
    "media": []
}
GOODS (No Variants)
{
    "id": 422,
    "cid": null,
    "parent_id": null,
    "station_id": null,
    "category_id": null,
    "unit_id": 1,
    "net_output": 1,
    "type": "GOODS",
    "name": "Cola",
    "parent_name": "",
    "image": null,
    "position": null,
    "barcode": null,
    "gov_code": "234234",
    "status": 1,
    "hidden": 0,
    "sold_by_weight": false,
    "max_age": null,
    "discountable": true,
    "giftable": false,
    "has_modifications": false,
    "meta": {
        "gov_package_code": "2343244",
        "langs": {
            "en": {
                "name": null,
                "description": null
            },
            "az": {
                "name": null,
                "description": null
            },
            "ar": {
                "name": null,
                "description": null
            },
            "tr": {
                "name": null,
                "description": null
            },
            "ru": {
                "name": null,
                "description": null
            },
            "uz": {
                "name": null,
                "description": null
            },
            "es": {
                "name": null,
                "description": null
            },
            "zh": {
                "name": null,
                "description": null
            },
            "kk": {
                "name": null,
                "description": null
            }
        }
    },
    "setting": null,
    "emenu_category_id": null,
    "emenu_position": null,
    "emenu_hidden": false,
    "accounting_category_id": null,
    "description": null,
    "price": 8,
    "cost_price": 1,
    "markup_rate": 700,
    "cooking_time": 0,
    "ignore_service_charge": false,
    "inventory_behavior": 3,
    "low_stock": 0,
    "unit_weight": 1,
    "created_at": "2024-07-01 07:52:02",
    "updated_at": "2025-09-26 10:11:25",
    "deleted_at": null,
    "name_slug": "cola",
    "full_name": "Cola",
    "gross_margin": 87.5,
    "slug": "cola",
    "color": "00bcd4",
    "is_inventory_behavior_changeable": false,
    "venues": [],
    "properties": {
        "gov_package_code": "2343244"
    },
    "modifications": [],
    "taxes": [
        {
            "id": 1,
            "type_id": 2,
            "rounding_option": "ROUND_HALF_UP",
            "priority": 1,
            "calculation_type": 1,
            "name": "edv`",
            "rate": 18,
            "meta": null,
            "is_default": false,
            "status": 1,
            "created_at": "2023-04-12T11:14:45.000000Z",
            "deleted_at": null,
            "type": {
                "id": 2,
                "name": "Daxil"
            },
            "has_sale_types": true,
            "sale_types": [
                {
                    "id": 2,
                    "name": "Delivery",
                    "media": [
                        {
                            "urls": {
                                "original": "https://cdn.clopos.com/_clopos/delivery.png",
                                "large": "https://cdn.clopos.com/_clopos/delivery.png"
                            }
                        }
                    ],
                    "pivot": {
                        "tax_id": 1,
                        "sale_type_id": 2
                    },
                    "status": []
                },
                {
                    "id": 1004,
                    "name": "test",
                    "media": [],
                    "pivot": {
                        "tax_id": 1,
                        "sale_type_id": 1004
                    },
                    "status": []
                }
            ]
        },
        {
            "id": 2,
            "type_id": 2,
            "rounding_option": "ROUND_HALF_UP",
            "priority": 1,
            "calculation_type": 1,
            "name": "I18",
            "rate": 18,
            "meta": null,
            "is_default": false,
            "status": 1,
            "created_at": "2023-07-14T11:52:47.000000Z",
            "deleted_at": null,
            "type": {
                "id": 2,
                "name": "Daxil"
            },
            "has_sale_types": true,
            "sale_types": [
                {
                    "id": 3,
                    "name": "Takeaway",
                    "media": [
                        {
                            "urls": {
                                "original": "https://cdn.clopos.com/_clopos/takeaway.png",
                                "large": "https://cdn.clopos.com/_clopos/takeaway.png"
                            }
                        }
                    ],
                    "pivot": {
                        "tax_id": 2,
                        "sale_type_id": 3
                    },
                    "status": []
                }
            ]
        }
    ],
    "tags": [],
    "media": []
}
DISH
{
    "price": 200,
    "cost_price": 21.25,
    "id": 1,
    "cid": null,
    "parent_id": null,
    "station_id": 1,
    "category_id": 1,
    "unit_id": 1,
    "net_output": 1,
    "type": "DISH",
    "name": "Mega Wrap Combo with Free Raw Meatball Wrap.",
    "parent_name": "",
    "image": {
        "original": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/original.jpg",
        "extra_large": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/extra_large.jpg",
        "original_large": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/original_large.jpg",
        "thumb": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/thumb.jpg",
        "blur_hash": "LMSPb2j@~Xt7xvfQM{fQxuj[M{ay"
    },
    "position": 1,
    "barcode": "9780750310512",
    "gov_code": null,
    "status": 1,
    "hidden": 0,
    "sold_by_weight": false,
    "max_age": null,
    "discountable": true,
    "giftable": true,
    "has_modifications": false,
    "meta": {
        "allergies": [],
        "diets": [],
        "langs": {
            "en": {
                "name": "Mega Wrap Combo with Free Raw Meatball Wrap.",
                "description": "description test"
            },
            "az": {
                "name": "Mega Wrap Combo with Free Raw Meatball Wrap (AZ)",
                "description": "Sample description text (AZ)"
            },
            "ar": [],
            "tr": [],
            "ru": [],
            "uz": [],
            "kz": [],
            "es": []
        },
        "modifier_pos": {
            "5": 0,
            "8": 1,
            "9": 2,
            "32": 3
        },
        "availability": {
            "itemAvailability": false,
            "itemVisibility": false,
            "schedules": {
                "itemAvailability": [],
                "itemVisibility": []
            }
        },
        "gov_package_code": "564564645"
    },
    "setting": null,
    "emenu_category_id": 1,
    "emenu_position": null,
    "emenu_hidden": false,
    "accounting_category_id": null,
    "description": null,
    "markup_rate": 561.157,
    "cooking_time": 20,
    "ignore_service_charge": false,
    "inventory_behavior": 0,
    "low_stock": 0,
    "unit_weight": 1,
    "created_at": "2024-05-15 12:36:10",
    "updated_at": "2025-09-25 06:26:22",
    "deleted_at": null,
    "name_slug": "mega wrap combo with free raw meatball wrap",
    "full_name": "Mega Wrap Combo with Free Raw Meatball Wrap.",
    "gross_margin": 89.375,
    "slug": "mega-wrap-combo-with-free-raw-meatball-wrap",
    "color": "34495e",
    "venues": [],
    "properties": {
        "measure": 250,
        "measure_unit_id": 5,
        "stop_list_setting": []
    },
    "taxes": [
        {
            "id": 1,
            "type_id": 2,
            "rounding_option": "ROUND_HALF_UP",
            "priority": 1,
            "calculation_type": 1,
            "name": "Simplified Tax 2%",
            "rate": 18,
            "meta": null,
            "is_default": false,
            "status": 1,
            "created_at": "2023-04-12T11:14:45.000000Z",
            "deleted_at": null,
            "type": {
                "id": 2,
                "name": "Daxil"
            },
            "has_sale_types": true,
            "sale_types": [
                {
                    "id": 1004,
                    "name": "test",
                    "media": [],
                    "pivot": {
                        "tax_id": 1,
                        "sale_type_id": 1004
                    },
                    "status": []
                },
                {
                    "id": 2,
                    "name": "Delivery",
                    "media": [
                        {
                            "urls": {
                                "original": "https://cdn.clopos.com/_clopos/delivery.png",
                                "large": "https://cdn.clopos.com/_clopos/delivery.png"
                            }
                        }
                    ],
                    "pivot": {
                        "tax_id": 1,
                        "sale_type_id": 2
                    },
                    "status": []
                }
            ]
        }
    ],
    "unit": {
        "id": 1,
        "_lft": 1,
        "_rgt": 4,
        "parent_id": null,
        "name": "piece",
        "type": "PIECE",
        "symbol": "pcs",
        "equal": null,
        "deleted_at": null
    },
    "modificator_groups": [
        {
            "id": 5,
            "name": "Spice Selection",
            "type": 1,
            "min_select": 0,
            "max_select": 1,
            "meta": null,
            "status": true,
            "adjust_to_portion": false,
            "created_at": "2024-05-15T12:36:10.000000Z",
            "updated_at": "2024-05-18T11:47:10.000000Z",
            "deleted_at": null,
            "pivot": {
                "product_id": 1,
                "modificator_group_id": 5
            },
            "modificators": [
                {
                    "id": 22,
                    "dish_id": 0,
                    "ingredient_id": null,
                    "group_id": 5,
                    "name": "Medium Spice",
                    "image": null,
                    "price": 0,
                    "cost_price": 0,
                    "brutto": 0,
                    "default_count": 0,
                    "min_count": 0,
                    "max_count": 1,
                    "meta": null,
                    "status": true,
                    "position": 0,
                    "created_at": "2024-05-15T12:36:10.000000Z",
                    "updated_at": "2024-09-06T18:32:18.000000Z",
                    "deleted_at": null,
                    "media": [],
                    "ingredient": null
                },
                {
                    "id": 23,
                    "dish_id": 0,
                    "ingredient_id": null,
                    "group_id": 5,
                    "name": "Extra Spice",
                    "image": null,
                    "price": 0,
                    "cost_price": 0,
                    "brutto": 0,
                    "default_count": 0,
                    "min_count": 0,
                    "max_count": 1,
                    "meta": null,
                    "status": true,
                    "position": 1,
                    "created_at": "2024-05-15T12:36:10.000000Z",
                    "updated_at": "2024-09-06T18:32:18.000000Z",
                    "deleted_at": null,
                    "media": [],
                    "ingredient": null
                },
                {
                    "id": 187,
                    "dish_id": 0,
                    "ingredient_id": 0,
                    "group_id": 5,
                    "name": "yyy",
                    "image": null,
                    "price": 0,
                    "cost_price": 0,
                    "brutto": 0,
                    "default_count": 0,
                    "min_count": 0,
                    "max_count": 0,
                    "meta": null,
                    "status": true,
                    "position": 2,
                    "created_at": "2024-09-06T18:34:01.000000Z",
                    "updated_at": "2024-09-06T18:35:09.000000Z",
                    "deleted_at": null,
                    "media": [],
                    "ingredient": null
                }
            ]
        }
    ],
    "recipe": [
        {
            "id": 233,
            "cid": null,
            "parent_id": null,
            "station_id": null,
            "category_id": null,
            "unit_id": 1,
            "net_output": 1,
            "type": "PREPARATION",
            "name": "Quzu Y/F",
            "parent_name": "",
            "image": null,
            "position": null,
            "barcode": null,
            "gov_code": null,
            "status": 1,
            "hidden": 0,
            "sold_by_weight": false,
            "max_age": null,
            "discountable": true,
            "giftable": false,
            "has_modifications": false,
            "meta": null,
            "setting": null,
            "emenu_category_id": null,
            "emenu_position": null,
            "emenu_hidden": false,
            "accounting_category_id": null,
            "description": null,
            "price": 0,
            "cost_price": 5,
            "markup_rate": 0,
            "cooking_time": 0,
            "ignore_service_charge": false,
            "inventory_behavior": 0,
            "low_stock": 0,
            "unit_weight": 0,
            "created_at": "2024-05-20 14:08:30",
            "updated_at": "2024-08-30 12:15:27",
            "deleted_at": null,
            "name_slug": "quzu yf",
            "full_name": "Quzu Y/F",
            "gross_margin": 0,
            "slug": "quzu-yf",
            "pivot": {
                "dish_id": 1,
                "ingredient_id": 233,
                "net": "0.000",
                "gross": "1.000",
                "net_put": null
            },
            "properties": [],
            "unit": {
                "id": 1,
                "_lft": 1,
                "_rgt": 4,
                "parent_id": null,
                "name": "piece",
                "type": "PIECE",
                "symbol": "pcs",
                "equal": null,
                "deleted_at": null
            }
        }
    ],
    "tags": [],
    "media": [
        {
            "uuid": "f78e74e9-75da-468f-b7cf-96bed863832f",
            "mime_type": "image/jpeg",
            "size": 152789,
            "urls": {
                "original": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/original.jpg",
                "extra_large": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/extra_large.jpg",
                "original_large": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/original_large.jpg",
                "thumb": "https://cdn.clopos.com/omega/f78e74e9-75da-468f-b7cf-96bed863832f/thumb.jpg"
            },
            "blur_hash": "LMSPb2j@~Xt7xvfQM{fQxuj[M{ay",
            "dimensions": {
                "width": 1373,
                "height": 776
            }
        }
    ]
}
TIMER
{
    "id": 407,
    "cid": null,
    "parent_id": null,
    "station_id": null,
    "category_id": 41,
    "unit_id": 1,
    "net_output": 1,
    "type": "TIMER",
    "name": "PS5",
    "parent_name": "",
    "image": null,
    "position": 0,
    "barcode": null,
    "gov_code": null,
    "status": 1,
    "hidden": 0,
    "sold_by_weight": false,
    "max_age": null,
    "discountable": true,
    "giftable": false,
    "has_modifications": false,
    "meta": null,
    "setting": {
        "calculation_methods": 0,
        "interval": 60,
        "prices": [
            {
                "price": 3,
                "from": 120
            }
        ]
    },
    "emenu_category_id": 0,
    "emenu_position": 0,
    "emenu_hidden": false,
    "accounting_category_id": null,
    "description": null,
    "price": 10,
    "cost_price": 0,
    "markup_rate": 0,
    "cooking_time": 0,
    "ignore_service_charge": false,
    "inventory_behavior": 3,
    "low_stock": 0,
    "unit_weight": 1,
    "created_at": "2024-06-06 06:43:42",
    "updated_at": "2024-07-22 08:16:40",
    "deleted_at": null,
    "name_slug": "ps5",
    "full_name": "PS5",
    "gross_margin": 100,
    "slug": "ps5",
    "color": "00bcd4",
    "venues": [],
    "properties": [],
    "taxes": [
        {
            "id": 5,
            "type_id": 3,
            "rounding_option": "ROUND_HALF_UP",
            "priority": 1,
            "calculation_type": 1,
            "name": "Simplified Tax 2%",
            "rate": 6.95,
            "meta": null,
            "is_default": false,
            "status": 1,
            "created_at": "2023-07-24T23:49:53.000000Z",
            "deleted_at": null,
            "type": {
                "id": 3,
                "name": "Fixed Tax"
            },
            "has_sale_types": false,
            "sale_types": []
        }
    ],
    "tags": [],
    "media": []
}
PREPARATION
{
    "id": 233,
    "cid": null,
    "parent_id": null,
    "station_id": null,
    "category_id": null,
    "unit_id": 1,
    "net_output": 1,
    "type": "PREPARATION",
    "name": "Quzu Y/F",
    "parent_name": "",
    "image": null,
    "position": null,
    "barcode": null,
    "gov_code": null,
    "status": 1,
    "hidden": 0,
    "sold_by_weight": false,
    "max_age": null,
    "discountable": true,
    "giftable": false,
    "has_modifications": false,
    "meta": null,
    "setting": null,
    "emenu_category_id": null,
    "emenu_position": null,
    "emenu_hidden": false,
    "accounting_category_id": null,
    "description": null,
    "price": 0,
    "cost_price": 5,
    "markup_rate": 0,
    "cooking_time": 0,
    "ignore_service_charge": false,
    "inventory_behavior": 0,
    "low_stock": 0,
    "unit_weight": 0,
    "created_at": "2024-05-20 14:08:30",
    "updated_at": "2024-08-30 12:15:27",
    "deleted_at": null,
    "name_slug": "quzu yf",
    "full_name": "Quzu Y/F",
    "gross_margin": 0,
    "slug": "quzu-yf",
    "properties": [],
    "unit": {
        "id": 1,
        "_lft": 1,
        "_rgt": 4,
        "parent_id": null,
        "name": "piece",
        "type": "PIECE",
        "symbol": "pcs",
        "equal": null,
        "deleted_at": null
    },
    "recipe": [
        {
            "id": 232,
            "cid": null,
            "parent_id": null,
            "station_id": null,
            "category_id": null,
            "unit_id": 4,
            "net_output": 1,
            "type": "INGREDIENT",
            "name": "Lamb Meat",
            "parent_name": "",
            "image": null,
            "position": null,
            "barcode": null,
            "gov_code": null,
            "status": 1,
            "hidden": 0,
            "sold_by_weight": false,
            "max_age": null,
            "discountable": true,
            "giftable": false,
            "has_modifications": false,
            "meta": null,
            "setting": null,
            "emenu_category_id": null,
            "emenu_position": null,
            "emenu_hidden": false,
            "accounting_category_id": null,
            "description": null,
            "price": 0,
            "cost_price": 15,
            "markup_rate": 0,
            "cooking_time": 0,
            "ignore_service_charge": false,
            "inventory_behavior": 0,
            "low_stock": 0,
            "unit_weight": 0,
            "created_at": "2024-05-20 14:08:04",
            "updated_at": "2024-05-22 10:11:12",
            "deleted_at": null,
            "name_slug": "lamb meat",
            "full_name": "Lamb Meat",
            "gross_margin": 0,
            "slug": "lamb-meat",
            "pivot": {
                "dish_id": 233,
                "ingredient_id": 232,
                "net": "0.000",
                "gross": "1.000",
                "net_put": "1.0000"
            },
            "properties": [],
            "unit": {
                "id": 4,
                "_lft": 13,
                "_rgt": 16,
                "parent_id": null,
                "name": "kilogram",
                "type": "WEIGHT",
                "symbol": "kg",
                "equal": null,
                "deleted_at": null
            }
        }
    ],
    "tags": [],
    "media": []
}
INGREDIENT
{
    "id": 232,
    "cid": null,
    "parent_id": null,
    "station_id": null,
    "category_id": null,
    "unit_id": 4,
    "net_output": 1,
    "type": "INGREDIENT",
    "name": "Lamb Meat",
    "parent_name": "",
    "image": null,
    "position": null,
    "barcode": null,
    "gov_code": null,
    "status": 1,
    "hidden": 0,
    "sold_by_weight": false,
    "max_age": null,
    "discountable": true,
    "giftable": false,
    "has_modifications": false,
    "meta": null,
    "setting": null,
    "emenu_category_id": null,
    "emenu_position": null,
    "emenu_hidden": false,
    "accounting_category_id": null,
    "description": null,
    "price": 0,
    "cost_price": 15,
    "markup_rate": 0,
    "cooking_time": 0,
    "ignore_service_charge": false,
    "inventory_behavior": 0,
    "low_stock": 0,
    "unit_weight": 0,
    "created_at": "2024-05-20 14:08:04",
    "updated_at": "2024-05-22 10:11:12",
    "deleted_at": null,
    "name_slug": "lamb meat",
    "full_name": "Lamb Meat",
    "gross_margin": 0,
    "slug": "lamb-meat",
    "is_inventory_behavior_changeable": true,
    "properties": [],
    "packages": [
        {
            "id": 6,
            "_lft": 2,
            "_rgt": 3,
            "parent_id": 1,
            "name": "Bundle 10 pcs",
            "type": "PACKAGE",
            "symbol": "pcs",
            "equal": 10,
            "deleted_at": null,
            "pivot": {
                "product_id": 232,
                "package_id": 6
            }
        }
    ],
    "tags": [],
    "media": []
}

Field Reference

Product Object

FieldTypeDescription
idintegerUnique product identifier.
typestringProduct type. Values: GOODS, DISH, TIMER, PREPARATION, INGREDIENT.
namestringThe main name of the product.
full_namestringThe full product name, including variant information.
statusintegerProduct status (1: Active, 0: Inactive).
pricenumberThe base price of the product (variants may have their own prices).
cost_pricenumberThe cost price of the product.
has_modificationsbooleanIf true, the product has variants in the modifications array.
modificationsarrayList of variants for GOODS type products. See Variant Object.
modificator_groupsarrayModifier groups for DISH type products. See Modifier Group.
recipearrayRecipe for DISH or PREPARATION type products. See Recipe Item.
packagesarrayPackages for INGREDIENT type products. See Package Object.
settingobjectPricing rules for TIMER type products. See Timer Settings.
taxesarrayTaxes applied to the product.
tagsarrayTags assigned to the product.
created_atstringCreation timestamp (ISO 8601).
updated_atstringLast update timestamp (ISO 8601).

Variant Object (modifications)

Represents different versions (e.g., size, color) of a GOODS type product.
FieldTypeDescription
idintegerThe unique identifier of the variant.
parent_idintegerThe identifier of the parent product.
typestringAlways MODIFICATION.
namestringThe name of the variant (e.g., “0.5 L”).
pricenumberThe sales price of the variant.
cost_pricenumberThe cost price of the variant.

Modifier Group (modificator_groups)

Defines groups of options that can be added to a DISH type product (e.g., “Pizza Toppings”).
FieldTypeDescription
idintegerThe group’s identifier.
namestringThe name of the group (e.g., “Spice Level”).
typeintegerSelection rule (1: Single-choice, 0: Multi-choice).
min_selectintegerMinimum number of selections.
max_selectintegerMaximum number of selections.
modificatorsarrayList of selectable items. See Modifier Object.

Modifier Object (modificators)

FieldTypeDescription
idintegerThe modifier’s identifier.
namestringThe name of the modifier (e.g., “Medium Hot”).
pricenumberThe additional price for the option.
ingredientobjectIf the modifier is linked to an ingredient, contains ingredient information.

Timer Settings (setting)

Contains the time-based pricing rules for TIMER type products.
FieldTypeDescription
intervalintegerThe pricing interval in minutes.
pricesarrayPrices for different time periods. [{ "price": 3, "from": 120 }]

Recipe Item (recipe)

FieldTypeDescription
ingredient_idintegerThe product ID of the recipe component.
namestringThe name of the component.
grossstringGross amount.
netstringNet amount.

Package Object (packages)

Specifies the purchasing packages defined for INGREDIENT type products.
FieldTypeDescription
idintegerThe package’s identifier.
namestringThe name of the package (e.g., “Bundle 10 pcs”).
equalintegerThe number of base units contained in the package.

Authorizations

x-token
string
header
required

Access token obtained from /auth endpoint

x-brand
string
header
required

Brand identifier

x-venue
string
header
required

Venue identifier

Query Parameters

page
integer
default:1

Page number for pagination (starts at 1)

Required range: x >= 1
limit
integer
default:50

Maximum number of products to return (1-100)

Required range: 1 <= x <= 100
filters
string

JSON-stringified filter array. Each filter is an array of [field, value] or [field, operator, value]. Example: [["type", "PRODUCT"]]

Example:

"[[\"type\",\"PRODUCT\"]]"

Response

Products retrieved successfully

data
object[]
pagination
object