API информации о поездке
Запрос позволяет получить детальную информацию о поездке.
Поддерживаются форматы ответа JSON и protobuf. Для выбора формата ответа передайте необязательный заголовок Accept
:
-
Accept: application/json
— ответ в формате JSON. Значение по умолчанию. -
Accept: application/x-protobuf
— ответ в формате protobuf.
Синтаксис запроса
GET https://taxi-routeinfo.taxi.yandex.net/taxi_info?clid=<clid>&apikey=<apikey>&rll=<lon,lat~lon,lat>&class=<class_str>&req=<req_str>
Аргументы:
-
clid
— идентификатор клиента. Чтобы получить идентификатор, заполните анкету на странице API прогноза стоимости. Обязательный параметр. -
apikey
— ключ API. Чтобы получить ключ, заполните анкету на странице API прогноза стоимости. Параметр может быть использован вместо заголовкаYaTaxi-Api-Key
. Если не был передан заголовокYaTaxi-Api-Key
, параметрapikey
является обязательным.Внимание
Данный способ не рекомендуется к использованию, так как значение токена может сохраняться в логах.
-
rll
— координаты пункта отправления и назначения. Обязательный параметр. Формат аргумента:{долгота пункта отправления},{широта пункта отправления}~{долгота пункта назначения},{широта пункта назначения}
Так же в параметре можно указать только точку отправления или назначения:
{долгота пункта отправления или назначения},{широта пункта отправления или назначения}
В этом случае ответ будет содержать ограниченный набор полей и будет указана только стоимость подачи машины с учетом повышающего коэффициента.
Чтобы узнать, поддерживается ли регион сервисами Яндекс Go, воспользуйтесь запросом API информации о регионе.
-
class
— тарифы поездки. Необязательный параметр. В запросе может быть указано несколько тарифов. В этом случае названия тарифов в параметре указываются через запятую. Допустимы следующие значения:-
econom
— «Эконом». -
business
— «Комфорт». -
comfortplus
— «Комфорт+». -
minivan
— «Минивен». -
vip
— «Бизнес». -
express
— «Доставка». -
courier
— «Курьер».
Значение по умолчанию —
econom
.В некоторых регионах доступны не все из указанных тарифов. Если в запросе было указано несколько тарифов, и часть из них не поддерживается, ответ будет содержать только информацию о поддерживаемых тарифах. Если в запросе были указаны только неподдерживаемые тарифы, ответ будет содержать код
200
и пустую строку. -
-
req
— пожелания клиента для поиска машины. Необязательный параметр. В запросе может быть указано несколько пожеланий. В этом случае значения в параметре указываются через запятую. Допустимы следующие значения:-
yellowcarnumber
— машина с желтыми номерами. -
nosmoking
— некурящий водитель. -
childchair
— наличие детского кресла в машине. -
bicycle
— перевозка велосипеда. -
conditioner
— кондиционер в машине. -
animaltransport
— перевозка животных. -
universal
— машина-универсал. -
check
— необходима квитанция об оплате. -
ski
— перевозка лыж или сноуборда. -
waiting_in_transit
— ожидание в пути. -
meeting_arriving
— встреча с табличкой. -
luggage
— платная перевозка багажа.
-
-
lang
— язык ответа. Необязательный параметр. Возможные значения:-
ru
— ответ на русском языке. Значение по умолчанию. -
en
— ответ на английском языке. -
uk
— ответ на украинском языке. -
kk
— ответ на казахском языке. -
az
— ответ на азербайджанском языке. -
ka
— ответ на грузинском языке. -
hy
— ответ на армянском языке. -
ky
— ответ на киргизском языке. -
lv
— ответ на латвийском языке. -
ro
— ответ на румынском языке. -
uz
— ответ на узбекском языке. -
et
— ответ на эстонском языке. -
fr
— ответ на французском языке.
-
Описание полей ответа
В ответе могут содержаться следующие поля:
Поле |
Описание |
Формат |
|
Валюта оплаты. Может содержать следующие значения:
Список поддерживаемых валют впоследствии может быть расширен. |
Строка. |
|
Расстояние поездки в метрах. Примечание Параметр возвращается только в том случае, когда в запросе были указаны точки начала и конца маршрута. |
Число с плавающей точкой. |
|
Список вариантов поездки. Может содержать следующие поля:
|
Массив. |
|
Название тарифа на английском. |
Строка. |
|
Название тарифа на запрошенном языке. |
Строка. |
|
Числовой идентификатор тарифа. |
Число. |
|
Стоимость подачи машины без повышающего коэффициента. При отображении данной информации необходимо также указывать предупреждение в соответствие с условиями использования API. |
|
|
Стоимость поездки. Если в запросе была указана только точка начала или точка конца маршрута, данный параметр будет содержать стоимость подачи машины с учетом повышающего коэффициента. При отображении данной информации необходимо также указывать предупреждение в соответствие с условиями использования API. |
Число с плавающей точкой. |
|
Текстовое описание стоимости поездки. Включает в себя значение из поля |
Строка. |
|
Время подачи машины в секундах. Примечание Параметр может отсутствовать, если в данный момент нет доступных машин для указанного маршрута. |
Число с плавающей точкой. |
|
Время поездки в секундах. Примечание Параметр возвращается только в том случае, когда в запросе были указаны точки начала и конца маршрута. |
Число с плавающей точкой. |
Ответ в формате protobuf
Если запрос был отправлен с заголовком Accept: application/x-protobuf
ответом будет являться сообщение TaxiInfo
.
Для декодирования protobuf-ответа используйте следующее описание протокола:
message TaxiOption
{
required double price = 1;
required double min_price = 2;
optional double waiting_time = 3;
required string class_name = 4;
required string class_text = 5;
required int32 class_level = 6;
required string price_text = 7;
}
message TaxiInfo
{
repeated TaxiOption options = 1;
required string currency = 2;
optional double distance = 3;
optional double time = 4;
}
Названия всех полей в protobuf-ответе будут аналогичны полям ответа в формате json.
Пример запроса для одного тарифа
GET https://taxi-routeinfo.taxi.yandex.net/taxi_info?rll=37.589569560,55.733780~37,56&clid=t...3&apikey=q...3
Ответа на данный запрос выглядит следующим образом:
{
"currency": "RUB",
"distance": 61529.771101536542,
"options": [
{
"class_level": 50,
"class_name": "econom",
"class_text": "Эконом",
"min_price": 495,
"price": 10945,
"price_text": "10945 руб.",
"waiting_time": 203.98798614740372
}
],
"time": 3816.9397069215775
}
Пример запроса для нескольких тарифов
В запросе указаны тарифы «Эконом» и «Бизнес» и не указана точка назначения:
GET https://taxi-routeinfo.taxi.yandex.net/taxi_info?rll=37.589569560,55.733780&clid=t...3&apikey=q...3&class=econom,vip&req=check,yellowcarnumber
Ответ на данный запрос выглядит следующим образом:
{
"currency": "RUB",
"options": [
{
"class_level": 50,
"class_name": "econom",
"class_text": "Эконом",
"min_price": 99,
"price": 239,
"price_text": "от 239 руб.",
"waiting_time": 203.98798614740372
},
{
"class_level": 90,
"class_name": "vip",
"class_text": "Бизнес",
"min_price": 299,
"price": 299,
"price_text": "от 299 руб.",
"waiting_time": 708.15764345228672
}
],
"time": 3816.9397069215775
}
Возможные коды ответа
Ответ на данный запрос может содержать следующие коды ответа:
-
200
— запрос выполнен успешно. -
204
— запрашиваемый регион не поддерживается сервисом. -
400
— параметры запроса были не указаны или указаны некорректно. -
403
— ошибка авторизации. Были указаны некорректные значения ключа API или идентификатора клиента. -
500
— внутренняя ошибка сервера.
В случае ошибок с кодами 400
и 403
в теле ответа будет содержаться текст сообщения об ошибке.
Название тарифа на английском.
Числовой идентификатор тарифа.
Название тарифа на запрошенном языке.
Время подачи машины в секундах.
- Стоимость подачи машины без повышающего коэффициента.
- При отображении данной информации необходимо также указывать предупреждение в соответствие с условиями использования API.
lang
— язык ответа. Необязательный параметр. Возможные значения:
ru
— ответ на русском языке. Значение по умолчанию.en
— ответ на английском языке.uk
— ответ на украинском языке.kk
— ответ на казахском языке.az
— ответ на азербайджанском языке.ka
— ответ на грузинском языке.hy
— ответ на армянском языке.ky
— ответ на киргизском языке.lv
— ответ на латвийском языке.ro
— ответ на румынском языке.uz
— ответ на узбекском языке.et
— ответ на эстонском языке.fr
— ответ на французском языке.
- Стоимость поездки. Если в запросе была указана только точка начала или точка конца маршрута, данный параметр будет содержать стоимость подачи машины с учетом повышающего коэффициента.
- При отображении данной информации необходимо также указывать предупреждение в соответствие с условиями использования API.
- Расстояние поездки в метрах.
- Параметр возвращается только в том случае, когда в запросе были указаны точки начала и конца маршрута.
Список вариантов поездки. Может содержать следующие поля:
Валюта оплаты. Может содержать следующие значения:
RUB
— российский рубль.KZT
— казахстанский тенге.AMD
— армянский драм.GEL
— грузинский лари.AZN
— азербайджанский манат.UAH
— украинская гривна.BYN
— новый белорусский рубль.BYR
— старый белорусский рубль.KGS
— киргизский сом.EUR
— евро.MDL
— молдавский лей.UZS
— узбекский сум.
Список поддерживаемых валют впоследствии может быть расширен.
Текстовое описание стоимости поездки. Включает в себя значение из поля price
и валюту. Валюта в данном поле зависит от параметра lang в запросе.
- Время поездки в секундах.
- Параметр возвращается только в том случае, когда в запросе были указаны точки начала и конца маршрута.
clid
— идентификатор клиента. Чтобы получить идентификатор, заполните анкету на странице API прогноза стоимости.
apikey
— ключ API. Чтобы получить ключ, заполните анкету на странице API прогноза стоимости. Параметр может быть использован вместо заголовка YaTaxi-Api-Key
. Если не был передан заголовок YaTaxi-Api-Key
, параметр apikey
является обязательным.
rll
— координаты пункта отправления и назначения. Обязательный параметр. Формат аргумента:
{долгота пункта отправления},{широта пункта отправления}~{долгота пункта назначения},{широта пункта назначения}
class
— тарифы поездки. Необязательный параметр. В запросе может быть указано несколько тарифов. В этом случае названия тарифов в параметре указываются через запятую. Допустимы следующие значения:
econom
— «Эконом».
-business
— «Комфорт».comfortplus
— «Комфорт+».minivan
— «Минивен».vip
— «Бизнес».express
— «Доставка».courier
— «Курьер».
req
— пожелания клиента для поиска машины. Необязательный параметр. В запросе может быть указано несколько пожеланий. В этом случае значения в параметре указываются через запятую. Допустимы следующие значения:
yellowcarnumber
— машина с желтыми номерами.nosmoking
— некурящий водитель.childchair
— наличие детского кресла в машине.bicycle
— перевозка велосипеда.conditioner
— кондиционер в машине.animaltransport
— перевозка животных.universal
— машина-универсал.check
— необходима квитанция об оплате.ski
— перевозка лыж или сноуборда.waiting_in_transit
— ожидание в пути.meeting_arriving
— встреча с табличкой.luggage
— платная перевозка багажа.