API сервера такси — различия между версиями

Материал из Таксомёт
Перейти к: навигация, поиск
(Назначить водителя)
Строка 96: Строка 96:
  
 
Параметры result, error, order_id всегда присутствуют в ответе. В случае успешного выполнения запроса и водитель назначен параметр result имеет значение 1. В случае если произошла ошибка, то параметр result НЕ равен 1, а в параметр error содержит текстовое описание ошибки. Параметр order_id содержит ID заказа на сервере такси, в случае если заказ не удалось отменить и произошла ошибка order_id будет равен 0.
 
Параметры result, error, order_id всегда присутствуют в ответе. В случае успешного выполнения запроса и водитель назначен параметр result имеет значение 1. В случае если произошла ошибка, то параметр result НЕ равен 1, а в параметр error содержит текстовое описание ошибки. Параметр order_id содержит ID заказа на сервере такси, в случае если заказ не удалось отменить и произошла ошибка order_id будет равен 0.
 +
 +
'''Пример запроса'''
 +
 +
<nowiki>https://test.taxomet.ru/api/v1/set_driver?operator_login=my-api&operator_password=******&id=10&driver_id=3</nowiki>
 +
 +
== Снять водителя с заказа ==
 +
 +
Данный метод позволяет назначить водителя принудительно.
 +
 +
'''URL для запроса:'''
 +
 +
<nowiki>https://***.taxomet.ru/api/v1/remove_driver?operator_login=<логин_оператора>&operator_password=<пароль_оператора>&id=<ID_заказа></nowiki>
 +
 +
'''Описание параметров'''
 +
 +
*'''operator_login''' - логин оператора. Предварительно необходимо создать учетную запись оператора в интерфейсе программы.
 +
*'''operator_password''' - пароль оператора.
 +
*'''id''' - ID заказа на сервере такси.
 +
 +
'''Ответ'''
 +
 +
Ответ в формате JSON:
 +
 +
{"result":"1", "error":"", "order_id":"2342"}
 +
 +
Параметры result, error, order_id всегда присутствуют в ответе. В случае успешного выполнения запроса и водитель снят с заказа параметр result имеет значение 1. В случае если произошла ошибка, то параметр result НЕ равен 1, а в параметр error содержит текстовое описание ошибки. Параметр order_id содержит ID заказа на сервере такси, в случае если водителя не удалось снять и произошла ошибка order_id будет равен 0.
  
 
'''Пример запроса'''
 
'''Пример запроса'''

Версия 17:13, 26 декабря 2021

Сервер такси имеет HTTP/HTTPS API с с помощью которого Вы можете произвести интеграцию сервера такси с Вашим сервисом или программой. С помощью HTTP API можно, например, создать заказ на сервер такси программно, который далее будет распределяться водителям и пройдет обычный цикл жизни заказа, так же через HTTP API можно управлять заказами, делать финансовые записи, работать с бонусами клиентов и выполнять практически все функции программно, которые есть в программе Такомёт.

Общее описание

HTTP API работает с GET запросами.

Для работы с API Вам предварительно необходимо создать учетную запись оператора и использовать логин и пароль этого оператора в запросах API.

URL адрес для API запросов располагается на том же домене, что и рабочее место оператора.


Создать заказа

Данный метод позволяет создать заказ со всеми необходимыми параметрами в системе.

URL для запроса:

https://***.taxomet.ru/api/v1/add_order?operator_login=<логин_оператора>&operator_password=<пароль_оператора>&unit_id=<ID_службы>&tarif_id=<ID_тарифа>&phone=<телефон_пассажира>&to[]=<адрес_1>&to[]=<адрес_2>&car_option[]=<ID_дополнительной_опции_авто>&fix_price=<фикс_цена>&extern_id=<ID_заказа_в_Вашей_сситеме>&order_time=<время_заказа>

Описание параметров

  • operator_login - логин оператора. Предварительно необходимо создать учетную запись оператора в интерфейсе программы.
  • operator_password - пароль оператора.
  • unit_id - ID службы такси на сервере такси. ID службы можно узнать в разделе программы "Службы такси и тарифы" (Настройки -> Службы такси и тарифы).
  • tarif_id - ID тарифа, котый необходимо применить к заказу. ID тарифа можно узнать в разделе программы "Службы такси и тарифы" (Настройки -> Службы такси и тарифы). Если указать для tarif_id значение -1, то тариф будет выбран сервером такси автоматически из тарифов службы такси с учетом времени суток.
  • phone - телефон клиента. Должен начинаться со знака +. Например, +70001112233
  • to[] - адрес поездки. Параметр to[] необходимо добавить столько раз сколько адресов у поездки. Первый параметр to[] является адресом "Откуда", последующие - точками назначения.
  • car_option[] - ID требующейся доп. опции к заказу (например "Детское кресло"). ID доп. опций можно посмотреть в интерфейся программы в разделе "Опции автомобилей" (Настройки -> Опции автомобилей). Необязательный параметр.
  • fix_price - стоимость поездки. Необязательный параметр. Если не задавать или указать 0, то поездка будет по GPS-таксомётру.
  • extern_id - ID заказа в Вашей системе. В дальнейшем может пердаваться в запросах от сервера такси к Вашей системе (Webhooks), например уведомление Вашей системы о смене статуса заказа.
  • order_time - время заказа (UNIX TIMESTAMP), если заказ предварительный. Параметр не обязательный.
  • print_receipt - сформировать кассовый чек после завершения поездки. Значение параметра может быть 0 или 1. Параметр не обязательный. По умолчанию - 0.

Ответ

Ответ в формате JSON:

{"result":"1", "error":"", "order_id":"2342"}

Параметры result, error, order_id всегда присутствуют в ответе. В случае успешного выполнения запроса и заказ создан параметр result имеет значение 1. В случае если произошла ошибка, то параметр result НЕ равен 1, а в параметр error содержит текстовое описание ошибки. Параметр order_id содержит ID созданного заказа на сервере такси, в случае если заказ не создан и произошла ошибка order_id будет равен 0.


Пример запроса

https://test.taxomet.ru/api/v1/add_order?operator_login=my-api&operator_password=******&unit_id=1&tarif_id=1&phone=+70001112233&to[]=Сочи, Тимирязева ул., 4&to[]=Сочи, Парковая ул., 42&car_option[]=1&fix_price=200&id=1234

Отменить заказа

Данный метод позволяет отменить заказ.

URL для запроса:

https://***.taxomet.ru/api/v1/cancel_order?operator_login=<логин_оператора>&operator_password=<пароль_оператора>&id=<ID_заказа>

Описание параметров

  • operator_login - логин оператора. Предварительно необходимо создать учетную запись оператора в интерфейсе программы.
  • operator_password - пароль оператора.
  • id - ID заказа на сервере такси.

Ответ

Ответ в формате JSON:

{"result":"1", "error":"", "order_id":"2342"}

Параметры result, error, order_id всегда присутствуют в ответе. В случае успешного выполнения запроса и заказ отменён параметр result имеет значение 1. В случае если произошла ошибка, то параметр result НЕ равен 1, а в параметр error содержит текстовое описание ошибки. Параметр order_id содержит ID отменяемого заказа на сервере такси, в случае если заказ не удалось отменить и произошла ошибка order_id будет равен 0.

Пример запроса

https://test.taxomet.ru/api/v1/add_order?operator_login=my-api&operator_password=******&id=10


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

Данный метод позволяет назначить водителя принудительно.

URL для запроса:

https://***.taxomet.ru/api/v1/set_driver?operator_login=<логин_оператора>&operator_password=<пароль_оператора>&id=<ID_заказа>&driver_id=<ID_водителя>&boarding_time=<время_подачи>

Описание параметров

  • operator_login - логин оператора. Предварительно необходимо создать учетную запись оператора в интерфейсе программы.
  • operator_password - пароль оператора.
  • id - ID заказа на сервере такси.
  • driver_id - ID водителя на сервере такси. ID водителя можно посмотреть в интерфейсе программы в разделе "Водители".
  • boarding_time - время в течение которого будет подана машина в минутах, целое число (например 5 минут). Параметр не обязательный. Не нужно указывать для предварительных заказов.

Ответ

Ответ в формате JSON:

{"result":"1", "error":"", "order_id":"2342"}

Параметры result, error, order_id всегда присутствуют в ответе. В случае успешного выполнения запроса и водитель назначен параметр result имеет значение 1. В случае если произошла ошибка, то параметр result НЕ равен 1, а в параметр error содержит текстовое описание ошибки. Параметр order_id содержит ID заказа на сервере такси, в случае если заказ не удалось отменить и произошла ошибка order_id будет равен 0.

Пример запроса

https://test.taxomet.ru/api/v1/set_driver?operator_login=my-api&operator_password=******&id=10&driver_id=3

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

Данный метод позволяет назначить водителя принудительно.

URL для запроса:

https://***.taxomet.ru/api/v1/remove_driver?operator_login=<логин_оператора>&operator_password=<пароль_оператора>&id=<ID_заказа>

Описание параметров

  • operator_login - логин оператора. Предварительно необходимо создать учетную запись оператора в интерфейсе программы.
  • operator_password - пароль оператора.
  • id - ID заказа на сервере такси.

Ответ

Ответ в формате JSON:

{"result":"1", "error":"", "order_id":"2342"}

Параметры result, error, order_id всегда присутствуют в ответе. В случае успешного выполнения запроса и водитель снят с заказа параметр result имеет значение 1. В случае если произошла ошибка, то параметр result НЕ равен 1, а в параметр error содержит текстовое описание ошибки. Параметр order_id содержит ID заказа на сервере такси, в случае если водителя не удалось снять и произошла ошибка order_id будет равен 0.

Пример запроса

https://test.taxomet.ru/api/v1/set_driver?operator_login=my-api&operator_password=******&id=10&driver_id=3

Нет нужной функции API?

Свяжитесь с нами и мы откроем нужную функцию для API.