Skip to content
Мои токены Поддержка
Авторизоваться
Для подтверждения действия введите пароль
Чтобы продолжить, введите пароль для пользователя

АТИ Водитель

Работа с приложением «АТИ Водитель»

АТИ Водитель — сервис для мониторинга заказов в режиме реального времени. Сервис позволяет отправлять заказы водителю, получать актуальные статусы перевозки и отслеживать местоположение груза на карте.

До начала выполнения заказа

Для начала работы с приложением «АТИ Водитель» необходимо, чтобы в справочнике транспортных средств был водитель, с установленным приложением «АТИ Водитель». Проверить наличие у водителя приложения можно двумя способами:

  1. По driverId
  2. По номерам телефонов

Если у водителя не установлено приложение, его можно пригласить.

Приглашение водителя установить приложение

Перевозчик приглашает водителя установить приложение в разделе Справочники. Водитель устанавливает приложение и регистрируется в нем. Водитель также может зарегистрироваться самостоятельно.

Взятие груза

Чтобы воспользоваться возможностями АТИ Водителя, необходимо, чтобы в заказе участвовал водитель, зарегистрированный в приложении. Также при взятии груза можно разрешить грузоотправителю доступ к данным из приложения - тогда он сможет видеть маршрут водителя на карте.

Выполнение заказа

Назначение заказа на водителя

После того как заказ перейдет в исполнение, необходимо отправить водителю данные о заказе — адреса точек загрузки и разгрузки, дату и время, информацию о контактных лицах на месте. После этого водитель в приложении сможет изменять статусы заказа, а приложение будет отправлять данные о его местоположении.

  1. Назначить заказ водителю
  2. Получение информации по заказу для водителя
  3. Обновить данные по заказу
  4. Снять водителя с заказа

Получение истории заказа

По мере выполнения заказа можно следить за передвижением водителя по карте и отслеживать историю выполнения заказа.

  1. Получение информации о пройденном маршруте АТИ Водителя
  2. Получение истории

Методы для работы с Заказами с участием АТИ Водителя

Проверка наличия приложения у водителя по номерам телефонов

Возвращает информацию о наличии приложения «АТИ Водитель» и последней активности пользователей. Также здесь можно узнать об смс приглашении водителя в приложение, когда был приглашён, каким контактом вашей фирмы и дошло ли оповещение до адресата.

Получение информации о наличии пользователя по телефону
post /v1/driver/public/presence
Запрос
Модель
{...}
phones: [string]

Номера телефонов

}
Пример запроса
curl 'https://api.ati.su/v1/driver/public/presence' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"phones":["string"]}'
Ответ
200 Success
Модель
[{...}]
phone: string (nullable)
initial_phone: string (nullable)
last_active: date-time (nullable)
has_tracker: boolean
}]
Пример
[...]
{...}
"phone":"string",
"initial_phone":"string",
"last_active":"1970-01-01T00:00:00.000Z",
"has_tracker":false,
"sms_invite_status":{...}
"invite_sent":false,
"contact_name":"string",
"ati_id":0,
"contact_id":0,
"sms_status":"empty",
"when":"1970-01-01T00:00:00.000Z"
}
}
]
4XX Ошибка запроса
Модель
{...}
error_code: string (nullable)

Код ошибки

reason: string (nullable)

Описание ошибки для разработчиков

}
Пример
{...}
"error_code":"validation_error",
"reason":"Ошибка валидации полей phone и device_id"
}

Отправление смс-приглашения с просьбой установить приложение

Отправляет по указанному номеру смс со ссылкой на приложение «АТИ Водитель». Метод имеет ограничения: один контакт может приглашать водителя по одному номеру только раз в 10 минут и 3 раза в сутки, лимит на количество смс для фирмы — 30 смс в сутки. Лимиты сбрасываются по ночам.

Отправление смс-приглашения с просьбой установить приложение
post /v1/driver/public/invite
Запрос
Модель
{...}
phone: string (nullable)

Номер телефона

}
Пример запроса
curl 'https://api.ati.su/v1/driver/public/invite' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"phone":"string"}'
Ответ
200 Success
Модель
{...}
ok: boolean
details: string (nullable)
}
Пример
{...}
"ok":false,
"details":"string"
}
4XX Ошибка запроса
Модель
{...}
error_code: string (nullable)

Код ошибки

reason: string (nullable)

Описание ошибки для разработчиков

}
Пример
{...}
"error_code":"validation_error",
"reason":"Ошибка валидации полей phone и device_id"
}

Получение информации по заказу для водителя

Возвращает массив точек маршрута, по которым водитель будет следовать, используя приложение «АТИ Водитель». Каждая точка соответствует загрузке или разгрузке, и также содержит информацию об адресе, географических координатах, дате и времени, контактном лице на точке.

Получение информации по заказу для водителя
get /v1.2/orders/carrier/{dealId}/driver_tracker_points
Запрос
Пример запроса
curl 'https://api.ati.su/v1.2/orders/carrier/{dealId}/driver_tracker_points' \
-X 'GET' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json'
Ответ
200 Информация по заказу
Модель
[{...}]
deal_point_id: guid

Id точки из Заказа

ordinal_id: int32

Порядковый номер точки

time: string

Время

date: string

Дата

time_to: string

Время до (если есть)

date_to: string

Дата до (если есть)

lat: double (nullable)

Широта точки

lon: double (nullable)

Долгота точки

address: string

Адрес

city_id: int32

Id города
Значение из словаря городов ATI.SU

region_id: int32

Id региона
Значение из словаря регионов ATI.SU

country_id: int32

Id страны
Значение из словаря стран ATI.SU

point_type: enum
[1, 2, 3, 8]

Тип точки

  • 1 — Загрузка
  • 2 — Разгрузка
note: string

Примечание (до 1000 символов)

timeslots_warehouse_id: int32 (nullable)

Айди склада из временных окон

}]
Пример
[...]
{...}
"deal_point_id":"2fb965f2-85e9-4213-90e7-f396e47219e7",
"ordinal_id":1,
"time":"10:00",
"date":"2.1.2019",
"time_to":"1:00",
"date_to":"13.2.2019",
"lat":30.3330562,
"lon":59.974006,
"address":"гор. Санкт-Петербург",
"city_id":0,
"region_id":0,
"country_id":0,
"point_type":0,
"contact_persons":[...],
{...}
"name":"string",
"phone":"string",
"ordinal_id":1
}
],
"note":"string",
"timeslots_warehouse_id":0
}
]
4XX Ошибка запроса. [Подробнее про ошибки API](https://ati.su/developers/documentation/errors/)
Модель
{...}

Модель ошибки

reason: string

Причина ошибки

error: string

Ключ ошибки

}
Пример
{...}
"reason":"string",
"error":"string"
}

Назначение заказа на водителя

Привязывает водителя к заказу, создает информацию, необходимую водителю для использования приложения «АТИ Водитель» и отправляет ее на приложение. В тело метода включается информация о типе точки (загрузка или разгрузка), а также информация об адресе, географических координатах, дате и времени, контактном лице на точке.

Назначение заказа на водителя.
put /v1.2/orders/carrier/{dealId}/driver_tracker_points
Запрос
Модель
[{...}]
deal_point_id*: guid
Минимальное количество символов: 1

Id точки из Заказа

time: string

Время

date: string

Дата

time_to: string

Время до (если есть)

date_to: string

Дата до (если есть)

lat: double (nullable)

Широта точки

lon: double (nullable)

Долгота точки

address: string

Адрес

note: string

Примечание (до 1000 символов)

timeslots_warehouse_id: int32 (nullable)

Айди склада из временных окон

}]
Пример запроса
curl 'https://api.ati.su/v1.2/orders/carrier/{dealId}/driver_tracker_points' \
-X 'PUT' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '[{"deal_point_id":"2fb965f2-85e9-4213-90e7-f396e47219e7","time":"10:00","date":"02.01.2019","time_to":"01:00","date_to":"13.02.2019","lat":30.3330562,"lon":59.974006,"address":"гор. Санкт-Петербург","contact_persons":[{"name":"string","phone":"string","ordinal_id":1}],"note":"string","timeslots_warehouse_id":0}]'
Ответ
200 Созданная информация по заказу
Модель
[{...}]
deal_point_id: guid

Id точки из Заказа

ordinal_id: int32

Порядковый номер точки

time: string

Время

date: string

Дата

time_to: string

Время до (если есть)

date_to: string

Дата до (если есть)

lat: double (nullable)

Широта точки

lon: double (nullable)

Долгота точки

address: string

Адрес

city_id: int32

Id города
Значение из словаря городов ATI.SU

region_id: int32

Id региона
Значение из словаря регионов ATI.SU

country_id: int32

Id страны
Значение из словаря стран ATI.SU

point_type: enum
[1, 2, 3, 8]

Тип точки

  • 1 — Загрузка
  • 2 — Разгрузка
note: string

Примечание (до 1000 символов)

timeslots_warehouse_id: int32 (nullable)

Айди склада из временных окон

}]
Пример
[...]
{...}
"deal_point_id":"2fb965f2-85e9-4213-90e7-f396e47219e7",
"ordinal_id":1,
"time":"10:00",
"date":"2.1.2019",
"time_to":"1:00",
"date_to":"13.2.2019",
"lat":30.3330562,
"lon":59.974006,
"address":"гор. Санкт-Петербург",
"city_id":0,
"region_id":0,
"country_id":0,
"point_type":0,
"contact_persons":[...],
{...}
"name":"string",
"phone":"string",
"ordinal_id":1
}
],
"note":"string",
"timeslots_warehouse_id":0
}
]
4XX Ошибка запроса. [Подробнее про ошибки API](https://ati.su/developers/documentation/errors/)
Модель
{...}

Модель ошибки

reason: string

Причина ошибки

error: string

Ключ ошибки

}
Пример
{...}
"reason":"string",
"error":"string"
}

Обновление заказа для АТИ Водителя

Обновляет информацию, необходимую водителю для использования приложения «АТИ Водитель» и отправляет ее на приложение. В тело метода включается информация о типе точки (загрузка или разгрузка), а также информация об адресе, географических координатах, дате и времени, контактном лице на точке.

Обновление заказа для АТИ Водителя.
post /v1.2/orders/carrier/{dealId}/driver_tracker_points
Запрос
Модель
[{...}]
deal_point_id*: guid
Минимальное количество символов: 1

Id точки из Заказа

time: string

Время

date: string

Дата

time_to: string

Время до (если есть)

date_to: string

Дата до (если есть)

lat: double (nullable)

Широта точки

lon: double (nullable)

Долгота точки

address: string

Адрес

note: string

Примечание (до 1000 символов)

timeslots_warehouse_id: int32 (nullable)

Айди склада из временных окон

}]
Пример запроса
curl 'https://api.ati.su/v1.2/orders/carrier/{dealId}/driver_tracker_points' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '[{"deal_point_id":"2fb965f2-85e9-4213-90e7-f396e47219e7","time":"10:00","date":"02.01.2019","time_to":"01:00","date_to":"13.02.2019","lat":30.3330562,"lon":59.974006,"address":"гор. Санкт-Петербург","contact_persons":[{"name":"string","phone":"string","ordinal_id":1}],"note":"string","timeslots_warehouse_id":0}]'
Ответ
200 Созданная информация по заказу
Модель
[{...}]
deal_point_id: guid

Id точки из Заказа

ordinal_id: int32

Порядковый номер точки

time: string

Время

date: string

Дата

time_to: string

Время до (если есть)

date_to: string

Дата до (если есть)

lat: double (nullable)

Широта точки

lon: double (nullable)

Долгота точки

address: string

Адрес

city_id: int32

Id города
Значение из словаря городов ATI.SU

region_id: int32

Id региона
Значение из словаря регионов ATI.SU

country_id: int32

Id страны
Значение из словаря стран ATI.SU

point_type: enum
[1, 2, 3, 8]

Тип точки

  • 1 — Загрузка
  • 2 — Разгрузка
note: string

Примечание (до 1000 символов)

timeslots_warehouse_id: int32 (nullable)

Айди склада из временных окон

}]
Пример
[...]
{...}
"deal_point_id":"2fb965f2-85e9-4213-90e7-f396e47219e7",
"ordinal_id":1,
"time":"10:00",
"date":"2.1.2019",
"time_to":"1:00",
"date_to":"13.2.2019",
"lat":30.3330562,
"lon":59.974006,
"address":"гор. Санкт-Петербург",
"city_id":0,
"region_id":0,
"country_id":0,
"point_type":0,
"contact_persons":[...],
{...}
"name":"string",
"phone":"string",
"ordinal_id":1
}
],
"note":"string",
"timeslots_warehouse_id":0
}
]
4XX Ошибка запроса. [Подробнее про ошибки API](https://ati.su/developers/documentation/errors/)
Модель
{...}

Модель ошибки

reason: string

Причина ошибки

error: string

Ключ ошибки

}
Пример
{...}
"reason":"string",
"error":"string"
}

Снятие водителя с заказа

Отвязывает водителя от заказа и удаляет информацию, созданную при назначении заказа на водителя.

Снятие водителя с заказа.
delete /v1.2/orders/carrier/{dealId}/driver_tracker_points
Запрос
Пример запроса
curl 'https://api.ati.su/v1.2/orders/carrier/{dealId}/driver_tracker_points' \
-X 'DELETE' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json'
Ответ
200 Информация по заказу успешно удалена
Модель
binary
Пример
"binary"
4XX Ошибка запроса. [Подробнее про ошибки API](https://ati.su/developers/documentation/errors/)
Модель
{...}

Модель ошибки

reason: string

Причина ошибки

error: string

Ключ ошибки

}
Пример
{...}
"reason":"string",
"error":"string"
}

Методы для работы с GPS-мониторингом в Заказах

Получение информации о пройденном маршруте

Возвращает информацию о маршруте, пройденном водителем с использованием приложения, датчиков Wialon или GPS-устройств, добавленных с помощью API, а также о начальной, конечной и промежуточных точках маршрута. Ответ метода можно использовать, например, для отображения маршрута на карте.

Получение информации о пройденном маршруте АТИ Водителя
get /v1.2/orders/carrier/map_route/by_deal
Запрос
Пример запроса
curl 'https://api.ati.su/v1.2/orders/carrier/map_route/by_deal' \
-X 'GET' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json'
Ответ
200 Информация для карты
Модель
[{...}]
}]
Пример
[...]
{...}
"goals":[...],
{...}
"longitude":0.5,
"latitude":0.5,
"events":[...],
{...}
"type":0,
"tag":"string",
"date":"1970-01-01T00:00:00.000Z",
"date_to":"1970-01-01T00:00:00.000Z",
"time":"string",
"time_to":"string",
"location_name":{...}
"country":"string",
"region":"string",
"city":"string",
"address":"string"
}
}
],
"ordinal_id":0,
"trace":false
}
],
"traces":[...]
{...}
"car":{...},
"driver_phone":"string",
"car_status":0
},
"first_action":"1970-01-01T00:00:00.000Z",
"last_action":"1970-01-01T00:00:00.000Z",
"points":[...]
{...}
"longitude":0.5,
"latitude":0.5,
"events":[...],
{...}
"type":0,
"tag":"string",
"date":"1970-01-01T00:00:00.000Z",
"date_to":"1970-01-01T00:00:00.000Z",
"time":"string",
"time_to":"string",
"location_name":{...}
"country":"string",
"region":"string",
"city":"string",
"address":"string"
}
}
],
"location_date":"1970-01-01T00:00:00.000Z",
"is_fake":false,
"is_disabled":false,
"is_no_data":false,
"is_power_saving":false,
"is_empty_run":false,
"is_parking":false
}
]
}
]
}
]
4XX Ошибка запроса. [Подробнее про ошибки API](https://ati.su/developers/documentation/errors/)
Модель
{...}

Модель ошибки

reason: string

Причина ошибки

error: string

Ключ ошибки

}
Пример
{...}
"reason":"string",
"error":"string"
}

Получение истории

Массив событий, произошедших в пути следования водителя. Например: поломка, ДТП.

Получение истории
get /v1.2/orders/carrier/map/history
Запрос
Пример запроса
curl 'https://api.ati.su/v1.2/orders/carrier/map/history' \
-X 'GET' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json'
Ответ
200 История выполнения заказа водителем
Модель
[{...}]
}]
Пример
[...]
{...}
"events":[...]
{...}
"date":"1970-01-01T00:00:00.000Z",
"event":{...},
"type":0,
"tag":"string",
"date":"1970-01-01T00:00:00.000Z",
"date_to":"1970-01-01T00:00:00.000Z",
"time":"string",
"time_to":"string",
"location_name":{...}
"country":"string",
"region":"string",
"city":"string",
"address":"string"
}
},
"longitude":0.5,
"latitude":0.5,
"params":[...]
"string"
]
}
]
}
]
4XX Ошибка запроса. [Подробнее про ошибки API](https://ati.su/developers/documentation/errors/)
Модель
{...}

Модель ошибки

reason: string

Причина ошибки

error: string

Ключ ошибки

}
Пример
{...}
"reason":"string",
"error":"string"
}

Установка доступа грузовладельца к данным из АТИ Водителя

По умолчанию грузовладелец не может следить за водителем на карте. С помощью метода можно открывать и закрывать грузовладельцу доступ к этой информации (данные, возвращаемые методом /map_route/by_deal).

Установка доступа грузовладельца к данным из АТИ Водителя.
post /v1.2/orders/carrier/{dealId}/tracker_access
Запрос
Пример запроса
curl 'https://api.ati.su/v1.2/orders/carrier/{dealId}/tracker_access' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json'
Ответ
200 Успешное выполнение операции
Модель
null
Пример
null
4XX Ошибка запроса. [Подробнее про ошибки API](https://ati.su/developers/documentation/errors/)
Модель
{...}

Модель ошибки

reason: string

Причина ошибки

error: string

Ключ ошибки

}
Пример
{...}
"reason":"string",
"error":"string"
}

Метод получения последней существующей локации водителя

Если у водителя установлено приложение АТИ.Водитель можно запросить его последнее местоположение.

Получение последних локаций пользователей
post /v1/driver/public/deal/users_activity
Запрос
Модель
{...}
}
Пример запроса
curl 'https://api.ati.su/v1/driver/public/deal/users_activity' \
-X 'POST' \
-H 'Authorization: Bearer {authorizationToken}' \
-H 'Content-Type: application/json' \
--data-raw '{"deals":[{"phone":"string","deal_id":"3fa85f64-5717-4562-b3fc-2c963f66afa6"}]}'
Ответ
200 Success
Модель
{...}
}
Пример
{...}
"deals":[...]
{...}
"deal_id":"string",
"initial_phone":"string",
"phone":"string",
"tracker_offer_status":"none",
"reason_changing_offer_status":"string",
"status":"none",
"extended_status":"none",
"tracker_finished_at":"1970-01-01T00:00:00.000Z",
"last_active":"1970-01-01T00:00:00.000Z",
"has_tracker":false,
"last_location":{...},
"lon":0.5,
"lat":0.5,
"events":[...],
{...}
"type":"not_set",
"tag":"string",
"date":"1970-01-01T00:00:00.000Z",
"date_to":"1970-01-01T00:00:00.000Z",
"time":"string",
"time_to":"string",
"location_name":{...},
"country":"string",
"region":"string",
"city":"string",
"address":"string"
},
"company_info":{...}
"ati_id":"string",
"name":"string"
}
}
],
"is_fake":false,
"is_disabled":false,
"is_no_data":false,
"is_power_saving":false
},
"gps_status_date":"1970-01-01T00:00:00.000Z"
}
]
}
4XX Bad Request
Модель
{...}
error_code: string (nullable)

Код ошибки

reason: string (nullable)

Описание ошибки для разработчиков

}
Пример
{...}
"error_code":"validation_error",
"reason":"Ошибка валидации полей phone и device_id"
}