Products Model
Use GET /products to discover products across businesses. The public operation is Product.all; it does not declare operation-level authentication.
Product lookup follows one of two paths:
- Without
order_type_idortype, it delegates to the general product listing behavior. - With a fulfillment type, it evaluates availability through businesses, delivery zones, menus, schedules, and product state.
Availability parameters
timestampis interpreted as a Unix timestamp when present.locationusesLAT,LNGand must contain exactly two numeric values.dropdown_option_idordropdownoptioncan select a configured delivery-zone option instead of coordinates.order_type_idortypeselects the fulfillment mode.professional_idcan scope products for professional assignments.groupBy=businesschanges the result from products to matching businesses in the availability branch.
Fulfillment modes include:
| Value | Mode |
|---|---|
1 | delivery |
2 | pickup |
3 | eatin |
4 | curbside |
5 | driver_thru |
6 | seat_delivery |
7 | catering_delivery |
8 | catering_pickup |
9 | reservation |
Fields such as offer_rate, offer_rate_type, and offer_include_options belong to the product model; they are not query parameters for GET /products.
The Product model contains many additional catalog, inventory, pricing, SEO, dietary, and operational fields. Use sparse projections and operation-specific schemas instead of treating this guide as a complete response contract.
Schema properties
Schema: Product
| Name | Type | Description |
|---|---|---|
allergens | object | array | null | — |
barcode | string | null | — |
barcode_alternative | string | null | — |
calories | number | null | — |
category_id | integer | null | — |
cost_offer_price | number | null | — |
cost_price | number | null | — |
created_at | string | null | — |
deleted_at | string | null | — |
description | string | null | — |
dietary_tags | object | array | null | — |
duration | any | — |
enabled | boolean | null | — |
estimated_person | integer | null | — |
external_id | integer | null | — |
featured | boolean | null | — |
fee_id | integer | null | — |
hide_special_instructions | boolean | null | — |
id | integer | null | — |
images | string | null | — |
in_offer | boolean | null | — |
inventoried | boolean | null | — |
is_alcohol | boolean | null | — |
is_hidden | boolean | null | — |
load_type | string | null | — |
maximum_per_order | integer | null | — |
minimum_per_order | integer | null | — |
name | string | null | — |
offer_include_options | boolean | null | — |
offer_price | number | null | — |
offer_rate | number | null | — |
offer_rate_type | integer | null | — |
price | number | null | — |
quantity | integer | null | — |
rank | number | null | — |
seo_description | string | null | — |
seo_image | string | null | — |
seo_keywords | string | null | — |
seo_title | string | null | — |
sku | string | null | — |
slug | string | null | — |
snooze_until | any | — |
tax_id | integer | null | — |
type | any | — |
updated_at | string | null | — |
upselling | boolean | null | — |
weight | number | null | — |
weight_unit | string | null | — |