Интерфейс API-функций AlterCPA One позволяет осуществлять проверку визитов напрямую через системы фильтрации. Чтобы подключить API, зайдите на страницу своего профиля в системе. Взаимодействие с сервисом осуществляется по протоколу HTTP. Формат запроса - чистый POST. Формат результата - JSON. Ограничений на количество запросов нет.

Функции фильтрации позволяют вам максимально быстро проверять визиты на ваши сайты. Они вынесены в отдельный интерфейс, который имеет минимальное время ответа и максимальную производительность.

Проверка визита

URL: https://www.altercpa.one/fltr/{user}-{key}-{id}

В адресе функции вместо {id} указывается идентификатор добавленного вами фильтр-сайта. Конкретный URL вы можете получить, нажав на кнопку "Инструкция" соответствующего сайта в вашем личном кабинете.

Чтобы проверить свой визит, вам необходимо отправить POST-запрос на указанный выше URL. В качестве тела запроса передайте поля своего массива $_SERVER - мы проанализируем их и покажем ответ в формате JSON. Успешный ответ включает в себя поля status, type и url. Поле status всегда содержит значение ok. Поле type ответа будет содержать black или white в зависимости от результатов проверки, поле url будет содержать соответствующий URL-адрес. В ошибочном ответе поле status будет содержать error, код ошибки будет указан в поле error.

POST-часть запроса должна быть в формате x-www-form-urlencoded, формат JSON не поддерживается. Мы анализируем следующие поля из массива $_SERVER:

HTTP_USER_AGENT, HTTP_ACCEPT, HTTP_ACCEPT_CHARSET, HTTP_ACCEPT_ENCODING, HTTP_ACCEPT_LANGUAGE, HTTP_AUTHORIZATION, HTTP_CACHE_CONTROL, HTTP_CONNECTION, HTTP_CONTENT_DISPOSITION, HTTP_DATE, HTTP_EXPECT, HTTP_FROM, HTTP_HOST, HTTP_IF_MATCH, HTTP_IF_MODIFIED_SINCE, HTTP_IF_NONE_MATCH, HTTP_IF_RANGE, HTTP_IF_UNMODIFIED_SINCE, HTTP_MAX_FORWARDS, HTTP_PRAGMA, HTTP_PROXY_AUTHORIZATION, HTTP_RANGE, HTTP_REFERER, HTTP_TE, HTTP_TRAILER, HTTP_TRANSFER_ENCODING, HTTP_UPGRADE, HTTP_VIA, HTTP_X_FORWARDED_FOR, REMOTE_ADDR, REMOTE_PORT, REQUEST_METHOD, REQUEST_URI, QUERY_STRING, HTTP_CF_CONNECTING_IP, HTTP_CLIENT_IP, HTTP_X_REAL_IP, HTTP_X_PURPOSE, HTTP_X_FB_HTTP_ENGINE

Результатом выполнения функции является ассоциативный массив:

Поле Описание
status Результат выполнения операции: ok в случае успешного выполнения, error в случае ошибки
type Тип визита по результатам проверки:
  • black - визит легитимный, показать целевой сайт
  • white - визит подозрительный, показать сайт-заглушку
url URL сайта для запроса, зависит от результатов проверки.
target URL целевого сайта, при наличии показывается всегда независимо от результатов проверки.
dummy URL сайта-заглушки, при наличии показывается всегда независимо от результатов проверки.
error Идентификатор ошибки: access-denied при отсутствии доступа к системе проверки, bad-request в случе ошибочного указания адреса URL проверки, bad-site если указанный сайт не найден.

Пример реализации отправки запроса:

$curl = curl_init( 'https://www.altercpa.one/fltr/{user}-{key}-1234' );
curl_setopt( $curl, CURLOPT_POST, true );
curl_setopt( $curl, CURLOPT_POSTFIELDS, $_SERVER );
curl_setopt( $curl, CURLOPT_RETURNTRANSFER, true );
$result = curl_exec( $curl );
curl_close( $curl );
$result = $result ? json_decode( $result, true ) : [];
if ( isset( $result['type'] && $result['type'] == 'black' ) {
    include( 'black-index.php' );
} else include( 'white-index.php' );

Пример успешного ответа сервера:

{
   "status": "ok",
   "type": "black",
   "url": "http://black.site/url"
}

Пример ошибочного ответа сервера:

{ 
   "status": "error", 
   "error": "access-denied" 
}