Обзор интеграции и API
Как интегрировать MeerPartners в свой продукт: серверный postback конверсий, трекинг-ссылки, SSO через token-exchange, вебхуки и embed-виджеты. С чего начать разработчику.
Этот раздел — для разработчиков, которые встраивают партнёрскую программу MeerPartners в чужой продукт: сайт, мобильное приложение, Telegram Mini App или бэкенд. Здесь всё технически точно, с рабочими примерами на cURL, Node.js и Python.
Если вы не разработчик, а владелец бизнеса — начните с раздела Кабинет бизнеса и страницы Интеграция и API-ключи. Выпустить ключ и проверить интеграцию можно прямо из кабинета, без кода.
Базовый URL
В примерах базовый адрес API обозначается как https://api.meerpartners.com или плейсхолдер {API_BASE}. Точный домен вашего окружения выдаёт оператор платформы — не хардкодьте адрес из этих примеров. Трекинг-ссылки (/r/{code}, /p/{code}.gif) живут на отдельном домене и выдаются вместе с самой ссылкой.
Что можно интегрировать
| Возможность | Зачем | Аутентификация |
|---|---|---|
| Postback конверсий (S2S) | Сообщать платформе о продажах/лидах на вашей стороне — главный механизм | API-ключ + HMAC |
| Трекинг-ссылки и макросы | Получать click_id, прокидывать sub_id, связывать клик с заказом | — (публичный редирект) |
| SSO / token-exchange | Открыть кабинет инфлюенсера внутри вашего продукта без повторной регистрации | API-ключ + HMAC (scope sso) |
| Вебхуки | Принимать серверные уведомления: зачисление депозита, identity-события MeerID | HMAC / RS256 |
| Embed SDK | Встроить виджеты партнёрки (дашборд, ссылки, выплаты) в свой интерфейс | scoped-токен из token-exchange |
Общая схема
Большинство интеграций строятся вокруг одного цикла: пользователь кликает по трекинг-ссылке партнёра → попадает в ваш продукт с меткой click_id → совершает действие → ваш бэкенд шлёт postback с этой меткой → платформа атрибутирует конверсию и начисляет комиссию.
Партнёр берёт трекинг-ссылку ──► GET /r/{code}
│ (302 + cookie aff_attr + ?aff_click=<click_id>)
▼
ВАШ продукт (сайт / приложение)
│ сохраняете click_id рядом с заказом
▼
пользователь покупает ──► ВАШ бэкенд
│ POST /api/v1/postback (HMAC-подпись)
▼
MeerPartners: атрибуция → конверсия → комиссияСерверный postback подписывается HMAC по секрету API-ключа — так платформа доверяет источнику и гарантирует, что сумму заказа не подменили после подписи.
С чего начать
Выпустите API-ключ
В кабинете бизнеса → Интеграция создайте ключ с нужными скоупами (postback, sso, readonly). Секрет показывается один раз — сохраните его в свой секрет-хранилище. Детали: API-ключи и подпись.
Научитесь считать HMAC-подпись
Все серверные вызовы (postback, token-exchange, вебхуки) подписываются по одной схеме. Разберите алгоритм и проверьте его на тестовом примере: API-ключи и подпись.
Свяжите клик с заказом
Принимайте aff_click (он же click_id) на своём лендинге и сохраняйте рядом с заказом, чтобы потом передать его в postback как ref: Трекинг-ссылки и макросы.
Отправьте первый postback
Соберите подписанный запрос на POST /api/v1/postback и проверьте ответ. Перед боем удобно гонять тестовый постбэк из кабинета: Постбэк (S2S).
Разделы
Три способа: MeerID OIDC для входа людей, JWT Bearer для кабинета, HMAC API-ключ для серверных интеграций. Когда какой применять.
Где выпустить ключ, скоупы, ротация и отзыв. Точный алгоритм HMAC-подписи с примером вычисления.
Главный эндпоинт интеграции: поля, идемпотентность, ответы и коды отклонения. Рабочие примеры на трёх языках.
Формат /r/{code}, параметры sub_id, cookie атрибуции, макросы и пиксель-фоллбэк. Как связать клик с заказом.
Обмен вашего идентификатора пользователя на партнёрский токен по RFC 8693 — для встраивания партнёрки в продукт.
Входящие вебхуки: зачисление депозита от провайдера и identity-события MeerID. Подпись и идемпотентность.
Встраиваемые виджеты кабинета инфлюенсера через scoped-токен. Концепция и связь с token-exchange.
Единый формат ошибки, HTTP-коды и таблица доменных кодов с пояснениями.
Сквозной сценарий end-to-end: ссылка → клик → postback → проверка начисления.
Версионирование
Базовый префикс API — /api/v1. Трекинг-редиректы вне версии: /r/{code} и /p/{code}.gif. Аддитивные изменения (новые необязательные поля) выходят без смены версии; ломающие — только с /api/v2.