Документация

Полная информация для оперативного решения ваших вопросов

API документация

1. Получить список тарифов

GET-запрос
https:// ca2.gootax.pro:8089 /v1/get_tariffs_list?city_id=26068 & current_time= 1610305683

Параметры запроса

Параметр Описание Тип Пример
city_id
ИД филиала, куда отправить заказ. Посмотрите его в ПУ Гутакс.
Например, 26068 для Ижевска
Обязательный
26068
current_time Timestamp времени создания заказа Обязательный 1610305683

Заголовки запроса

Параметр Описание Тип Пример
typeclient Как клиент создал заказ:
web - веб-сайт
android - приложение Android
ios - приложение iOS
Обязательный web
lang Язык интерфейса у клиента:
ru - русский
ua - украинский
en - английский
az - азербайджанский
и другие
Обязательный ru
tenantid ИД вашей компании, запросите в тех.поддержке Обязательный 12
appid ИД подключения, запросите в тех.поддержке Обязательный 123
signature Сигнатура запроса, рассчитывается  Обязательный we234d34d3ededwwdfwfwfw
Content-Type application/x-www-form-urlencode Обязательный application/x-www-form-urlencode

Как генерировать signature

Берем все параметры запроса в алфавитном порядке, добавляем к ним секретный ключ (apikey) и считаем для них MD5 хэш
Пример, Signature = MD5("tariff_id=1&distance_city=10" + "1234567890") = d7b8fb11b5499b64d750b8efe53e2877

Пример кода генерирования signature


var apiKey = apiKey;
var match = request.url.match(/\?(.*)/);
var params = match ? match[1].split('&') : [];

if (Array.isArray(request.data)) {
    request.data.map(function (item) {
        if (item['type'] === 'text' && !item['disabled']) {
            params.push(item['key'] + '=' + item['value']);
        }
    }); 
} else if (request.data instanceof Object) {
    Object.keys(request.data).map(function (key) {
        if (!(request.data[key] instanceof Object)) {
            params.push(key + '=' + request.data[key]);
        }
    });   
}

params.sort();

var paramStr = encodeURI(params.join('&'))
    .replace(/, /g, '&')
    .replace(/,/g, '%2C')
    .replace(/%5C%2F/g, '%2F%2F')
    .replace(/:/g, '%3A')
    .replace(/\+/g, '+')
    .replace(/@/g, '%40')
    .replace(/\*/g, '%2A')
    .replace(/\//g, '%2F');

var signature =CryptoJS.MD5(paramStr + apiKey);

Ответ на запрос получения списка тарифов


{
    "code": 0,
    "info": "OK",
    "result": [
        {
            "tariff_id": "12344",
            "tariff_group_id": "123",
            "position_id": 1,
            "car_class_id": null,
            "provider_id": null,
            "type": "CURRENT",
            "min_pre_order_time": "0.00",
            "for_shop": "0",
            "delivery_calculation_type": "",
            "require_prepayment": 0,
            "client_can_offer_price": 0,
            "quantitative_info": null,
            "city": {
                "further_rates": "5",
                "further_rates_additional": "0.00",
                "further_rates_unit": "1_minute",
                "min_price": "70.00",
                "second_min_price": "4.00"
            },
            "track": {
                "further_rates": "5",
                "further_rates_additional": "0.00",
                "further_rates_unit": "1_minute",
                "min_price": "70.00",
                "second_min_price": "4.00"
            },
            "city_id": "26068",
            "logo_thumb": "",
            "logo": "",
            "tariff_name": "Эконом",
            "description": "Это тариф эконом. Доступные цены.",
            "is_bonus": 0,
            "client_type": [
                "base"
            ],
            "companies": [],
            "additional_options": [
                {
                    "id": 123,
                    "tariff_id": 12344,
                    "additional_option_id": 1,
                    "price": "30.00",
                    "tariff_type": "CURRENT",
                    "option": {
                        "option_id": 1,
                        "name": "Кондиционер",
                        "max_quantity": 1,
                        "logo": "https://gootax.pro/d5526c7171ba7e7158cd93bf2542505d"
                    }
                }
            ]
        }
    ],
    "current_time": 1499540124
}

2. Получить список групп тарифов

GET-запрос
https:// ca2.gootax.pro:8089 /v1/get_tariff_groups_list?city_id=26068 & current_time= 1610305683

Параметры запроса

Параметр Описание Тип Пример
city_id
ИД филиала, куда отправить заказ. Посмотрите его в ПУ Гутакс.
Например, 26068 для Ижевска
Обязательный
26068
current_time Timestamp времени создания заказа Обязательный 1610305683

Заголовки запроса

Параметр Описание Тип Пример
typeclient Как клиент создал заказ:
web - веб-сайт
android - приложение Android
ios - приложение iOS
Обязательный web
lang Язык интерфейса у клиента:
ru - русский
ua - украинский
en - английский
az - азербайджанский
и другие
Обязательный ru
tenantid ИД вашей компании, запросите в тех.поддержке Обязательный 12
appid ИД подключения, запросите в тех.поддержке Обязательный 123
signature Сигнатура запроса, рассчитывается  Обязательный we234d34d3ededwwdfwfwfw
Content-Type application/x-www-form-urlencode Обязательный application/x-www-form-urlencode

Ответ на запрос получения групп тарифов


{
    "code": 0,
    "info": "OK",
    "result": [
        {
            "tariff_group_id": 123,
            "name": "Эконом",
            "logo": "https://gootax.pro/2f6dab3b75659d2a20bcaddeb106589a",
            "description": "Тарифы для заказа доставки еды",
            "parent_id": null,
            "child_group": []
        }
    ],
    "current_time": 1499540124
}

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

POST-запрос
https:// ca2.gootax.pro:8089 /api-site/create_order_site

Тело запроса

Параметр Описание Тип Пример
address Блок адресов Обязательный {"address":[{"city_id":"26068", "city":"Ижевск", "street":"Пушкинская улица", "house":"268", "housing":"", "porch":"", "lat":"56.862307", "lon":"53.209451"}, {"city_id":"26068", "city":"Ижевск", "street":"Мира улица", "house":"2", "housing":"", "porch":"", "lat":"56.862307", "lon":"53.209450"}]}
 additional_options Список ИД доп опции Не обязательный
1,2,3
city_id ИД филиала, куда отправить заказ. Посмотрите его в ПУ Гутакс.
Например, 26068 для Ижевска
Обязательный 26068
client_name Имя клиента Не обязательный Петр
client_phone Телефон клиента Обязательный 79001231516
comment Комментарий к заказу Не обязательный Тороплюсь
current_time Timestamp времени создания заказа Обязательный 1610305683
order_time Время, на которое создается заказ. Если заказ срочный, можно не передавать Не обязательный 13.03.2021 14:30:00
pay_type Тип оплаты заказа:
CASH - наличные
CARD_TERMINAL - оплата по терминалу у водителя
Обязательный CASH
tariff_id ИД тарифа, с которым создается заказ. Посмотрите его в ПУ Гутакс. Обязательный 14303
type_request Тип запроса:
1 - создание заказа
2 - предрасчет цены
Обязательный 1

Заголовки запроса

Параметр Описание Тип Пример
typeclient Как клиент создал заказ:
web - веб-сайт
android - приложение Android
ios - приложение iOS
Обязательный web
versionclient
Версия API Обязательный
2.2.0
lang Язык интерфейса у клиента:
ru - русский
ua - украинский
en - английский
az - азербайджанский
и другие
Обязательный ru
tenantid ИД вашей компании, запросите в тех.поддержке Обязательный 12
appid ИД подключения, запросите в тех.поддержке Обязательный 123
signature Сигнатура запроса, рассчитывается  Обязательный we234d34d3ededwwdfwfwfw
Content-Type application/x-www-form-urlencode Обязательный application/x-www-form-urlencode

Ответ на расчет цены


{
    "code": 0,
    "info": "OK",
    "result": {
        "cost_result": {
            "additionals_cost": "0",
            "summary_time": "0",
            "summary_distance": "0",
            "summary_cost": "200",
            "delivery_cost": "0",
            "summary_cost_no_discount": "200",
            "city_time": "0",
            "city_distance": "0",
            "city_cost": "200",
            "out_city_time": "0",
            "out_city_distance": "0",
            "out_city_cost": "0",
            "is_fix": 1,
            "start_point_location": "in",
            "tariffInfo": {
                "tariffType": "CURRENT",
                "tariffDataCity": {
                    "option_id": 2379,
                    "tariff_id": 856,
                    "accrual": "DISTANCE",
                    "area": "CITY",
                    "planting_price_day": "200.00",
                    "planting_price_night": 0,
                    "planting_include_day": "0.00",
                    "planting_include_night": 0,
                    "next_km_price_day": "15",
                    "next_km_price_night": 0,
                    "min_price_day": "0.00",
                    "min_price_night": 0,
                    "second_min_price_day": "4.00",
                    "second_min_price_night": 0,
                    "supply_price_day": "0.00",
                    "supply_price_night": 0,
                    "wait_time_day": 5,
                    "wait_time_night": 0,
                    "wait_driving_time_day": 0,
                    "wait_driving_time_night": 0,
                    "wait_price_day": "5.00",
                    "wait_price_night": 0,
                    "speed_downtime_day": "0.00",
                    "speed_downtime_night": 0,
                    "rounding_day": "0.00",
                    "rounding_night": 0,
                    "tariff_type": null,
                    "allow_day_night": 0,
                    "start_day": "00:00",
                    "end_day": "23:59",
                    "active": 1,
                    "enabled_parking_ratio": 0,
                    "calculation_fix": 1,
                    "next_cost_unit_day": "1_minute",
                    "next_cost_unit_night": "1_km",
                    "next_km_price_day_time": "0.00",
                    "next_km_price_night_time": 0,
                    "planting_include_day_time": 0,
                    "planting_include_night_time": 0,
                    "rounding_type_day": "ROUND",
                    "rounding_type_night": "ROUND"
                },
                "tariffDataTrack": {
                    "option_id": 2380,
                    "tariff_id": 856,
                    "accrual": "MIXED",
                    "area": "TRACK",
                    "planting_price_day": "42.00",
                    "planting_price_night": 0,
                    "planting_include_day": "2.00",
                    "planting_include_night": 0,
                    "next_km_price_day": "17",
                    "next_km_price_night": 0,
                    "min_price_day": "150.00",
                    "min_price_night": 0,
                    "second_min_price_day": "4.00",
                    "second_min_price_night": 0,
                    "supply_price_day": "4.00",
                    "supply_price_night": 0,
                    "wait_time_day": 5,
                    "wait_time_night": 0,
                    "wait_driving_time_day": 0,
                    "wait_driving_time_night": 0,
                    "wait_price_day": "5.00",
                    "wait_price_night": 0,
                    "speed_downtime_day": "0.00",
                    "speed_downtime_night": 0,
                    "rounding_day": "0.00",
                    "rounding_night": 0,
                    "tariff_type": null,
                    "allow_day_night": 0,
                    "start_day": "00:00",
                    "end_day": "23:59",
                    "active": 1,
                    "enabled_parking_ratio": 0,
                    "calculation_fix": 1,
                    "next_cost_unit_day": "1_minute",
                    "next_cost_unit_night": "1_km",
                    "next_km_price_day_time": "5.00",
                    "next_km_price_night_time": 0,
                    "planting_include_day_time": 3,
                    "planting_include_night_time": 0,
                    "rounding_type_day": "ROUND",
                    "rounding_type_night": "ROUND"
                },
                "tariffDataAirport": null,
                "tariffDataStation": null,
                "isDay": 1,
                "calculationPoint": "start"
            }
        }
    },
    "current_time": "1610305683"
}

Ответ на создание заказа


{
    "code": 0,
    "info": "OK",
    "result": {
        "type": "pre_order",
        "order_id": 82519,
        "order_number": 1217750,
        "waiting_for_prepayment": 0,
        "payment_type": "CASH"
    },
    "current_time": "1610305683"
}

В ответе на создание заказа:

  • type
    new - для нового заказа и pre_order - для предварительного заказа
  • order_id - служебный id заказа для получения статуса
  • order_number - ваш внутренний номер заказа, для отображения диспетчеру и клиенту
  • waiting_for_prepayment - маркер ожидает система предоплату или нет. 0 - не ожидает.
  • payment_type - тип оплаты заказа

Пример кода на PHP


 'https://ca2.gootax.pro:8089/api-site/create_order_site',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => array('address' => '{"address":[{"city_id":"26068","city":"Ижевск","street":"Пушкинская улица","house":"268","housing":"","porch":"","lat":"56.862307","lon":"53.209451"},{"city_id":"26068","city":"Ижевск","street":"Мира улица","house":"2","housing":"","porch":"","lat":"56.862307","lon":"53.209450"}]}',
                        'city_id' => '26068',
                        'client_phone' => '79001231516',
                        'comment' => 'Тороплюсь',
                        'current_time' => '1610305683',
                        'order_time' => '13.03.2021 14:30:00',
                        'pay_type' => 'CASH',
                        'tariff_id' => '14303',
                        'type_request' => '1'),
  CURLOPT_HTTPHEADER => array(
    'signature: we234d34d3ededwwdfwfwfw',
    'typeclient: web',
    'versionclient: 2.2.0',
    'tenantid: 12',
    'lang: ru',
    'appid: 123',
    'Content-Type: application/x-www-form-urlencode'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

4. Получить статус заказа

GET-запрос
https:// ca2.gootax.pro:8089 /v1/get_order_info

Параметры запроса

Параметр Описание Тип Пример
current_time Timestamp времени создания заказа Обязательный 1610305683
need_car_photo
Вернуть в ответе фото машины? 1 - да, 0 - нет Не обязательный 1
need_driver_photo Вернуть в ответе фото исполнителя? 1 - да, 0 - нет
Не обязательный 1
order_id
Внутренний служебный ИД, полученный при создании заказа Обязательный 14303

Заголовки запроса

Параметр Описание Тип Пример
typeclient Как клиент создал заказ:
web - веб-сайт
android - приложение Android
ios - приложение iOS
Обязательный web
versionclient
Версия API
Обязательный
2.2.0
lang Язык интерфейса у клиента:
ru - русский
ua - украинский
en - английский
az - азербайджанский
и другие
Обязательный ru
tenantid ИД вашей компании, запросите в тех.поддержке Обязательный 12
appid ИД подключения, запросите в тех.поддержке Обязательный 123
signature Сигнатура запроса, рассчитывается  Обязательный we234d34d3ededwwdfwfwfw
Content-Type application/x-www-form-urlencode Обязательный application/x-www-form-urlencode

Ответ на запрос информации о заказе


{
    "code": 0,
    "info": "OK",
    "result": {
        "order_info": {
            "order_id": 1233,
            "order_number": 1231,
            "city_id": 26068,
            "status_id": 37,
            "status_group": "completed",
            "waiting_prepayment": 0,
            "status_name": "Выполнен",
            "status_description": "Выполнен, оплачен",
            "order_type": "TAXI",
            "payment": {
                "type": "CASH"
            },
            "predv_price": "100.00",
            "realtime_price": null,
            "order_time": 1571049851,
            "finish_time": 1571034877,
            "time_offset": 14400,
            "rating": null,
            "car_data": {
                "car_description": "",
                "car_lat": 0,
                "car_lon": 0,
                "speed": 0,
                "car_time": 0,
                "degree": 0,
                "driver_fio": "Иванов Петр Иванович",
                "driver_phone": "79000000000",
                "raiting": 4.5,
                "car_photo": "https://gootax.pro/5e4f7fbe77587.png",               
                "driver_photo": "https://gootax.pro/5e4f7fbe77587.png"
            },
            "detail_cost_info": {
                "detail_id": "123",
                "order_id": "1233",
                "accrual_city": "DISTANCE",
                "accrual_out": "DISTANCE",
                "summary_distance": null,
                "summary_cost": "200",
                "summary_time": null,
                "city_time": null,
                "city_distance": null,
                "city_cost": null,
                "out_city_time": null,
                "out_city_distance": null,
                "out_city_cost": null,
                "city_time_wait": null,
                "out_time_wait": null,
                "before_time_wait": null,
                "additional_cost": "0",
                "is_fix": "0",
                "city_next_km_price": "0",
                "out_next_km_price": "0",
                "supply_price": "0.00",
                "city_wait_time": "0",
                "out_wait_time": "0",
                "city_wait_driving": "0",
                "out_wait_driving": "0",
                "city_wait_price": "0.00",
                "out_wait_price": "0.00",
                "time": "1571034877",
                "distance_for_plant": null,
                "planting_price": "0.00",
                "planting_include": "0.00",
                "start_point_location": "in",
                "city_wait_cost": null,
                "before_time_wait_cost": null,
                "out_wait_cost": null,
                "city_cost_time": null,
                "out_city_cost_time": null,
                "planting_include_time": "0",
                "distance_for_plant_cost": null,
                "bonuses_paid": "0"
            },
            "address": [
                {
                    "city": "Ижевск",
                    "street": "Пушкинская улица 258",
                    "house": "",
                    "lat": "56.851978",
                    "lon": "53.209413",
                    "phone": "",
                    "comment": "",
                    "confirmation_code": null
                },
                {
                    "city": "Ижевск",
                    "street": "Санаторий-профилакторий Строитель",
                    "house": "",
                    "lat": "56.84592",
                    "lon": "53.25537",
                    "phone": "",
                    "comment": "",
                    "confirmation_code": null
                }
            ],
            "client": {
                "id": 123,
                "phone": "79001234567"
            },
            "tariff": {
                "name": "Эконом"
            },
            "client_company": null,
            "fines": null
        }
    },
    "current_time": 1610305683
}

Пример кода на PHP


 'https://ca2.gootax.pro:8089/v1/get_order_info?current_time=1610305683&need_car_photo=1&need_driver_photo=1&order_id=123',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
    'signature: we234d34d3ededwwdfwfwfw',
    'typeclient: web',
    'versionclient: 2.2.0',
    'tenantid: 12',
    'lang: ru',
    'appid: 123',
    'Content-Type: application/x-www-form-urlencode'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

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

POST-запрос
https:// ca2.gootax.pro:8089 /v1/reject_order

Параметры запроса

Параметр Описание Тип Пример
current_time Timestamp времени создания заказа Обязательный 1610305683
order_id
Внутренний служебный ИД, полученный при создании заказа
Обязательный
14303

Заголовки запроса

Параметр Описание Тип Пример
typeclient Как клиент создал заказ:
web - веб-сайт
android - приложение Android
ios - приложение iOS
Обязательный web
lang Язык интерфейса у клиента:
ru - русский
ua - украинский
en - английский
az - азербайджанский
и другие
Обязательный ru
tenantid ИД вашей компании, запросите в тех.поддержке Обязательный 12
appid ИД подключения, запросите в тех.поддержке Обязательный 123
signature Сигнатура запроса, рассчитывается  Обязательный we234d34d3ededwwdfwfwfw
Content-Type application/x-www-form-urlencode Обязательный application/x-www-form-urlencode

Ответ на запрос информации о заказе


{
    "code": 0,
    "info": "OK",
    "result": {
        "reject_result": 1
    },
    "current_time": "1499540124"
}

Пример кода на PHP


 'https://ca2.gootax.pro:8089/v1/reject_order',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => array('current_time' => '1499540124','order_id' => '14303'),
  CURLOPT_HTTPHEADER => array(
    'signature: we234d34d3ededwwdfwfwfw',
    'typeclient: web',
    'versionclient: 2.2.0',
    'tenantid: 12',
    'lang: ru',
    'appid: 123',
    'Content-Type: application/x-www-form-urlencode'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

Заказать звонок

Заполните ваши контактные данные, и мы свяжемся с вами в ближайшее время

Нажимая кнопку Отправить, я принимаю политику конфиденциальности

Успешно

Данные отправлены.
Мы свяжемся с вами в ближайшее время.

Закрыть

Попробовать

Оставить заявку