Краткая справка.
API — это мощный инструмент для работы с лидами и офферами. Помогает грамотно управлять своей кампанией.
Все ленды на нашей платформе уже настроены на передачу лидов по API — вам достаточно добавить оффер и скачать ленд себе.
Если вы работаете со своими промо и хотите передавать лиды нам — можете настроиться с помощью этой документации.
Основные шаги и опции:
🔖 Получаем токен: в личном кабинете CPA.TL в разделе “API” сгенерируйте свой уникальный токен. Это “ключ” для доступа к данным.
🔖 Смотрим документацию: здесь подробно расписаны все методы, параметры и примеры запросов. Тут же можно увидеть ошибки и ответы.
🔖 Запросы: это не про дайсон. Это про HTTP-запросы (GET или POST). Которые, с помощью токена, отправляются на нужные эндпоинты. Например, чтобы получить статистику по офферам или выгрузить лиды за нужный период.
Постбэки отправляются при создании заказа и изменении его статуса (например, на confirmed или cancelled).
Глобальные URL-адреса постбэков можно настроить в админке Traffic Light.
🔖 Параметры в URL: в запросах можно использовать макросы для передачи информации, такие как:
`{id}` - ID заказа
`{status}` - статус заказа (new, cancelled, holded, confirmed)
`{payout}` - сумма вознаграждения вебмастера
🔖 Прием лидов: лиды отправляются на URL →
`http://api.cpa.tl/api/lead/send`
→ методом POST
Обязательные поля включают `key`, `offer_id`, `phone`, `country`, и `ip_address`.
В случае успешной отправки API возвращает статус 200 и ID лида.
🔖 Обработка ошибок:
API возвращает статус 409 в случае ошибок, таких как неверный номер телефона или отсутствующее поле страны.
Примеры кода:
php
<?php
$apiKey = 'xxxxxxxxxxxxxxxxxxxxxxx';
$offer_id = 0; // ID оффера
$apiUrl = 'http://api.cpa.tl/api/lead/send';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$data_post = $_POST;
$data = array(
'key' => $apiKey,
'id' => microtime(true),
'offer_id' => $offer_id,
'name' => $data_post['name'],
'phone' => $data_post['phone'],
'country' => $data_post['country'],
'ip_address' => $_SERVER['REMOTE_ADDR'],
);
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data),
)
);
$context = stream_context_create($options);
$result = file_get_contents($apiUrl, false, $context);
$obj = json_decode($result);
if (isset($obj->errmsg)) {
print("Ошибка: " . $obj->errmsg);
} else {
print('ID заявки: ' . $obj->id);
}
}
?>
Python
import time
import requests
API_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxx'
API_URL = 'http://api.cpa.tl/api/lead/send'
offer_id = 0
data = {
'key': API_KEY,
'id': int(round(time.time() * 1000)),
'offer_id': offer_id,
'name': 'tester',
'phone': '8 999 1111122',
'country': 'RU',
'ip_address': '194.58.117.14',
}
r = requests.post(API_URL, data=data)
if r.status_code == 200:
lead_id = r.json().get('id')
print('ID заявки: {}'.format(lead_id))
elif r.status_code == 409:
err_mess = r.json().get('errmsg')
print(err_mess)
API в интеграции с Traffic Light помогает простым HTTP-запросам отправлять и получать данные, что делает сотрудничество с другими системами быстрой и эффективной.
Пишите своему менеджеру в личном кабинете, если вопросы вас не покинули.
А также исследуйте наш FAQ, где вы найдете соответствующий раздел. ❤
