API для мобильного приложения клиента
Last modified:
HTTP headers
Во всех HTTP запросах к API должны быть представлены следующие заголовки:
| Name | Type | Description |
|---|---|---|
| Hive-Profile | string | Идентификатор профиля мобильного приложения, определяющий набор тарифов, региональные настройки в рамках которых будут приниматься заказы. Один сервер может предоставлять несколько таких контекстов одновременно. Выдается администрацией ULTAXI |
Если по каким-либо причинам хотя бы один из обязательных заголовков представлен не будет, сервер вернет код ответа – 400.
Система также распознает следующие необязательные HTTP заголовки:
| Name | Type | Description |
|---|---|---|
| Accept-Language | string | Нужен для формирования локализованных текстов сообщений для отображения в мобильном приложении. Значение локали должно соответсвовать стандарту RFC 2616. Если это значение не указано – будут использоваться текущие региональные настройки сервера |
| X-Hive-GPS-Position | string | Текущие координаты устройства (координаты точки, отображенной на карте клиента) в формате “{latitude} {longitude}”. Пример: X-Hive-GPS-Position: 55.0355 73.3012 |
Ответ от сервера
Возможные варианты ответа от сервера:
| HTTP-Code | Response Body |
|---|---|
| 200 | Тело ответа будет содержать JSON Array или JSON Object в соответствии со спецификацией запроса |
| 400 | Тело ответа будет содержать JSON документ типа ErrorObj содержащий код ошибки и локализованное сообщение с описанием причины |
| 404 | Тело ответа будет пустым |
| 500 | Тело ответа будет пустым |
Если запрос был успешно выполнен, ответ вернется с кодом 200.
Ошибки
ErrorObj
Общий формат объекта для передачи сообщений об ошибках
| Name | Type | Required | Description |
|---|---|---|---|
| code | number | true | Код ошибки |
| message | string | true | Локализованное описание ошибки |
Пример ответа с описанием ошибки:
{
"code": -10003,
"message": "Missing parameter: my-very-valueable-parameter."
}
Коды ошибок
Общие коды ошибок
| Code | Description |
|---|---|
| -10001 | Отсутствует обязательный заголовок |
| -10002 | Неверный формат заголовка |
| -10003 | Отсутствует обязательный параметр запроса |
| -10004 | Неверный формат параметра запроса |
| -10005 | Неверный формат JSON-документа в теле запроса |
| -10006 | Переданный идентификатор профиля (заголовок Hive-Profile) не существует |
| -10007 | Невалидный идентификатор клиента |
| -10008 | Невалидный код подтверждения |
| -10009 | Невалидный тариф |
| -10010 | Отсутствует стартовая локация в маршруте |
| -32598 | Невозможно создать заказ. Отрицательный баланс |
| -32599 | Невозможно создать заказ. Неверный идентификатор банковской карты |
| -41303 | Невалидный профиль |
| -41307 | Профиль не сконфигурирован |
| -41308 | Сервис недоступен |
| -60009 | Профиль клиента в реферальной системе лояльности не зарегистрировн |