Параметры в интеграции

Параметры - это особые произвольные поля, которые можно добавлять к офферам, их целям и вложенным товарам. Они позволяют хранить переменные, которые изменяются от оффера к офферу. Например, идентификаторы оффера или потока на стороне целевой сети.

Настройка параметров в оффере

Управление параметрами осущетвляется в разделе "Офферы" по кнопке "Параметры". В левой части таблицы указывается название параметра. Оно может состоять из маленьких латинских букв, цифр и символа тире. В правой части таблицы указывается значение параметра в произвольном виде.

Использование параметров в полях

Для вставки значения параметра в поле или строку запроса, используйте макрос:

{ofp:xxx}

Где вместо xxx указывается название параметра.

Иногда в оффере требуется задать параметр, который изменяется в зависимости от страны поступления лида. Например, целевая сеть принимает трафик из разных стран по разными идентификаторам потока. Такие параметры называются гео-зависимыми. Для их задания используется макрос:

{ofpg:xxx}

Где вместо xxx указывается название параметра.

При этом в оффере задаётся сразу несколько параметров. Один из них обязательно должен иметь имя, совпадающее с указанным в макросе. Он используется по умолчанию для всех гео. Другие параметры должны называться в формате xxx-zz, где xxx - название базового параметра, zz - ISO-код страны маленькими буквами. Например:

crmuid Основной ID оффера 
crmuid-de ID оффера для Германии
crmuid-fr ID оффера для Франции

Параметрические поля задаются в таком виде:

offer_id {ofp:crmuid}
flow_id {ofpg:crmflow}

Использование параметров в коде

Вы можете напрямую работать с полями из кода предобработки и кода обработки. Основные параметры хранятся в массиве $ofps и могут быть получены так:

$foo = $ofps['crmuid'];

Здесь и далее crmuid - это пример названия параметра.

Альтернативный метод получения параметра - запрос к системному API. Первый вариант используется при отправке лидов, второй - при проверке статуса лидов.

$core->cpa->get( 'ofp', $o['offer_id'], 'crmuid' );
$core->cpa->get( 'ofp', $off, 'crmuid' );

Гео-зависимые параметры доступны только при отправке лидов. Они хранятся в переменной $ofpg и могут быть получены так:

$bar = $ofpg['crmuid'];

Параметры вложенных товаров

При создании товарных интеграций, может потребоваться доступ к параметрам вложенных товаров. В них удобно хранить артикулы товаров в целевой CRM или службе доставки.

Получение массива параметров xxx в виде товар-значение:

$itp = $core->cpa->get( 'vpar', $o['offer_id'], 'xxx' );

Получение массива всех параметров в виде товар-массив:

$itp = $core->cpa->get( 'vpars', $o['offer_id'] );

Для имитации гео-зависимых параметров товаров есть лайфхак. В начале кода предобработки получаем параметры вот так:

$itp = $core->cpa->get( 'vpar', $o['offer_id'], 'xxx' );
$itg = $core->cpa->get( 'vpar', $o['offer_id'], 'xxx-'.$o['order_country'] );

При использовании параметра по ID товара $it используем такой код:

$foo = isset( $itg[$it] ) ? $itg[$it] : $itp[$it];

Параметры целей

При работе с целями, вы можете использовать привязанные к ним параметры. В них могут храниться идентификаторы целевых действий на стороне принимающей CRM. Для вставки значения параметра в поле или строку запроса, используйте макрос:

{goal:xxx}

Где вместо xxx указывается название параметра.

Вы можете напрямую работать с полями из кода предобработки и кода обработки. Основные параметры хранятся в массиве $gpar и могут быть получены так:

$foo = $gpar['crmuid'];

Альтернативный метод получения параметра - запрос к системному API.

$core->goal->param( $o['offer_id'], $o['goal_id'], 'crmuid' );

Параметры сайтов

Вы можете добавить параметры к сайтам оффера. В них могут храниться символьные идентификаторы сайтов на стороне рекламодателя. Если у лида не указан сайт, используется сайт по умолчанию. Для вставки значения параметра в поле или строку запроса, используйте макрос:

{site:xxx}

Где вместо xxx указывается название параметра. Параметры сайтов геозависимые и поддерживают такую же методику работы, как и ofpg оффера.

Вы можете напрямую работать с полями из кода предобработки и кода обработки. Основные параметры хранятся в массиве $spar и могут быть получены так:

$foo = $spar['landing-group'];