# Admin API
expert team enterprise Keitaro Admin API — интерфейс, который позволяет путем входящих запросов осуществлять управление админ-панелью трекера Keitaro. Не заходя в админку трекера, возможно, например, создать кампанию с необходимыми настройками, поменять содержимое потока или сформировать отчет по конверсиям, возможен серверный скрипт или внешнее приложение по типу Postman.
# Методы Admin API
Список методов и примеров запросов смотрите на странице.
# Использование Admin API
Панель управления Keitaro проводит все запросы по Admin API, что позволяет исследовать запросы и ответы между UI и сервером. Например, если необходимо запрашивать отчет по Admin API, создайте в UI и скопируйте Payload.
- Откройте Chrome, затем View → Developer → Developer tools.
- Переключитесь на Network, добавьте фильтр Fetch / XHR.
- Выберите запрос слева и переключите справа на Payload.

TIP
Некоторые запросы идут по адресам ?batch и ?bulk. Keitaro отправляет запросы пакетно для повышения скорости.
Видео
Пример запроса:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://example.com/admin_api/v1/campaigns');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Api-Key: <your-api-key>'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
echo curl_exec($ch);
2
3
4
5
Строку your-api-key необходимо заменить на действующий API ключ.
Носитель:
Ключ API передается как токен носителя:
curl_setopt($ch, CURLOPT_HTTPHEADER, array ('Authorization: Bearer <your-api-key>'));
# Создание запроса Admin API
Для формирования корректного запроса к Admin API, необходимо:
Использовать ключ авторизации. Ключ необходим для защиты API от несанкционированного доступа.
Указать корректный HTTP-метод запроса.
Передать обязательные параметры, которые требуются для запросов на создание сущностей (например, при создании кампании).
Ключ аутентификации берется в трекере, в меню Обслуживание — Пользователи — Ключ для Admin API.

При работе с Admin API Keitaro используются следующие HTTP-методы:
GET — для получения информации, например, списка кампаний трекера:
https://keitarosupport1.xyz/admin_api/v1/campaigns
POST — для построения отчетов и создания сущностей, например, новой кампании в трекере:
https://keitarosupport1.xyz/admin_api/v1/campaigns
Обратите внимание: адрес запроса внешне выглядит одинаково. В обоих случаях используется одинаковая «точка входа» трекера, которая состоит из:
- Адреса трекера —
keitarosupport1.xyz - Раздела Admin API —
admin_api/v1/ - Конкретного подраздела трекера, например, кампании —
campaigns.
PUT — для обновления имеющихся данных в трекере. Метод PUT обновляет только поля, переданные в теле запроса. Параметры, не указанные в запросе, остаются без изменений.
DELETE — для удаления данных в трекере.
Для выполнения запроса требуется список обязательных (required) параметров.
Обратитесь документацию, выберите необходимый тип запроса — в описании запроса указан список обязательных параметров.
Например, список необходимых параметров для создания кампании в трекере включает alias и name:

При передаче данных параметров кампания создастся. Остальные настройки кампании применятся со значениями по умолчанию.
# Swagger документация
Это интерфейс, который совмещает нашу документацию Admin API и возможность отправлять реальные запросы на трекер. Для работы необходимо открыть Обслуживание — Пользователи — Ключи для Admin API, копируем ключ и нажимаем на вкладку Документация. Откроется интерактивный режим для работы с запросами.
В первую очередь, необходимо авторизироваться:

Выбрать необходимый раздел, например, создание кампании:

Нажать Try it out. Это даст возможность редактировать тело (body) запроса, которое отправится при нажатии кнопки Execute. Внутри body, задаются required параметры name и alias и все дополнительные, которые хотим указать при создании кампании

Нажимаем Execute и видим отправленный запрос, адрес запроса и ответ от трекера:

Если запрос произошел с ошибкой, то покажется другой статус ответа, и в поле Response body отобразится описание ошибки.
Если обладаете базовыми навыками работы с запросам, возможно попробовать работать с Admin API из стороннего приложения, например, Postman. Или попробовать написать серверный скрипт, в котором возможно отправлять запрос на Admin API.
# Поддержка других языков
Swagger-codegen сможете сгенерировать код на любом языке, который сможете встроить в сервис.
Пример:
Сгенерирует golang файлы в директорию output/.
Доступные языки:
$ swagger-codegen langs
Available languages: [
dart, aspnetcore, csharp, csharp-dotnet2, go, go-server,
dynamic-html, html, html2, java, jaxrs-cxf-client, jaxrs-cxf, inflector,
jaxrs-cxf-cdi, jaxrs-spec, jaxrs-jersey, jaxrs-di, jaxrs-resteasy-eap,
jaxrs-resteasy, micronaut, spring, nodejs-server, openapi,
openapi-yaml, kotlin-client, kotlin-server, php, python,
python-flask, r, ruby, scala, scala-akka-http-server,
swift3, swift4, swift5, typescript-angular, typescript-axios, typescript-fetch,
javascript]
2
3
4
5
6
7
8
9
10
Нашли ошибку?
Помогите улучшить документацию. Если выявите неточности или ошибки, напишите на support@keitaro.io.
# Сторонние библиотеки
# Python
# FAQ
Почему при пустом POST запросе приходит 400 Bad Request ошибка?
Добавьте в код
curl_setopt($ch, CURLOPT_POSTFIELDS, '');
← Click API Keitaro CLI →