# Click API
advanced expert team enterprise
Click API — программный интерфейс для доступа к кампании Keitaro.
# Готовые решения
Официальные клиенты:
Сторонние:
# Использование Click API
Для доступа Click API, необходим API token кампании, который берется из настроек кампании
Точка входа:
/click_api/v3?
Пример запроса:
curl -I "http://domain/click_api/v3?token=q831vzbxkbcnyk23z3jwww4pbhhtpxpm&log=1&info=1"
1
Пример ответа:
{
    "body": null,
    "contentType": "text/html; charset=utf-8",
    "headers": [
        "Location: http://domain.com/?data=&utm-campaign=aff1"
    ],
    "info": {
        "campaign_id": 2,
        "stream_id": 1117,
        "sub_id": "o2q6e42hs08jq",
        "type": "location",
        "url": "http://domain.com/?data=$keyword&utm-campaign=aff1"
    },
    "log": [
        "Processing campaign 2",
        "Referrer: ",
        "Source: ",
        "Keyword: ",
        "IP: 127.0.0.1",
        "UserAgent: HTTPie/0.6.0",
        "Language: ",
        "Is unique in campaign: no",
        "Checking stream #1282",
        "Filter  \"uniqueness\": allow",
        "Filter \"uniqueness\": rejected",
        "Checking stream #1343",
        "Filter \"region\": rejected",
        "Checking stream #1355",
        "Filter  \"limit\": allow",
        "Filter \"ip\": rejected",
        "Checking stream #1117",
        "Accepted by filters",
        "Stream #1117",
        "Send headers: Location: http://domain.com/?data=&utm-campaign=aff1",
        "[Profiler] 0.101 sec.  1 sql queries, 9MB (+7MB)"
    ],
    "uniqueness_cookie": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJkYXRhIjoie1wic3RyZWFtc1wiOntcIjExMTdcIjoxNDkwNzA1MTQyfSxcImNhbXBhaWduc1wiOntcIjJcIjoxNDkwNzA1MTQyfSxcInRpbWVcIjoxNDkwNzA1MTQyfSJ9._u5H9oOOdyp02VTnDN8VG47oLDoqRHHKyYI3ChxRqw8"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# Параметры запроса
- version. Версия Click API (текущая 3).
- ip. IPv4 адрес.
- user_agent. User agent браузера.
- language. Код языка.
- landing_id. ID лендинга. Используется Keitaro для статистики (LP Clicks, LP CTR и т.д.).
- uniqueness_cookie. Содержание кук браузера. Передавайте, если уникальность считается по cookies.
- x_requested_with. Заголовок x_requested_withиз браузера.
- log. Передавайте 1, чтобы вернуть в ответе Traffic Log
- info. Передавайте 1для получения в ответе дополнительного объекта с информацией по клику.
- force_redirect_offer. Передавайте 1для редиректа на оффер. Оставьте пустым, если собираетесь создать Offer URL.
# Описание ответа
Формат ответа: json.
| Атрибут | Тип | Описание | 
|---|---|---|
| headers | string[] | Массив header ответов | 
| status | string | HTTP статус | 
| body | string | Тело ответа (например, текст страницы) | 
| contentType | string | Тип body (например, application/json; charset=utf-8) | 
| uniqueness_cookie | string | Cookie, необходимое для отправки в дальнейших запросах к KClient PHP | 
| log | string[] | Содержимое лога обработки клика (необязательно) | 
| cookies_ttl | int | Срок жизни cookies (в часах) | 
| info | object | Контейнер с дополнительной информацией по клику | 
| info.sub_id | string | Уникальный идентификатор клика | 
| info.campaign_id | int | ID кампании | 
| info.stream_id | int | ID потока | 
| info.landing_id | int | ID лендинга | 
| info.offer_id | int | ID оффера | 
| info.token | string | Offer token для Offer URL | 
| info.uniqueness | object | Массив данных уникальности клика | 
| info.uniqueness.campaign | boolean | Уникальный для кампании | 
| info.uniqueness.stream | boolean | Уникальный для потока | 
| info.uniqueness.global | boolean | Уникальный для трекера | 
| info.is_bot | boolean | Определен как бот | 
# Описание ответов http
HTTP/1.1 200 Ok: запрос выполнен успешно;
HTTP/1.1 401 Unauthorized: указан некорректный API token;
HTTP/1.1 401 Unauthorized: не найдена кампания по API token;
HTTP/1.1 409 Conflict: фича click API отключена.
# FAQ по Click API
Как создать Offer URL?
Пример:
http://trackerdomain.com/?_lp=1&_token={info.token}
{info.token} берется из ответа Click API.
Дополнительно читайте страницу Offer URL.
Как взять subid?
Пример:
$url = "https://domain_tracker/click_api/v3?token=szvkqdf1tk28n9pkwwk3t8tbv4v9&info=1";
$response = json_decode (file_get_contents ($url));
$subid = $response->info->sub_id;
var_dump($subid)
1
2
3
4
2
3
4
