---
metadata:
  - name: generator
    content: Diplodoc Platform v5.19.6
alternate:
  - https://docs.routeq.com/doc/en/delivery/specifics.md
title: "RouteQ — Track\_&\_Trace — special considerations and limitations"
---
> **Documentation Index:** Fetch the complete configuration index at https://docs.routeq.com/doc/en/llms.txt


# Special considerations and limitations

## API request policy {#queries}

- The API response timeout is 60 seconds.
- A single batch request may contain up to 1000 objects. If you need to send more data, divide it into several requests.
- In rare cases (less than 1% of requests), the Track & Trace API returns a 504 Gateway Timeout error. If you receive this error, try sending repeat requests with progressively longer delays. For more information, see [Service errors](https://docs.routeq.com/doc/en/vrp/error-handling.md#service-unavailable).

## API limitations {#limitations}

- The accuracy of order address geocoding is not checked. The address in text format (set with the [address](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/addsAnOrder) parameter) and the order coordinates (set with the [lat](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/addsAnOrder) and [lon](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/addsAnOrder) parameters) must match each other.

  Geographic coordinates are used to set the route. If the geolocation is not very accurate, the app may bring the courier to the wrong point instead of the one specified in text in the app. A common error is an address is given up to a house number but the coordinates point to the middle of the street.

- Cascade deletion of entities is not supported. You don't have to delete unnecessary entities with dependencies on other entities, because they don't interfere with anything.

## Order changes {#changes}

- When you move a canceled order to another day, assign it the `new` status. Otherwise, the order gets added to the route on another day with the `cancelled` status.
- When changing an order, only update the changed attributes. Otherwise, the data received from the courier will be overwritten. For example, the courier already delivered the order, but the system re-assigned the `new` status to the order when updating another field.
- After uploading orders, check them using the [verification](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/getsOrderInformation) resource. This ensures that there are no errors. Otherwise, the courier might not receive part of the orders. This verification must be performed daily and offline before the first courier departs.
- The `route_number` value must be unique while using the API.
- The `number` and `integer` fields must be sent without quotation marks, while the `string` fields must be wrapped in quotation marks. `String` fields must be UTF-8 encoded.

## Handling time at depot {#service-duration}

When exporting solutions from Planning to Track & Trace, the default handling time at depot (`depot.service_duration_s`) is 0, even if it was [set during planning](https://docs.routeq.com/doc/en/vrp/properties-of-depot.md#depot-service-duration).

To set the depot handling time value in Track & Trace, send a PATCH request to the [depots](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/editsDepot) resource:

```
curl -H "Content-Type: application/json" -H "Authorization: OAuth <your-token>" -X PATCH -d @<File_path_in_UTF-8_encoding> https://courier.yandex.ru/api/v1/companies/<your-company-id>/depots/<depot-id>
```

File:

```json
{
  "service_duration_s": <value>
}
```


## Phone number format {#phone}

When adding a phone number, make sure that:

* The format is supported by the mobile employee's terminal. 

* The number is entered in its entirety. 

* If it's a foreign number, the format corresponds to the numbering rules adopted in this country or the International Phone Number System.

## Data upload order {#section_dq2_fqv_vgb}

We recommend uploading data in the following order:

1. Depots.
1. Couriers.
1. Routes.
1. Orders.

A different order may cause errors when accessing objects that haven't been uploaded yet.

## Recommended method for uploading data {#section_eq2_fqv_vgb}

To upload and update your data, use `batch` requests that load data arrays: [depots-batch](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/editsMultipleDepots), [couriers-batch](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/editsMultipleMobileEmployees), [routes-batch](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/editsMultipleRoutes), [orders-batch](https://yandex.ru/routing/doc/en/delivery/redoc/index.html#operation/editsMultipleOrders).

Each uploaded object is assigned:

- A unique number used in requests to the Track & Trace API. Written in fields with the `_id` postfix, such as `depot_id`.
- Unique number that matches the number in the delivery company's database. Written in fields with the `_number` postfix, such as `depot_number`.

Batch uploading also updates existing data.

{% note info %}

Each call is an ACID transaction. If an error calling the batch resource occurs, it cancels all the changes made to the call.

To minimize losses, split the data into several packages. In this case, only the changes in the package with the error will be lost.

{% endnote %}


## Data storage period {#data-retention-period}

{% include [data-retention-period](_includes/data-retention-period-846d93b683f2.md) %}

After the storage period expires, the data can be permanently deleted, but the service reserves the right to retain it.

{% include [warehouse-feedback](_includes/feedback-head-4e3f2a482500.md) %}

