API

Get order heatmap by time

GET/api/crm/v2/orders_over_timev2
operationId: ordersOverTime.default

Returns an order heatmap: hours of the day by days of the week, calendar days, or months. Up to two periods can be returned per request to compare week-to-week or month-to-month data. Orders are aggregated by hour in UTC, and only non-empty hours are returned. Time zone conversion, row grouping, and empty cells are handled on the client side.

Authorization

api-token + language + role

Query parameters

date_creation_fromstring

Example: 25/04/2024

date_creation_tostring

Example: 26/04/2024

date_comparison_fromstring

Second period; empty if there is nothing to compare with

Example: 25/03/2024

date_comparison_tostring

Example: 26/03/2024

granularitystring (OrdersOverTimeGranularity)

Grid rows: days of the week, calendar days, or months. Affects display only and never aggregation.

Values:weekdaydaymonth

chain_idinteger
branch_idinteger
order_statusstring (OrderStatus)

Order status: on the way, completed, assembling, in the kitchen, not processed, ready for dispatch, waiting to be sent to kitchen, waiting for remake, cancelled, confirmed, prepared

Values:in_transitdoneassemblyin_kitchennot_processedready_to_transitwait_to_kitchenwait_remadecanceledconfirmedcooked

Example: confirmed

platformstring (OrderPlatform)

Order platform

Values:androidapifbiosvksite

delivery_methodstring (OrderDelivery)

Delivery method: courier or pickup

Values:courierpickup

payment_statusstring (OrderPayment)

Payment status: unpaid, pending, paid

Values:not_paidwaitingpaid

operator_idinteger
courier_idinteger

Responses

OK

object
statusstringrequired

Values:successerror

Example: success

dataobject
filtersobject
date_creation_fromobject (FilterDateFrom)
valuestringcan be null

Example: 2026-08-01 00:00:00

typestringrequired

Example: date

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

date_creation_toobject (FilterDateTo)
valuestringcan be null

Example: 2026-08-31 23:59:59

typestringrequired

Example: date

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

date_creation_rangeobject (FilterDateRange)

Predefined date filter ranges; the lower boundary is calculated in the user's timezone. value is the range corresponding to the current *_from and *_to; null means a custom range. default is the range the server uses when a request has no dates: it is also applied on the first section load and when resetting. The upper boundary of the range always matches the user's current day, so option does not include it: you do not need to send *_to for a predefined range, the server sets it automatically. Ranges longer than one year are trimmed from the most recent boundary.

valuestring (DateRange) can be null

Predefined date filter range. It does not have its own query parameter: the lower boundary is pre-calculated in option and is used as *_from. The upper boundary is neither returned in the response nor sent in the request—it is always set to the user's current day by the server.

Values:todaythree_daysweektwo_weeksmonthquarterhalf_yearyear

Example: today

defaultstring (DateRange) required

Predefined date filter range. It does not have its own query parameter: the lower boundary is pre-calculated in option and is used as *_from. The upper boundary is neither returned in the response nor sent in the request—it is always set to the user's current day by the server.

Values:todaythree_daysweektwo_weeksmonthquarterhalf_yearyear

Example: today

typestringrequired

Example: select

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

optionarray of objectrequired
valuestring (DateRange) required

Predefined date filter range. It does not have its own query parameter: the lower boundary is pre-calculated in option and is used as *_from. The upper boundary is neither returned in the response nor sent in the request—it is always set to the user's current day by the server.

Values:todaythree_daysweektwo_weeksmonthquarterhalf_yearyear

Example: today

date_fromstringrequired

Example: 25/08/2026

date_comparison_fromobject (FilterDateFrom)
valuestringcan be null

Example: 2026-08-01 00:00:00

typestringrequired

Example: date

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

date_comparison_toobject (FilterDateTo)
valuestringcan be null

Example: 2026-08-31 23:59:59

typestringrequired

Example: date

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

date_comparison_rangeobject (FilterDateRangeOptional)

Predefined date filter ranges with no default value: default is always null.

valuestring (DateRange) can be null

Predefined date filter range. It does not have its own query parameter: the lower boundary is pre-calculated in option and is used as *_from. The upper boundary is neither returned in the response nor sent in the request—it is always set to the user's current day by the server.

Values:todaythree_daysweektwo_weeksmonthquarterhalf_yearyear

Example: today

defaultstring (DateRange) can be null

Predefined date filter range. It does not have its own query parameter: the lower boundary is pre-calculated in option and is used as *_from. The upper boundary is neither returned in the response nor sent in the request—it is always set to the user's current day by the server.

Values:todaythree_daysweektwo_weeksmonthquarterhalf_yearyear

Example: today

typestringrequired

Example: select

optionarray of objectrequired
valuestring (DateRange) required

Predefined date filter range. It does not have its own query parameter: the lower boundary is pre-calculated in option and is used as *_from. The upper boundary is neither returned in the response nor sent in the request—it is always set to the user's current day by the server.

Values:todaythree_daysweektwo_weeksmonthquarterhalf_yearyear

Example: today

date_fromstringrequired

Example: 25/08/2026

granularityobject (FilterEnum)

Filter enumeration — a flat list of enumeration values

valuestring

Example: example

typestringrequired

Example: select

optionarray of string
modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

chain_idobject (FilterSelectInteger)
valueinteger

Example: 8920

typestringrequired

Example: select

optionarray of object
valueintegerrequired

Example: 8920

namestringrequired

Example: Green Basket | Kaliningrad

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

branch_idobject (FilterSelectInteger)
valueinteger

Example: 8920

typestringrequired

Example: select

optionarray of object
valueintegerrequired

Example: 8920

namestringrequired

Example: Green Basket | Kaliningrad

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

order_statusobject (FilterEnum)

Filter enumeration — a flat list of enumeration values

valuestring

Example: example

typestringrequired

Example: select

optionarray of string
modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

platformobject (FilterEnum)

Filter enumeration — a flat list of enumeration values

valuestring

Example: example

typestringrequired

Example: select

optionarray of string
modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

delivery_methodobject (FilterEnum)

Filter enumeration — a flat list of enumeration values

valuestring

Example: example

typestringrequired

Example: select

optionarray of string
modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

payment_statusobject (FilterEnum)

Filter enumeration — a flat list of enumeration values

valuestring

Example: example

typestringrequired

Example: select

optionarray of string
modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

operator_idobject (FilterSelectInteger)
valueinteger

Example: 8920

typestringrequired

Example: select

optionarray of object
valueintegerrequired

Example: 8920

namestringrequired

Example: Green Basket | Kaliningrad

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

courier_idobject (FilterSelectInteger)
valueinteger

Example: 8920

typestringrequired

Example: select

optionarray of object
valueintegerrequired

Example: 8920

namestringrequired

Example: Green Basket | Kaliningrad

modestring (FilterMode)

How the interface handles the filter; a regular filter does not have mode.
force_shown — always displayed, cannot be hidden.
value_required — entry point to the section: always displayed, cannot have an empty value (until a value is selected, the list is empty; there is no "all" option), global reset does not clear it.

Values:force_shownvalue_required

Example: value_required

periodsarray of object
keystringrequired

Values:ab

Example: a

date_fromstringrequired

Example: 25/04/2024

date_tostringrequired

Example: 26/04/2024

rangestringrequiredcan be null

Predefined period corresponding to the boundaries; null if the period is custom

Example: week

totalobject (OrdersOverTimeValues) required
countintegerrequired

Example: 47

sumnumberrequired

Example: 52640

averagenumberrequired

Example: 1120

bucketsarray of objectrequiredcan be null

Orders grouped by hour; only non-empty hours. Convert the time to the user's time zone, then determine the row and column based on the result and fill missing values with zeros.

datetimestringrequired

The hour to which the orders correspond, in UTC

Example: 2024-04-25 14:00:00

countintegerrequired

Example: 47

sumnumberrequired

Example: 52640