Авторизация в API с помощью Bearer Token
Для авторизации в системе через API с использованием Bearer Token необходимо добавить в ваш запрос заголовок «Authorization» со значением «Bearer X», где «X» — ваш персональный токен. Токен доступен в личном кабинете рекламодателя в разделе «Профиль и настройки». Срок действия токена не ограничен. Токен можно сбросить через метод POST /api/users/token-reset.
Базовый URL:
https://partners.kadam.net/api/v1
Swagger-документация: https://partners.kadam.net/api-doc/#/ru
Общий формат ответа:
{ "success": true, "code": 0, "msg": {}, "data": { ... } }
При ошибке success = false, поле msg содержит описание ошибки.
Пагинация и сортировка (общие параметры для списков):
page — номер страницы, int (от 1)
perPage — количество элементов на странице, int (по умолчанию 20 или 50)
sort — объект вида
{"поле": "asc"|"desc"}, доступные поля указаны для каждого метода
Кампании
Список кампаний
Для получения списка кампаний используется метод POST /campaigns
Параметры | Значение | Дополнительные атрибуты |
page | Номер страницы | int; опциональный параметр |
perPage | Количество элементов на странице | int; опциональный параметр |
sort | Сортировка. Допустимые поля: campaign, dateCreation, CPC, conversions, views, clicks, moneyOut, CPA, moneyIn, trafficback, dayMoneyLimit, dayClickLimit, ROI, CPM, CTR, CR, CPL, EPC, profit, rejects, holds | объект; опциональный параметр |
filters.dateFrom | Начало периода статистики, формат YYYY-MM-DD | строка; обязательный параметр |
filters.dateTo | Конец периода статистики, формат YYYY-MM-DD | строка; обязательный параметр |
filters.timezone | Часовой пояс, смещение в часах от UTC | int; опциональный параметр |
filters.searchQuery | Поиск по названию кампании | строка; опциональный параметр |
filters.folderId | ID папки кампаний | int; опциональный параметр |
filters.campaignId | ID кампании | int; опциональный параметр |
filters.types | Массив типов кампаний: 10 — Native, 20 — Banner, 30 — Push, 40 — Popunder, 100 — In-Page Push | массив int; опциональный параметр |
filters.statuses | Массив статусов: 0 — Paused, 10 — Active, 20 — Awaiting payment, 30 — Clicks limit, 40 — Day money limit, 45 — Group limit day money, 50 — Balance exceeded, 55 — Group limit total money, 60 — Conversions limit, 70 — Day money limit (user), 80 — Bid below minimum, 120 — Insufficient funds, 140 — Blocked, 200 — Moderation | массив int; опциональный параметр |
filters.paymentModels | Массив моделей оплаты: 0 — CPC, 2 — CPM, 4 — CPA Target | массив int; опциональный параметр |
filters.countries | Массив ID стран | массив int; опциональный параметр |
filters.archive | Фильтр по архиву: 0 — активные, 1 — архив | int; опциональный параметр |
Пример запроса:
POST https://partners.kadam.net/api/v1/campaigns
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"page": 1,
"perPage": 50,
"sort": {"dateCreation": "desc"},
"filters": {
"dateFrom": "2026-03-01",
"dateTo": "2026-03-31",
"timezone": 0,
"types": [10, 30],
"statuses": [10],
"archive": 0
}
}Результат:
{ "success": true, "data": { "total": 124, "items": [ { "id": 789484, "name": "Campaign name", "type": 10, "status": 10, "paymentModel": 0, "dateCreation": "2026-03-15 12:00:00", "views": 12345, "clicks": 678, "conversions": 42, "moneyOut": 120.50, "moneyIn": 0, "CPC": 0.18, "CPM": 9.76, "CTR": 5.49, "CPA": 2.87, "ROI": 0 } ] } }
Получение кампании по ID
Для получения полных данных кампании используется метод GET /campaigns/{id}
Параметр в пути:
id — ID кампании, int; обязательный параметр
Пример запроса:
GET https://partners.kadam.net/api/v1/campaigns/789484 Authorization: Bearer YOUR_TOKEN
Результат возвращает все поля кампании в том же формате, который принимает PUT /campaigns/{id}/update. Удобно для редактирования: считать → изменить нужное поле → отправить обратно.
Создание кампании
Для создания кампании используется метод POST /campaigns/create
Content-Type: application/json Тело запроса зависит от типа кампании (поле type):
10 — Native (тизер)
20 — Banner
30 — Push
40 — Popunder
100 — In-Page Push
Обязательные общие поля:
name — название кампании, строка
type — тип кампании, int
paymentModel — модель оплаты: 0=CPC, 2=CPM, 4=CPA Target
bids — объект ставок (структура зависит от типа и модели)
countries — массив ID стран
sites — настройки площадок (whitelist/blacklist)
limits — объект с лимитами (dayMoneyLimit, dayClickLimit и т. д.)
targeting — объект таргетингов (браузеры, ОС, устройства, города)
Для получения справочников (страны, категории, push-типы и т. д.), необходимых при создании, используется GET /campaigns/options?type={type}. Полные схемы по каждому формату см. в Swagger: https://partners.kadam.net/api-doc/#/Campaigns/post_campaigns_create
Banner — схема
CampaignBannerRequestPopunder — схема
CampaignPopunderRequestIn-Page Push — схема
CampaignInPagePushRequestPush — схема
CampaignPushRequestNative / Teaser — схема
CampaignTeaserRequest
Обновление кампании
Для обновления параметров кампании используется метод PUT /campaigns/{id}/update
⚠ Важно: частичное обновление не поддерживается. В запросе нужно передать все поля (как при создании), иначе будет ошибка валидации. Типовой сценарий: GET /campaigns/{id} → изменить нужное поле → PUT /campaigns/{id}/update с полным телом. Полные схемы по форматам см. в Swagger: https://partners.kadam.net/api-doc/#/Campaigns/put_campaigns__id__update
Обновление ставки кампании
Для изменения ставок у одной кампании используется метод PUT /campaigns/{id}/bid
Content-Type: application/json
Параметры | Значение | Дополнительные атрибуты |
bids | Объект ставок. Набор полей зависит от paymentModel и type кампании (CPC/CPM/CPA, гео-ставки и т. д.). Детали в Swagger, схема CampaignBids. | объект; обязательный параметр |
Пример запроса:
PUT https://partners.kadam.net/api/v1/campaigns/789484/bid
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"bids": {
"default": 0.05
}
}Массовое обновление ставок
Для изменения ставок у нескольких кампаний одновременно используется метод PUT /campaigns/bids
Параметры | Значение | Дополнительные атрибуты |
campaignIds | Массив ID кампаний, для которых обновляются ставки | массив int; обязательный параметр |
bids | Объект ставок (схема CampaignBids — см. Swagger) | объект; обязательный параметр |
Пример запроса:
PUT https://partners.kadam.net/api/v1/campaigns/bids
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"campaignIds": [789484, 789485, 789486],
"bids": {"default": 0.05}
}Массовые действия над кампаниями
Для массового изменения статуса используются методы:
POST /campaigns/activate — активировать кампании
POST /campaigns/pause — поставить на паузу
POST /campaigns/archive — перенести в архив
Параметры | Значение | Дополнительные атрибуты |
campaignIds | Массив ID кампаний | массив int; обязательный параметр |
Пример запроса:
POST https://partners.kadam.net/api/v1/campaigns/activate
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{"campaignIds": [789484, 789485]}Справочники для создания кампаний
Для получения справочников (страны, категории, push-типы, модели оплаты и т. д.) используется метод GET /campaigns/options
Параметры (query):
type — тип кампании, int (10, 20, 30, 40, 100); обязательный параметр
pushType — подтип push-а (для type=30), int; опциональный параметр
Пример запроса:
GET https://partners.kadam.net/api/v1/campaigns/options?type=30 Authorization: Bearer YOUR_TOKEN
Папки кампаний
Список папок
Для получения списка папок кампаний используется метод POST /campaigns/folders. Тело запроса может быть пустым ({}) либо содержать стандартные поля пагинации/сортировки. Пример запроса:
POST https://partners.kadam.net/api/v1/campaigns/folders
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{}Создание папки
Для создания папки используется метод POST /campaigns/folders/create
Параметры | Значение | Дополнительные атрибуты |
name | Название папки, до 50 символов | строка; обязательный параметр |
Пример запроса:
POST https://partners.kadam.net/api/v1/campaigns/folders/create
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{"name": "New folder"}Настройки папки
Для управления лимитами и распределением бюджета папки используется метод PUT /campaigns/folders/{id}/settings
Параметр в пути: id — ID папки, int.
Параметры | Значение | Дополнительные атрибуты |
limitsEnabled | Включены ли лимиты в папке | bool; обязательный параметр |
groupDailyLimit | Дневной лимит, минимум 5 | число (float); опциональный |
groupTotalLimit | Общий лимит на группу | число (float); опциональный |
groupSpendingEvenly | Равномерное распределение бюджета | bool; опциональный |
Пример запроса:
PUT https://partners.kadam.net/api/v1/campaigns/folders/42/settings
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"limitsEnabled": true,
"groupDailyLimit": 5.05,
"groupTotalLimit": 10.10,
"groupSpendingEvenly": false
}Материалы (объявления / креативы)
Список материалов
Для получения списка материалов используется метод POST /materials
Параметры | Значение | Дополнительные атрибуты |
page | Номер страницы | int; опциональный |
perPage | Количество элементов на странице | int; опциональный |
sort | Сортировка. Допустимые поля: stakes, views, clicks, CPC, moneyOut, conversions, CPA, moneyIn, profit, ROI, holds, rejects, CPL | объект; опциональный |
filters.searchQuery | Поиск по материалу | строка; опциональный |
filters.dateFrom / filters.dateTo | Период статистики, формат YYYY-MM-DD | строка; обязательные |
filters.timezone | Часовой пояс, int | опциональный |
filters.campaignId | ID кампании для фильтрации материалов | int; опциональный |
filters.types | Массив типов материалов: 0 — Teaser (Native), 10 — Banner, 20 — Push, 30 — Clickunder (Popunder), 60 — Video, 90 — In-Page Push | массив int; опциональный |
filters.statuses | Массив статусов: 0 — On Moderation, 5 — On Moderation 2, 10 — Active, 20 — Blocked, 30 — Not Paid, 40 — Low CTR, 50 — Blocked by day limit, 60 — Banner Block, 70 — Blocked by offer owner, 80 — Paused, 90 — Video is processing, 120 — Awaiting Payment | массив int; опциональный |
filters.archive | 0 — активные, 1 — архив | int; опциональный |
Пример запроса:
POST https://partners.kadam.net/api/v1/materials
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"page": 1,
"perPage": 50,
"sort": {"views": "desc"},
"filters": {
"dateFrom": "2026-03-01",
"dateTo": "2026-03-31",
"timezone": 0,
"campaignId": 789484,
"statuses": [10]
}
}Получение материала по ID
Для получения данных материала используется метод GET /materials/{id}
Параметр в пути: id — ID материала, int. Пример запроса:
GET https://partners.kadam.net/api/v1/materials/123456 Authorization: Bearer YOUR_TOKEN
Создание материала
Для создания материала используется метод POST /campaigns/{id}/materials
Параметр в пути: id — ID кампании.
Content-Type: multipart/form-data (т. к. передаются файлы изображений). Тело зависит от типа материала. Общие поля:
image — основное изображение, file
rectangleImage — иконка/прямоугольная версия, file (для некоторых форматов)
title — заголовок, строка
text — описание, строка
url — ссылка перехода, строка
Полные схемы по форматам см. в Swagger: https://partners.kadam.net/api-doc/#/Materials/post_campaigns__id__materials
Banner — схема
BannerCreateRequestPush — схема
PushCreateRequestNative (Teaser) — схема
NativeCreateRequestIn-Page Push — схема
InPagePushCreateRequestHTML Banner — схема
HtmlBannerCreateRequest
Обновление материала
Для обновления материала используется метод PUT /campaigns/{id}/materials
Content-Type: application/json. Полные схемы по форматам см. в Swagger: https://partners.kadam.net/api-doc/#/Materials/put_campaigns__id__materials
Banner —
BannerUpdateRequestPush —
PushUpdateRequestNative —
NativeUpdateRequestIn-Page Push —
InPagePushUpdateRequestHTML Banner —
HtmlBannerUpdateRequest
Массовые действия над материалами
Для массового изменения статуса используются методы:
POST /materials/activate — активировать
POST /materials/pause — поставить на паузу
POST /materials/archive — перенести в архив
Параметры | Значение | Дополнительные атрибуты |
adsIds | Массив ID материалов | массив int; обязательный параметр |
Пример запроса:
POST https://partners.kadam.net/api/v1/materials/activate
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{"adsIds": [100, 200, 300]}Справочник размеров баннеров
Для получения словаря размеров при создании баннеров используется метод GET /materials/options. Пример запроса:
GET https://partners.kadam.net/api/v1/materials/options Authorization: Bearer YOUR_TOKEN
Аудитории
Список аудиторий
Для получения списка аудиторий используется метод POST /audiences
Параметры | Значение | Дополнительные атрибуты |
page | Номер страницы | int; опциональный |
perPage | Количество элементов на странице (по умолчанию 20) | int; опциональный |
sort | Сортировка. Допустимые поля: audienceId, audienceName, dateCreated, expireDays, usersCount | объект; опциональный |
filters.searchQuery | Поиск по названию аудитории | строка; опциональный |
tableFilters | Массив расширенных фильтров: [{"column": "audienceId", "include": [...], "exclude": [...], "childField": "listID"}] | массив объектов; опциональный |
Пример запроса:
POST https://partners.kadam.net/api/v1/audiences
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"page": 1,
"perPage": 20,
"sort": {"usersCount": "desc"},
"filters": {"searchQuery": "my audience"}
}Справочник для создания аудиторий
Для получения списка кампаний и аудиторий для S2S-связки используется метод GET /audiences/create-options. Параметры (query):
searchQuery — строка поиска, опциональный
Получение аудитории по ID
Для получения данных аудитории используется метод GET /audiences/{audiencesId}
Параметр в пути: audiencesId — ID аудитории, int.
Формат ответа зависит от типа аудитории (stat / pixel / S2S).
Создание аудитории
Для создания аудитории используется метод POST /audiences/create
Content-Type: application/json Тип задаётся полем type:
audience — стандартная статистическая аудитория (требует campaignsIds)
audience_code — pixel-аудитория (возвращает код трекинга)
audience_s2s — S2S-аудитория (Postback-интеграция)
Пример (стандартная аудитория):
POST https://partners.kadam.net/api/v1/audiences/create
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"type": "audience",
"name": "My audience",
"expireDays": 1,
"campaignsIds": [789484, 789485],
"hasClicks": true,
"hasConversions": false,
"hasHolds": false,
"hasRejects": false,
"usersIds": null
}Хотя бы одно из полей hasClicks / hasConversions / hasHolds / hasRejects должно быть true.
usersIds — массив ID пользователей для шаринга аудитории. Пример (pixel-аудитория):
POST https://partners.kadam.net/api/v1/audiences/create
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"type": "audience_code",
"name": "My code audience",
"expireDays": 1,
"extAudienceId": 123,
"usersIds": null
}Полные схемы (AudienceStandardRequest, AudienceCodeRequest, AudienceS2SRequest) — в Swagger: https://partners.kadam.net/api-doc/#/Audiences/post_audiences_create
Обновление аудитории
Для обновления аудитории используется метод PUT /audiences/{id}
Параметр в пути: id — ID аудитории, int.
Тело запроса аналогично созданию (без поля type; тип меняется только пересозданием). Детали в Swagger.
Удаление аудитории
Для удаления аудитории используется метод DELETE /audiences/{id}
Параметр в пути: id — ID аудитории, int. Пример запроса:
DELETE https://partners.kadam.net/api/v1/audiences/123 Authorization: Bearer YOUR_TOKEN
Конструктор отчётов
Список сохранённых отчётов
Для получения списка сохранённых отчётов используется метод POST /custom-reports
Тело запроса может быть пустым ({}).
Получение данных отчёта
Для получения данных отчёта используется метод POST /custom-reports/data — основной метод для построения статистики.
Параметры | Значение | Дополнительные атрибуты |
groups | Массив группировок (см. ниже) | массив строк; обязательный |
metrics | Массив метрик (см. ниже) | массив строк; обязательный |
filters.dateFrom / filters.dateTo | Период, формат YYYY-MM-DD. Можно заменить на filters.period: today, yesterday, 7days, 14days, month, prevMonth | строка; обязательный |
filters.timezone | Часовой пояс (смещение от UTC) | int; опциональный |
filters.filters | Массив объектов: [{"id": "advertiser_campaign", "type": "list", "include": [id1, id2]}, ...]. Типы фильтров: list, range, value, value_like, value_combined | массив объектов; опциональный |
sort | Сортировка: {"time_day": "desc"} | объект; опциональный |
compare | Период сравнения (если используется) | массив; опциональный |
id / name | Сохранить отчёт в список под указанным именем | int / строка; опциональные |
Группировки (groups):
Время:
time_hour,time_day,time_week,time_monthТрафик:
traffic_format,traffic_pushType,traffic_region,traffic_browser,traffic_platform,traffic_platformVersion,traffic_device,traffic_deviceType,traffic_subsAge,traffic_pageCategory,traffic_macros,traffic_isp,traffic_city,traffic_subdivision,traffic_blockSize,traffic_clickability,traffic_browserLanguage,traffic_connectionTypeРекламодатель:
advertiser_paymentModel,advertiser_campaign,advertiser_campaignName,advertiser_ad,advertiser_campaignStatus,advertiser_adStatus,advertiser_campaignGroup,advertiser_dailyBudget,advertiser_totalBudget,advertiser_groupDailyBudget,advertiser_groupTotalBudgetКреативы:
adv_image,adv_title,adv_text,adv_url
Метрики (metrics):
Трафик:
traffic_visits,traffic_views,traffic_clicks,traffic_trafficbackКонверсии:
conversion_conversions,conversion_rejects,conversion_holds,conversion_cr,conversion_pvConversions,conversion_pvConversionsCPA,conversion_pcConversions,conversion_pcConversionsCPAРекламодатель:
advertiser_cpm,advertiser_cpc,advertiser_ctr,advertiser_cpa,advertiser_income,advertiser_ROI,advertiser_cpl,advertiser_epl,advertiser_epcФинансы:
finance_moneyOut(потрачено)
Пример запроса:
POST https://partners.kadam.net/api/v1/custom-reports/data
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"groups": ["time_day"],
"metrics": ["finance_moneyOut", "conversion_conversions", "conversion_holds"],
"filters": {
"dateFrom": "2026-03-01",
"dateTo": "2026-03-31",
"timezone": 0,
"filters": [
{"id": "advertiser_campaign", "type": "list", "include": [789484]},
{"id": "conversion_conversions", "type": "range", "range": {"from": "100", "to": null}}
]
},
"sort": {"time_day": "desc"},
"compare": null
}Примечание: отчёт возвращает только агрегированные данные. Максимальная гранулярность — по часу (time_hour). Сырые посещения/просмотры по remoteUserId — только через POST /stats/conversions (для конверсий).
Справочник значений фильтра
Для получения допустимых значений для конкретного фильтра используется метод POST /custom-reports/filter-data
Параметры | Значение | Дополнительные атрибуты |
id | Идентификатор фильтра (из OPTIONS /api/v1/custom-reports) | строка; обязательный параметр |
searchQuery | Строка поиска | строка; опциональный |
Список всех группировок, метрик и фильтров
Для получения полного списка доступных группировок, метрик и фильтров используется OPTIONS /custom-reports.
Статистика
Статистика по конверсиям (сырые события)
Для получения сырых данных по конверсиям (одна строка = одна конверсия) используется метод POST /stats/conversions.
Это единственный метод, возвращающий событийные данные с remoteUserId. ⚠ Эндпоинт называется /stats/conversions, НЕ /stats/postback — не путать.
Параметры | Значение | Дополнительные атрибуты |
page | Номер страницы | int; опциональный |
perPage | Количество элементов на странице (до 1 000 000 для bulk-экспорта) | int; опциональный |
sort | Сортировка. Допустимые поля: conversionType, campaign, campaignFolder, adId, conversionTime, auctionTime, conversionDelay, remoteUserId, audience, cpaCost, macrosId | объект; опциональный |
filters.dateFrom / dateTo | Период (до 5 лет), формат YYYY-MM-DD | строка; обязательные |
filters.timezone | Часовой пояс | int; опциональный |
filters.conversionTypes | Массив типов конверсий: 1 — Approve (postback OK), 2 — Postback error, 3 — Test, 4 — Reject, 5 — Hold, 6 — PV (post-view), 7 — PC (post-click) | массив int; опциональный |
filters.campaignIds | Массив ID кампаний | массив int; опциональный |
filters.adsIds | Массив ID материалов | массив int; опциональный |
filters.folderIds | Массив ID папок | массив int; опциональный |
filters.audIds | Массив ID аудиторий | массив int; опциональный |
Пример запроса:
POST https://partners.kadam.net/api/v1/stats/conversions
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"page": 1,
"perPage": 100,
"sort": {"conversionTime": "desc"},
"filters": {
"dateFrom": "2026-03-01",
"dateTo": "2026-03-31",
"timezone": 0,
"conversionTypes": [1, 6, 7],
"campaignIds": [789484]
}
}Поля ответа по строке конверсии:
conversionType, campaign (name + ID), campaignFolder, adId, conversionTime, auctionTime, conversionDelay, remoteUserId, audience, cpaCost, macrosId, clickId, url, status, callbackUri.
Статистика по площадкам
Для получения агрегированной статистики по площадкам (macrosID, PID) используется метод POST /stats/sites.
Параметры | Значение | Дополнительные атрибуты |
page | Номер страницы | int; опциональный |
perPage | Количество элементов на странице (максимум 500 за запрос) | int; опциональный |
filters.sort | Сортировка. Допустимые поля: macrosId, isInBlackList, views, clicks, holds, conversions, rejects, CTR, CPM, CPC, spending, income, earnings, ROI, CPA, bid | объект; опциональный |
filters.searchQuery | Поиск по ID площадки | строка; опциональный |
filters.dateFrom / dateTo | Период, формат YYYY-MM-DD | строка; обязательные |
filters.timezone | Часовой пояс | int; опциональный |
filters.campaignIds | Массив ID кампаний | массив int; опциональный |
filters.adIds | Массив ID материалов | массив int; опциональный |
filters.view | Представление: null — все, "blacklist" — только ЧС, "bids" — только с индивидуальными ставками | строка; опциональный |
Пример запроса:
POST https://partners.kadam.net/api/v1/stats/sites
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"page": 1,
"perPage": 50,
"filters": {
"sort": {"views": "desc"},
"dateFrom": "2026-03-01",
"dateTo": "2026-03-31",
"timezone": 0,
"campaignIds": [789484],
"view": null
}
}Массовое обновление ставок по площадкам
Для массового изменения ставок по площадкам используется метод PUT /stats/sites/bids
Параметры | Значение | Дополнительные атрибуты |
campaignIds | Массив ID кампаний | массив int; обязательный |
bids | Массив объектов со ставками по площадкам: [{"placementId": 123, "bid": 0.05}, ...] (детали схемы — в Swagger) | массив; обязательный |
Финансы
Список финансовых операций
Для получения списка финансовых операций используется метод POST /finances/operations
Параметры | Значение | Дополнительные атрибуты |
page | Номер страницы | int; опциональный |
perPage | Количество элементов на странице | int; опциональный |
sort | Сортировка. Допустимые поля: date, money | объект; опциональный |
filters.dateFrom / dateTo | Период, формат YYYY-MM-DD | строка; обязательные |
filters.type | Тип операции: 1 — Impression operations (списание за показы), 2 — Deposit (пополнение), 3 — Admin deposit, 4 — Withdrawal, 5 — Admin withdrawal | int; опциональный |
Пример запроса:
POST https://partners.kadam.net/api/v1/finances/operations
Authorization: Bearer YOUR_TOKEN
Content-Type: application/json
{
"page": 1,
"perPage": 20,
"sort": {"date": "desc"},
"filters": {
"dateFrom": "2026-03-01",
"dateTo": "2026-03-31",
"type": 2
}
}Общие правила
Сортировка
Сортировка задаётся объектом {"поле": "asc"|"desc"}. Допустимые поля указаны в описании каждого метода. Пример:
"sort": {"views": "desc"}По нескольким полям:
"sort": {"views": "desc", "clicks": "asc"}Фильтрация (конструктор отчётов)
В POST /custom-reports/data фильтры описываются массивом объектов в filters.filters:
list — фильтр по списку:
{"id": "advertiser_campaign", "type": "list", "include": [id1, id2], "exclude": []}range — диапазон значений:
{"id": "conversion_conversions", "type": "range", "range": {"from": "100", "to": null}}value — точное значение
value_like — подстрока
value_combined — комбинированный
Ошибки
При ошибке ответ содержит "success": false и описание в msg:
{ "success": false, "code": 400, "msg": { "field": ["Error description"] } }
