Перейти к содержанию

Макросы

Макрос — подстановка вида {name}, которую трекер заменяет значением из клика. Разворачиваются они в URL и в текстах, которые трекер отдаёт сам:

  • URL оффера;
  • URL внешнего лендинга (redirect, proxy);
  • URL redirect-потока и URL, который вернул action-скрипт;
  • тело схем show text и show HTML.

Имена стандартных макросов нечувствительны к регистру. Неизвестный макрос остаётся в тексте как есть — опечатка не превратится в пустую строку молча.

У файлов локального лендинга и у исходящих постбэков наборы свои, более узкие — они в конце страницы.

Идентификаторы

Макрос Значение
{click_id} · {subid} · {clickid} ID клика — то, что партнёрка вернёт в постбэке
{visitor_id} · {visitor_code} ID посетителя (для залипания и уникальности)

География и сеть

{country} · {country_code} (то же значение, ISO-код) · {region} · {city} · {isp} · {ip} · {language} / {lang}

Устройство

{device} / {device_type} · {os} · {os_version} · {browser} · {browser_version} · {ua} / {user_agent}

Источник перехода

{referrer} / {referer} · {keyword} · {search_engine} / {se_referrer}

Сущности трекера

{campaign_id} · {campaign_name} · {flow_id} / {stream_id} · {flow_name} / {stream_name} · {landing_id} · {offer_id} · {source_id} / {traffic_source_id} / {ts_id}

{landing_id} заполнен только там, где лендинг уже выбран — в URL самого лендинга. В URL оффера его ещё нет.

Деньги и флаги

{payout} · {currency} · {is_bot} · {is_unique} · {original_url}

{payout} подставляется десятичным числом без валюты (1.5), {is_bot} и {is_unique} дают 1 или 0. Если кап увёл клик на backup-оффер, {payout}, {currency} и {original_url} в его URL уже от backup'а, а не от исходного оффера.

Распознаются, но всегда пустые

{connection_type}, {offer_name}, {landing_name}, {source_name} / {traffic_source_name} трекер знает, но значения в них не кладёт — в URL уедет пустая строка. {cost} туда же: он всегда 0, стоимость клика видна только в отчётах. Партнёрке отдавайте *_id.

Время и случайность

Макрос Значение
{ts} · {timestamp} Unix-время
{date} дата 2006-01-02
{date:02.01.2006} дата в своём формате — образец записывается датой 2006-01-02 15:04:05
{datetime} 2006-01-02 15:04:05
{time} 15:04:05
{rand} случайная строка, 8 символов
{rand:16} случайная строка нужной длины (до 32)

Sub-параметры

{sub_id_1}{sub_id_30} — всё, что пришло в tracking-ссылке или было разложено по параметрам кампании. Раскладка «свой параметр → sub_id_N» читается только из поля кампании parameters (Кампании); параметры, заполненные на карточке источника трафика, на разбор клика не влияют.

Доступен и любой другой параметр ссылки под своим именем: если клик пришёл с ?utm_source=fb, макрос {utm_source} вернёт fb. Имена, заданные в параметрах кампании, имеют приоритет над одноимёнными параметрами из URL.

Пайпы

К любому макросу можно применить преобразования через |, в том числе цепочкой:

Пайп Что делает
md5 · sha1 хеш значения, hex
upper · lower регистр
urlencode процентное кодирование
substr:начало,длина подстрока (длину можно не указывать)
default:значение подставить, если пусто
prefix:значение · suffix:значение приписать в начало или конец
{sub_id_1|lower|substr:0,10}
{country|default:XX}
https://partner.example.com/?u={click_id|md5}&ref={referrer|urlencode}
  • prefix и suffix к пустому значению ничего не приписывают — параметр остаётся пустым, а не превращается в один префикс;
  • substr режет по байтам, а не по символам: на кириллице длину берите с запасом или ставьте пайп после md5 / urlencode;
  • default срабатывает и для неизвестного макроса: {typo|default:none} вернёт none, а {typo} — сам себя;
  • макросы с двоеточием ({date:…}, {rand:…}) пайпы не принимают: : и | в одном макросе не сочетаются.

Подстановки в файлах локального лендинга

В текстовых файлах локального лендинга (HTML, JS, CSS, JSON) трекер подставляет ровно две вещи — полный набор макросов там не работает:

Макрос Значение
{offer_url} ссылка перехода на выбранный оффер (/p/{click_id})
{click_id} ID клика — для форм, пикселей, собственной аналитики

Подстановка требует известного click_id: он есть, когда страницу отдаёт сам клик, и когда в адресе есть ?_c=. Открытый вручную /lp/{id} без _c оставит макросы нетронутыми. В исполняемый PHP click_id приходит query-параметром ?_c= — читается хелпером minik.php.

Подробнее — Лендинги.

Токены исходящего постбэка

В шаблоне исходящего S2S набор свой, и пайпы там не работают. Значения подставляются уже экранированными для URL.

Токен Значение
{click_id} · {subid} ID клика в трекере
{status} статус конверсии после маппинга: lead / sale / rejected / trash
{payout} · {revenue} сумма конверсии
{currency} валюта конверсии
{txid} ID транзакции из входящего постбэка
{sub_id_1}{sub_id_30} sub-параметры клика. Форма {subid_1} тоже понимается