Документация, с которой можно начать сегодня.
Linkora объединяет рекламодателя, арбитражника и операционную команду вокруг единой событийной модели. Здесь собраны все действия от первого оффера до расчета комиссии.
- 01 Создайте рабочее пространство
- 02 Добавьте оффер и условия
- 03 Создайте кампанию для источника
- 04 Настройте S2S-события
Запуск интеграции без пробелов
Если вы подключаете продукт впервые, используйте единый путь: пространство, оффер, сохранение click_id, Sandbox, внешний подписанный тест, production S2S и проверка готовности запуска.
Проверьте до production
Откройте Sandbox в кабинете рекламодателя: он выдаст тестовые ID, проверит payload и примет внешний подписанный запрос без начислений.
Открыть SandboxЗакройте чек-лист
После Sandbox откройте «Готовность запуска»: Linkora покажет ключи, офферы, контракт и сигналы, которые нужно устранить до трафика.
Открыть готовностьРегистрация, роли и вход
Один email может работать с обеих сторон сети. После регистрации Linkora сразу открывает нужный кабинет: арбитражнику - офферы и трафик, рекламодателю - офферы и интеграцию. Если обе роли активны, откроется страница «Рабочие пространства».
Привлекает и измеряет
Берёт оффер, создаёт трекинговую ссылку, задаёт метки, следит за конверсиями, холдами и заявками на выплату.
Запускает и подтверждает
Создаёт условия оффера, передаёт события из backend и видит качество трафика, выручку и обязательства перед партнёрами.
Чтобы добавить вторую роль, откройте «Рабочие пространства» в меню кабинета и нажмите «Добавить роль». Новый пароль не нужен. Linkora сохраняет запрошенный раздел при входе, не пускает в кабинет без нужной роли и автоматически переводит старые адреса /affiliate и /advertiser на современные страницы.
Рост сети, приглашения и рекомендации
Команда Linkora ведет подключение без отдельной таблицы: создает персональную ссылку, фиксирует следующий шаг, ставит задачу и видит первый подтвержденный результат. Сообщения не отправляются автоматически: менеджер сам выбирает канал и момент коммуникации.
Ссылка закрепляет роль
В админке выберите email и роль. Ссылка привязана к этому email, сроку и роли, поэтому ее нельзя использовать для другой учетной записи. Получатель может создать новое пространство или добавить вторую роль под уже активным аккаунтом.
Рекомендация объясняет себя
Партнер видит активные доступные офферы по категориям и модели выплаты. Рекламодатель видит только агрегированные показатели собственных кампаний: без чужих офферов, источников и персональных данных.
МенеджерАдминка: Рост сети, Приглашения, Задачи, ШаблоныВоронка, ручная ссылка, срок и история первого результатаПартнерКабинет: Подбор офферовДоступные предложения и понятная причина рекомендацииРекламодательКабинет: ПартнерыОценка активного собственного контура для следующего решенияПодробный сценарий с API, статусами приглашения, задачами и переменными шаблонов находится в файле docs/ROST_SETI_I_KOMMUNIKATSII.md проекта.
Трекинг и партнерские ссылки
В разделе «Ссылки» арбитражник собирает разовую ссылку под конкретный источник: выбирает оффер, задает source_id, кампанию и метки sub1-sub4. Эти данные попадут в click, отчеты, конверсии и postback.
Запуск сразу
Откройте витрину, выберите оффер и скопируйте ссылку из конструктора. Уникальный aff_id уже добавлен Linkora.
Доступ после решения
Отправьте заявку из карточки оффера. Рекламодатель увидит ее в своей карточке и сможет одобрить, отклонить или выдать доступ вручную.
Сохраните click_id в Telegram-боте или продукте и возвращайте его в S2S-событии. Без него событие появится в журнале рекламодателя, но не будет автоматически привязано к арбитражнику.
Кампании: постоянные ссылки и чистая аналитика
Создавайте кампанию для каждого самостоятельного запуска: рекламного кабинета, канала, креатива или размещения. Linkora сохраняет оффер, источник, внешнюю метку и до восьми sub-параметров, а затем связывает с этой кампанией переходы, конверсии, подписки и комиссии.
Одна ссылка для одного запуска
Откройте «Кампании», выберите оффер, задайте понятное название и источник. После сохранения скопируйте постоянную ссылку. В ней есть campaign и aff_id; не удаляйте и не заменяйте эти параметры.
Пауза сохраняет историю
Поставьте кампанию на паузу, когда размещение завершено. Новые переходы будут остановлены, а накопленные конверсии, продления и расчеты останутся в отчетах. Для нового оффера создавайте новую кампанию.
НазваниеЧтобы команда узнала запускTelegram Ads · сентябрьsource_idДля сравнения площадокtelegram_adsВнешняя меткаЧтобы связать с рекламным кабинетомtgads_0926_01sub1-sub8Для креативов, сегментов и размещенийsub1=creative_video_aОткройте карточку кампании, чтобы увидеть динамику за 14 дней, долю подтвержденных действий, сумму комиссий и перейти в детальный отчет уже с выбранным campaignId.
Заявки на офферы и уведомления
Для оффера с витриной «По заявке» партнер отправляет заявку из карточки. Она сразу появляется у рекламодателя в разделе «Уведомления» и на странице управления оффером. Там можно одобрить партнера, отклонить заявку или добавить команду в белый список вручную.
Следит за решением
Откройте «Уведомления», чтобы увидеть одобрение или отказ. После одобрения оффер появляется в доступных и его можно выбрать в конструкторе ссылки.
Принимает решение
Перейдите из уведомления прямо к офферу, проверьте данные команды и выберите решение. Для автоодобрения установите режим «Автоматический» в настройках оффера.
ЗапрошенПартнер ожидает решенияРекламодатель одобряет или отклоняетДоступ открытПартнер добавлен к офферуСоздать ссылку и запустить кампаниюДоступ закрытРабота с оффером ограниченаПроверить условия или связаться с менеджеромКолокольчик в шапке и счётчик в меню показывают непрочитанные действия. Нажмите отметку рядом с уведомлением или используйте «Прочитать все», когда вопрос уже обработан.
Внизу страницы «Уведомления» каждый участник настраивает личный поток: необязательные новости можно отключить, а финансовые, договорные, риск-события и просроченные сверки остаются включенными. Настройка действует только для текущего пользователя и не меняет поток коллег по организации.
S2S-интеграция
Рекламодатель остаётся источником правды по оплатам и продуктовым событиям. Linkora не подключается к вашей платёжной системе: ваш backend сам передаёт подтверждённые данные.
POST /api/v1/ingest/advertiser-events/:advertiserIdX-Signature - HMAC-SHA256 от исходного тела запроса.
X-Timestamp - Unix timestamp; допустимое смещение 5 минут.
event_id идемпотентен: повтор того же события безопасен.
Проверьте событие в кабинете
В «Настройках пространства» выберите оффер и запустите проверку. Linkora покажет обязательные поля, соответствие click_id, правило выплаты и дубликат event_id. Эта проверка не создает конверсию и не меняет баланс.
Отправьте запрос из backend
Получив зелёную проверку, подпишите неизменённое JSON-тело секретом webhook и отправляйте его в рабочий endpoint. Передавайте metadata.schema_version: "2026-08" и не генерируйте новый event_id при сетевом повторе.
Для production, staging и разных продуктов создавайте отдельные ключи в «Настройках пространства». Передайте публичный идентификатор в X-Integration-Key, а HMAC считайте секретом именно этого ключа. Отзыв ключа немедленно прекращает приём запросов с ним. Для плановой замены используйте ротацию: прежний и новый ключ работают только в выбранное окно перекрытия, затем старый отключается автоматически.
POST /api/v1/ingest/advertiser-events/validate
Authorization: Bearer <access_token>
Content-Type: application/json
{
"advertiserId": "adv_8wm2",
"payload": {
"event_id": "check-order-100023",
"event_type": "first_purchase",
"event_time": "2026-08-26T12:30:00.000Z",
"advertiser_id": "adv_8wm2",
"offer_id": "offer_premium_bot",
"click_id": "clk_01J9...",
"external_user_id": "tg_123456789",
"subscription_id": "sub_001",
"currency": "USD",
"amount": "9.99",
"status": "approved"
}
}curl -X POST \
https://spa.ditrixdev.ru/api/v1/ingest/advertiser-events/:advertiserId \
-H "Content-Type: application/json" \
-H "X-Integration-Key: lki_..." \
-H "X-Timestamp: 1787747400" \
-H "X-Signature: <HMAC-SHA256 от event.json>" \
--data-binary @event.json{
"event_id": "bot-evt-100023",
"event_type": "first_purchase",
"event_time": "2026-08-26T12:30:00.000Z",
"advertiser_id": "adv_8wm2",
"offer_id": "offer_premium_bot",
"click_id": "clk_01J9...",
"external_user_id": "tg_123456789",
"subscription_id": "sub_001",
"payment_id": "payment_001",
"currency": "USD",
"amount": "9.99",
"status": "approved"
}curl -X POST \
https://spa.ditrixdev.ru/api/v1/ingest/advertiser-events/:advertiserId \
-H "Content-Type: application/json" \
-H "X-Timestamp: 1787747400" \
-H "X-Signature: <HMAC-SHA256>" \
--data-binary @event.jsonГотовность запуска
После Sandbox откройте «Готовность запуска» в кабинете рекламодателя. Она собирает в одном месте активность пространства, ключи, офферы, правила оплаты, версию S2S-схемы, внешний Sandbox и технические сигналы.
Закройте все блокеры
Нужны активный оффер с правилами, подпись S2S, созданный Sandbox, успешное эталонное событие и подписанный запрос от backend продукта.
Открыть готовностьСохраните новый снимок
Нажмите «Проверить» после ротации ключа, изменения оффера или релиза backend. Снимок не создает конверсию, комиссию, проводку или выплату.
Команда платформы видит тот же безопасный статус в админке: `Готовность запусков`. Там доступны риск, владелец, Sandbox и последняя проверка, но не payload, секреты, подписи или финансовые значения.
События и их последствия
registrationПользователь завершил регистрациюCPLtrial_startedЗапущен пробный периодTrial CPAfirst_purchaseПодтверждена первая оплатаCPA и HybridrenewalПодтверждено продлениеRevShare и Hybridrefund / chargebackОплата отменена или оспоренаКорректировка комиссииДля возврата и чарджбэка передайте related_event_id исходного денежного события. Частичный возврат передается в amount: Linkora списывает только пропорциональную часть комиссии, а остаток остается на исходной конверсии. Повторяйте тот же event_id только при сетевом повторе.
В кабинетах партнера и рекламодателя откройте раздел «Корректировки»: там видны исходное событие, каждая часть возврата, комиссия и накопленный остаток. Полная инструкция с примерами payload, ошибок и HMAC находится в docs/KORREKTIROVKI_I_CHARGEBACKI.md.
Модели вознаграждения
Фиксированная выплата за регистрацию.
Выплата за запуск пробного доступа.
Выплата за первую подтвержденную оплату.
Процент от платежей пользователя.
Фикс за первую оплату плюс процент с продлений.
После подтверждения комиссия может находиться в холде. Срок задается в оффере; выпуск проходит автоматически или вручную через админку.
Финансы, холды и выплаты
Финансовый контур Linkora хранит всю цепочку от подтвержденной конверсии до выплаты. Реквизиты, решение оператора, платежный пакет и внешний номер платежа остаются в журнале, поэтому цифры можно сверить в любой момент.
Добавляет реквизиты и создает заявку
Откройте «Финансы», добавьте банковский перевод, СБП, криптокошелек или другой способ. Назначьте один активный способ по умолчанию, выберите его в новой заявке и следите за статусом в журнале выплат.
Видит резерв по офферам
Откройте «Финансы офферов», чтобы увидеть суммы в холде, подтвержденные комиссии и общий резерв по каждой валюте и офферу. Это не платежная система: данные строятся по переданным вами S2S-событиям.
ХолдКомиссия удерживается до заданной датыПартнер видит календарь, админка — срок и правилоПодтвержденоКомиссия доступна на балансеПартнер может создать заявку на выплатуНа проверкеФинансовая команда приняла заявкуСтатус и комментарий появляются в журналеВ обработкеЗаявка включена в платежный пакетВидны пакет, сумма и состояние обработкиВыплаченоОператор указал внешний номер платежаБаланс списывается, партнер получает уведомлениеДля новых комиссий срок выбирается в таком порядке: персональное правило «партнер + оффер», общее правило партнера, затем срок из оффера. Уже созданная комиссия хранит примененный срок и правило, поэтому последующие изменения не переписывают историю.
Верхняя карточка «Финансовый прогноз» показывает ближайшие 90 дней. У партнера доступный баланс уже уменьшен на незавершенные заявки в той же валюте. Поэтому после заявки на 7 USD при подтвержденном остатке 12 USD следующая заявка может быть не больше 5 USD.
POST /api/v1/affiliate/payout-methods
Authorization: Bearer <access_token>
Content-Type: application/json
{
"type": "bank_transfer",
"label": "Основной расчетный счет",
"details": "Банк: ...\nПолучатель: ...\nСчет: ...",
"isDefault": true
}Возврат уже выплаченных комиссий
Если возврат или чарджбэк касается комиссии, которая уже вошла в выполненную выплату, Linkora не переписывает историю. Она открывает отдельный финансовый реестр, резервирует точную сумму из будущего подтвержденного баланса и сохраняет связь с исходным событием.
Видит реальный доступный остаток
В разделе «Возвраты выплат» показаны исходное событие, сумма резерва, активные заявки и уже созданные зачеты. Пока запись не закрыта, резерв уменьшает только доступный баланс в той же валюте.
Закрывает обязательство проводкой
Админка создает отдельный зачет из свободного подтвержденного баланса либо позволяет списать исключение только с обязательным основанием. Прошлая выплата остается неизменной.
Корректировка до выплатыСписывает комиссию из ее текущего статусаОбычная запись в «Корректировках»Корректировка после выплатыСоздает возврат выплаченной части и резервОтдельный реестр «Возвраты выплат»Новая заявкаПроверяет подтвержденный баланс за вычетом резерваНепокрытая выплата не пройдетНапример, из выплаченной комиссии 10.00 USD рекламодатель возвращает четверть покупки. Linkora создаст резерв 2.50 USD: при новом подтвержденном остатке 10.00 USD к выплате будет доступно 7.50 USD. Полный пошаговый разбор, статусы и API есть в docs/VOZVRAT_VYPLACHENNYH_KOMISSIY.md.
Платежные пакеты и расчетные документы
Когда команда подтверждает реальный перевод, Linkora выпускает неизменяемый расчетный документ. Он помогает партнеру и оператору сверить сумму, платежный идентификатор, пакет и распределение комиссий без показа реквизитов способа выплаты.
Получает подтверждение
После статуса «Выплачено» откройте «Расчетные документы». В архиве можно увидеть номер, сумму, пакет, контрольную сумму и скачать текстовую сверку только по своим выплатам.
Закрывает фактический результат
В админке откройте «Расчетные документы»: там видно, сколько по пакету оплачено, отменено и еще остается в обработке. CSV-выгрузка дает построчную сверку заявок и документов.
В обработкеЕсть хотя бы одна незавершенная заявкаПакет нельзя считать закрытымЗавершенВсе заявки подтверждены как выплаченныеВся ожидаемая сумма прошлаЧастично завершенЕсть и выплаченные, и отмененные заявкиСверьте фактический оплаченный итогОтмененНи одна заявка не была выплаченаПакет закрыт без выполненных переводовДокумент хранит номер, сумму, валюту, платежный идентификатор, номер пакета и снимок распределения комиссий. Его SHA-256 контрольная сумма помогает проверить неизменность снимка, но не заменяет банковский реестр, договор или бухгалтерский первичный документ.
Для одной выполненной заявки создается только один документ. Сервер блокирует параллельное подтверждение выплаты, поэтому повторный запрос не должен создать вторую проводку, второе распределение или второй документ.
Если историческая выплата была создана до появления архива, оператор может выпустить документ из отдельного списка в админке. Эта операция не меняет баланс, статус или платеж, а повторный запуск безопасно вернет уже созданный документ.
В полном руководстве есть API, примеры выгрузок, типовые ошибки, правила доступа и чек-лист закрытия пакета.
Экономика кампаний: расход, доход и ROI
Партнер может добавить фактический расход к сохраненной кампании и сразу увидеть результат запуска. Linkora сопоставляет расход с переходами, конверсиями и комиссиями, но никогда не складывает разные валюты в одну условную цифру.
Ведет фактический бюджет
Откройте «Экономика», выберите кампанию, дату, валюту и сумму. Источник и заметка помогают команде помнить, откуда пришла цифра, но остаются только в партнерском кабинете.
Видит управленческий итог
В админке есть отдельная страница «Экономика»: агрегаты по кампании, партнеру и валюте, переходы, подтвержденные комиссии, прибыль, ROI и CPC без доступа к личным заметкам.
НакопленоВсе действующие комиссии после частичных корректировокПонимать общий объем в работеПодтвержденоКомиссии в статусах «Подтверждена» и «Выплачена»Считать текущий финансовый результатПрибыльПодтверждено минус расходПонять результат кампанииROIПрибыль / расход × 100%Сравнить сопоставимые запуски одной валютыCPCРасход / переходы кампанииКонтролировать стоимость трафикаЕсли расход равен нулю, ROI и CPC не показываются. Это честнее, чем бесконечный ROI. При расходе 7 USD и подтвержденной комиссии 10 USD прибыль составляет 3 USD, а ROI - 42,9%. Суммы в RUB, EUR, USDT и других валютах остаются самостоятельными строками.
Расход можно создать, изменить или удалить. Эти действия пишутся в аудит без текста источника и заметки. Они не меняют click, конверсию, комиссию, баланс, холд или выплату - только пересчитывают представление экономики.
POST /api/v1/affiliate/campaign-spend
Authorization: Bearer <access_token>
Content-Type: application/json
{
"campaignId": "camp_123",
"spendDate": "2026-08-26",
"currency": "USD",
"amount": "27.50",
"source": "Telegram Ads",
"note": "Тест двух креативов"
}В руководстве собраны права доступа, формулы, API, ответы, ошибки, примеры по валютам и рабочий ритм команды.
Коммерческие условия и запуск без сюрпризов
Перед запуском Linkora проверяет не только техническую готовность. У платформы и оффера могут быть свои редакции условий, а у организации и реквизитов - статус проверки. Это защищает расчеты и заранее объясняет, почему действие доступно или остановлено.
Принимает условия до ссылки
В разделе «Коммерческие условия» откройте действующую редакцию платформы и условия каждого оффера. Если оффер требует принятия, подтвердите текст один раз для своей организации, затем создавайте кампанию или копируйте ссылку.
Управляет риском до трафика
В своём разделе «Коммерческие условия» видны статус проверки, ставка платформы и кредитные лимиты по валютам. При режиме блокировки новые переходы остановятся до того, как обязательства превысят согласованный предел.
Редакции условийОпубликованный текст неизменяем; новая версия требует нового принятияВерсия, дата, организация, пользователь и источник принятияЭкономика комиссииДля каждой комиссии фиксируются выплата партнеру, ставка Linkora и валовая суммаИсторический снимок не меняется после правок тарифаКредитный лимитСчитаются pending, hold и approved обязательства по валютеРежим наблюдения или блокировка нового трафикаПроверкаРеквизиты или организация ожидают решения, отклонены либо просроченыПричина ограничения, заметка оператора и уведомлениеКомиссия платформы считается поверх выплаты партнеру: при выплате 5 USD и ставке 10% валовая сумма равна 5.50 USD, а комиссия Linkora - 0.50 USD. Ставка и суммы фиксируются в момент создания комиссии, поэтому финансовая история воспроизводима.
Операторы управляют документами, проверками и лимитами в отдельном разделе админки. Финансовую сверку можно выгрузить в CSV с учетом прав доступа и защитой значений от формул.
Подробные сценарии, ограничения, API и диагностика собраны в руководстве по коммерческим условиям.
Отчеты и контроль качества
В обоих кабинетах есть раздел «Отчеты». Он показывает один и тот же выбранный срез в таблицах конверсий, комиссиях, источниках и CSV-выгрузках. Фильтры по периоду, офферу, событию, source_id и sub1 сохраняются при выгрузке, а важный срез можно закрепить или открыть команде.
Понимает результат трафика
Сравнивает площадки и креативы по меткам, видит холды и выплаты, скачивает конверсии для своей сверки.
Контролирует поток продукта
В разделе «Качество трафика» следит за свежестью S2S-событий, долей атрибуции, ручными проверками и результативностью источников.
Общий срез всегда привязан к одной организации. Linkora добавляет этот фильтр сама, поэтому участник другой организации не увидит его и не сможет получить его данные через URL или CSV.
Если в отчете растет число событий «без атрибуции», обычно продукт не возвращает исходный click_id. Проверьте передачу параметра от партнерской ссылки до backend, который отправляет S2S-событие.
POST /api/v1/affiliate/report-views
Authorization: Bearer <access_token>
Content-Type: application/json
{
"name": "Первые оплаты за неделю",
"organizationId": "org_123",
"isShared": true,
"isPinned": true,
"filters": {
"eventType": "first_purchase",
"currency": "USD",
"sourceId": "telegram_ads"
}
}Контроль качества и антифрод
Linkora не принимает рискованные решения вслепую. Каждый сигнал привязан к конверсии и объясняет, что именно требует проверки: время события, повтор пользователя, скорость кликов, лимит оффера, GEO или источник.
Видит агрегированное качество
Раздел «Качество трафика» показывает уровень риска по офферу и source_id без раскрытия пользовательских данных. Это помогает исправить кампанию до того, как платформа ограничит запуск.
Контролирует продуктовый поток
В «Качестве трафика» рекламодателя видны агрегированные сигналы, доля рисковых действий и офферы, которым нужен дополнительный контроль. Персональные данные посетителей в этом срезе не раскрываются.
Высокий рискСобытие раньше клика, повтор пользователя, аномальная скорость IP, запрещённый GEO или источникАдминка отправляет на ручную проверку; оператор может приостановить кампанию или ограничить партнёраСредний рискGEO или source_id не входят в условия оффераПроверить правила оффера, метки кампании и данные S2SНизкий рискКонверсия слишком быстро следует за кликом или у клика есть технический флагСравнить с нормальной динамикой источника и не смешивать запускиОграничение качества не переписывает историю и не скрывает причину. Решение оператора, заметка, время и применённое действие сохраняются в аудите; для high-сигналов решение по конверсии остаётся отдельной операцией модерации.
Импорт истории без повторных начислений
Если продукт уже работал в другой системе, перенесите клики и события через «Импорт истории» рекламодателя. Linkora сначала строит dry-run: он не меняет баланс и показывает каждую ошибку до подтверждённого запуска.
Загрузите CSV или JSON
Укажите kind: click для перехода и kind: event для продуктового действия. Внешний external_click_id станет доступен для последующих S2S-событий.
Проверьте результат
Партия не запустится, пока в ней есть ошибки. Дубли безопасно пропускаются, а предупреждения объясняют отсутствие клика, правила выплаты или необычную дату.
После подтверждения очередь сначала создаёт клики, затем события. Исторические строки проходят обычные правила атрибуции и комиссии, но не отправляют postback партнёрам.
ГотовоСтрока прошла dry-runПодтвердить проверенную партиюПредупреждениеИмпорт допустим, но нужен контрольСверить атрибуцию и payout-правилоОшибкаНе хватает обязательных данных или оффер не подходитИсправить файл и создать новую проверкуЕсть ошибкиТехническая ошибка в очередиИспользовать повтор ошибочных строк[
{
"kind": "click",
"external_click_id": "legacy-click-1001",
"offer_id": "offer_abc",
"affiliate_organization_id": "aff_123",
"clicked_at": "2026-07-10T09:15:00Z"
},
{
"kind": "event",
"event_id": "legacy-event-1001",
"event_type": "first_purchase",
"event_time": "2026-07-10T09:20:00Z",
"offer_id": "offer_abc",
"click_id": "legacy-click-1001",
"external_user_id": "user_42",
"subscription_id": "sub_42",
"currency": "USD",
"amount": "9.99",
"status": "approved"
}
]POST /api/v1/historical-imports/dry-run
Authorization: Bearer <access_token>
Content-Type: application/json
{
"advertiserOrganizationId": "adv_123",
"name": "История июля",
"idempotencyKey": "july-history-v1-2026",
"format": "json",
"rows": [/* строки из примера */]
}Интеллектуальный контур и безопасный S2S-маппинг
Контур рекомендаций замечает понятные отклонения в конверсиях, S2S, postback, антифроде и RevShare. Он объясняет причину, но не меняет деньги, доступы, кампании или статусы конверсий без отдельного ручного решения.
Проверяет продуктовый поток
Откройте «Рекомендации», чтобы увидеть сравнение двух периодов, задержку S2S или изменение экономики оффера. Карточку можно взять в работу или скрыть с заметкой.
Контролирует свои запуски
«Навигатор трафика» показывает только агрегированные сигналы по доступным источникам и обратным уведомлениям. Данные других участников сети не раскрываются.
Снижение конверсийПоследние 7 дней и предыдущие 7 дней по офферу и источникуПроверить кампанию, ссылку и S2S-журналЗадержка S2SВремя действия и время приёма событияПроверить очередь и повторную доставку backendОшибки postbackDead-letter доставки за 7 днейИсправить endpoint, затем поставить доставку на повторДавление антифродаОткрытые агрегированные сигналы качестваОткрыть антифрод и принять отдельное ручное решениеRevShareПодтвержденные продления в двух сопоставимых периодахСверить продления, возвраты и S2SПомощник маппинга в разделе рекомендаций принимает только имена и общие типы полей. Он подсказывает соответствия для event_id, event_type, event_time, offer_id, external_user_id и status, но автоматически исключает поля с именами secret, token, password, signature и api_key.
Статус «Взято в работу» сохраняет заметку и историю, но не останавливает кампанию. Для финансовых и антифрод-действий используйте их специальные рабочие страницы.
Открытый API и исходящие webhooks
В разделе «API и webhooks» владелец пространства выпускает отдельный сервисный ключ для своего backend, BI или CRM. Этот ключ только читает разрешенные данные и не заменяет S2S-ключ, которым рекламодатель передаёт конверсии.
Минимальный доступ
Выберите только нужные области: офферы или кампании, конверсии, аналитику и финансы. Ключ показывается один раз, его можно ротировать с окном перекрытия или отозвать моментально.
Событие приходит само
Добавьте публичный HTTPS endpoint, выберите бизнес-события и сохраните секрет подписи. Worker доставляет сообщение, повторяет временные ошибки и показывает полный журнал попыток.
РекламодательОфферы, конверсии, аналитика, обязательстваТолько собственное пространствоПартнерКампании, конверсии, аналитика, выплатыТолько собственные запускиОператорСостояние ключей и доставокБез раскрытия секретовДобавляйте ключ в заголовок X-Linkora-API-Key в форме lsk_<public_id>.<secret>. Для проверки начните с GET /api/v1/public/me, затем используйте /offers у рекламодателя либо /campaigns у партнера.
curl "https://spa.ditrixdev.ru/api/v1/public/analytics/summary?dateFrom=2026-08-01T00:00:00.000Z&take=100" \
-H "X-Linkora-API-Key: lsk_<public_id>.<secret>"Webhook приходит с заголовками X-Linkora-Webhook-Id, X-Linkora-Webhook-Event, X-Linkora-Webhook-Timestamp и X-Linkora-Webhook-Signature. Подпись считается от точного тела запроса: timestamp + '.' + rawBody. Проверяйте её до обработки и храните идентификатор доставки, чтобы безопасно игнорировать повтор.
import { createHmac, timingSafeEqual } from 'node:crypto';
function verifyLinkoraWebhook(rawBody, headers, signingSecret) {
const timestamp = headers['x-linkora-webhook-timestamp'];
const signature = headers['x-linkora-webhook-signature'];
const expected = createHmac('sha256', signingSecret)
.update(timestamp + '.' + rawBody)
.digest('hex');
return Boolean(timestamp && signature)
&& timingSafeEqual(Buffer.from(signature), Buffer.from(expected));
}Подробная пошаговая инструкция, таблица endpoint-ов, примеры для JavaScript, Python и PHP доступны в Swagger API и в репозитории: docs/OTKRYTYJ_API_I_WEBHOOKS.md.
Производительность, емкость и надежность
Linkora показывает операционной команде, когда сеть готова к росту: сколько событий проходит через платформу, как себя чувствуют API и worker, не растет ли очередь и подтверждено ли восстановление базы.
Смотрит готовность до запуска
В админке откройте «Емкость и надежность». Там собраны память процессов, темп S2S, очереди postback и webhook, размер PostgreSQL, возраст backup и последняя изолированная проверка восстановления.
Проверяет профиль без риска
Сценарий нагрузки создает отдельные тестовые пространства, отправляет корректно подписанные события и удаляет тестовые данные после завершения. Он не запускается без явного подтверждения.
ГотовоРесурсы, очереди, backup и проверки укладываются в текущие порогиМожно увеличивать трафик следующей согласованной ступеньюКонтрольПорог памяти достигнут, очередь растет или restore-проверка устарелаОткрыть карточку в capacity и устранить причину до ростаКритичноAPI, worker, backup или synthetic-проверка недоступныПриостановить расширение нагрузки и восстановить контурLinkora не показывает в capacity секреты, ключи, реквизиты или тела событий. Снимок содержит только агрегаты ресурсов, счетчики и безопасные технические статусы.
Еженедельная проверка восстановления создает временную отдельную базу, развертывает в нее backup, проверяет базовые таблицы и затем удаляет ее. Рабочая база и финансовая история не изменяются.
Подробный план масштабирования, допустимые параметры нагрузочного профиля и сценарий восстановления находятся в docs/PROIZVODITELNOST_I_MASSSHTABIROVANIE.md.
Споры и сверки
Кейс сверки нужен, когда участники видят расхождение в операции или хотят зафиксировать вопрос по качеству трафика. Он не меняет сумму оплаты у рекламодателя и не проводит выплату автоматически: Linkora сохраняет доказательства, контекст, решение и полный след действий.
Открывает обращение
В разделе «Споры и сверки» выберите свое пространство, тип вопроса и связанную конверсию, комиссию или заявку на выплату. Когда операция связана, Linkora сама определит вторую сторону.
Управляет решением
Оператор назначает ответственного, срок, приоритет и вторую сторону для свободного обращения. Только платформа может менять финальный статус и фиксировать решение.
ОткрытКейс зарегистрирован и ожидает первичной оценкиПлатформаНа рассмотренииОператор проверяет данные и материалыПлатформаОжидает ответНужен ответ второй стороныПлатформаРешен / отклоненИтог и основание зафиксированыПлатформаУчастник видит только кейсы, где его активная организация является одной из сторон. Сообщения, материалы и системные изменения из такого кейса видны обеим сторонам. Служебные заметки команды платформы скрыты от участников и не возвращаются через API.
Когда команда Linkora устанавливает срок ответа, платформа предупредит обе стороны за 24 часа и будет напоминать о просроченном кейсе до решения или нового срока. Уведомление ведет только в доступную пользователю карточку сверки.
Для ссылки используйте безопасный идентификатор или контролируемый URL. Когда нужен файл, прикрепите PDF, JPEG, PNG или WebP до 10 МБ в блоке «Защищенное вложение»: Linkora проверит сигнатуру, зашифрует содержимое и выдаст его только после повторной проверки доступа.
Кнопка выгрузки в карточке кейса формирует доказательную CSV-сводку только из разрешенных вам данных. Служебные записи остаются только у команды Linkora, а значения, похожие на формулы, безопасно нейтрализуются перед скачиванием.
POST /api/v1/reconciliation/cases
Authorization: Bearer <access_token>
Content-Type: application/json
{
"organizationId": "aff_123",
"type": "conversion",
"title": "Не совпадает статус регистрации",
"description": "Просим сверить событие за 26 августа.",
"conversionId": "conv_123"
}Полный процесс, endpoint-ы, коды доступа, SLA и правила хранения собраны в docs/SPORY_I_SVERKI.md, docs/ZASHCHISHCHENNYE_DOKAZATELSTVA_SVERKI.md и docs/SLA_SVEROK_I_ESKALATSII.md.
Приватность и хранение данных
Linkora отделяет техническую очистку от финансовой истории. Старые завершенные технические записи можно обработать только через админку после dry-run и явного подтверждения; конверсии, комиссии, выплаты, споры, шифрованные доказательства и аудит не входят в такие операции.
Сначала проверка, потом действие
В разделе «Хранение данных» видно срок, владельца и число кандидатов. Dry-run ничего не удаляет, а отдельная галочка нужна перед каждой подтвержденной очисткой.
Обращение не ломает расчеты
Запрос на приватность обрабатывает только команда платформы. Учетная запись обезличивается и теряет сессии с ролями, но связи с финансовой и аудиторской историей сохраняются.
Технические журналыDry-run, затем подтвержденная очистка по утвержденной политикеФинансы, споры, аудит, raw-события и кликиОбезличиваниеЗапрос по email и ручная проверка активных пространствКомиссии, выплаты, решения и исторический следВосстановлениеПроверка backup в отдельной временной базеРабочая PostgreSQL и production-данныеПолный пошаговый регламент, API-примеры и список безопасных политик находятся в docs/PRIVATNOST_I_HRANENIE_DANNYH.md и docs/REESTR_SROKOV_HRANENIYA_DANNYH.md.
Диагностика и безопасность
Событие не появилось. Проверьте URL, X-Timestamp, подпись и журнал S2S-событий рекламодателя.
Поток помечен как требующий проверки. Откройте «Настройки пространства»: в карточке готовности видно, выпущен ли секрет, есть ли активный оффер, когда поступило последнее событие и сколько их было за 24 часа.
Тест показывает предупреждение по click_id. Событие может попасть в журнал, но для партнерской атрибуции продукт должен сохранить исходный ID перехода и вернуть его обратно в S2S-запросе.
Секрет или ключ окружения скомпрометирован. Отзовите ключ в настройках рекламодателя или перевыпустите базовый webhook-секрет, затем обновите переменную окружения backend. Отозванный ключ прекращает работать немедленно.
Потеряно устройство или есть лишний вход. Откройте «Безопасность» в любом кабинете и завершите нужную сессию либо все остальные. Отозванный сеанс перестаёт работать на сервере сразу.
Нужна плановая замена ключа. Используйте ротацию с коротким окном перекрытия, обновите backend на новый ключ и только затем дождитесь автоматического отключения прежнего.
Создайте кабинет рекламодателя, получите webhook-секрет или ключ окружения, проверьте тестовое событие и отправьте первую реальную конверсию.