API сервера такси

Материал из Таксомёт
Перейти к: навигация, поиск

Сервер такси имеет 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_водителя>

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

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