Добро пожаловать в справочник по REST API AnyAds. Этот документ описывает все публичные эндпоинты нашей платформы.
Базовый URL:
https://api.anyads.online/v1/
Типы аутентификации:
Наше API использует разные типы API Key в зависимости от типа вашей площадки. Ключ всегда передается в заголовке Authorization.
Authorization: Bearer <ВАШ_API_KEY>
Эти эндпоинты предназначены для использования нашими официальными SDK (Python, JS, Go).
Регистрирует новый Instance_ID на платформе при первом запуске SDK.
POST /sdk/register-instance{ "api_key": "...", "instance_id": "...", "fingerprint": "...", "sdk_version": "..." }201 CreatedПодтверждает, что SDK установлен в правильном боте. Вызывается SDK после получения команды от модератора.
POST /sdk/verifyAPI Key + Instance ID).{ "verification_code": "verify_anyads_..." }200 OKВозвращает информацию о том, какие типы монетизации включены для бота.
GET /platform/capabilitiesAPI Key бота).200 OK):{
"accepts_newsletters": true,
"accepts_tasks": false
}
GET /tasks/bots/newslettersAPI Key + Instance ID).200 OK): JSON с task_id, campaign_id и creative.204 No Content): Активных рассылок нет.Эндпоинт: GET /tasks/subscription
Описание: Запрашивается SDK "по требованию" (при /start) для получения "пакета" заданий.
Аутентификация: Легкая (только API Key бота).
Query-параметры: user_id (обязательный).
Ответ (200 OK): JSON, содержащий execution_id и массив channels_to_subscribe.
Ответ (204 No Content): Для данного пользователя нет доступных заданий.
Эндпоинт: POST /tasks/subscription/complete
Описание: Вызывается SDK для инициации проверки подписки.
Аутентификация: Легкая (только API Key бота).
Тело запроса: { "execution_id": 12345, "user_id": 987654321 }
Ответ (200 OK): { "all_subscribed": true }
Эти эндпоинты предназначены для интеграции "стены офферов" в ваши Web Apps.
Возвращает полный список доступных и уникальных для пользователя заданий на подписку.
GET /webapp/tasksAuthorization: Bearer <WEBAPP_API_KEY>.user_tid (обязательный).200 OK):{
"tasks": [
{
"campaign_id": 5,
"channel_id": 1,
"invite_link": "https://t.me/..."
}
]
}
Вызывается после того, как пользователь заявил о выполнении задания.
POST /webapp/tasks/checkAuthorization: Bearer <WEBAPP_API_KEY>.{ "user_tid": 12345, "channel_id": 1, "campaign_id": 5 }200 OK): { "success": true, "message": "..." }409 Conflict): Пользователь уже выполнил это задание.Этот эндпоинт используется JS-скриптом anyads.js для получения баннеров.
POST /display/requestAuthorization: Bearer <WEBAPP_API_KEY>.{
"size": "300x250",
"user_id": "уникальный_id_из_localStorage",
"page_url": "https://example.com/page"
}
200 OK):{
"imageUrl": "https://cdn.anyads.online/...",
"clickUrl": "https://tracker.anyads.online/click/...",
"impressionUrl": "https://tracker.anyads.online/impression.gif?..."
}
204 No Content): Нет подходящих баннеров для показа.Origin запроса на соответствие домену, зарегистрированному для площадки.