API для работы с Айри

Адрес API: https://xn--80aqc2a.xn--p1ai/my/site/api/

Обязательные параметры

key — ваш ключ API, находится на странице Профиль в Личном кабинете.

domain — домен (без www и http), для которого нужно провести действия. Не обязателен при регистрации и пополнении баланса.

action — действие API, возможные варианты: add, delete, disable, enable, flush, flush.html, flush.ha, flush.custom, get.availability, get.balance, get.bots, get.cache, get.domains, get.download, get.errors, get.guard, get.timings, get.visitors, pay, register, set.blacklist, set.options, test.start, test.check.

Пример: https://xn--80aqc2a.xn--p1ai/my/site/api/?key=0011123481faedba00011123481faedb&domain=xn--80aqc2a.xn--p1ai&action=flush

При отсутствии какого-либо обязательного параметра будет выдана ошибка.

Формат ответа

Все ответы выдаются в формате JSON. При какой-либо ошибке ответ будет {"error":"error_code"}, где error_code - мнемонический код ошибки (содержит информацию, что неправильно в запросе). Если запрос прошел успешно, то будет выдано {"success":"OK"} или JSON-массив с данными.

Регистрация в Айри (получение ключа API): action=register

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?action=register&email=my@mail.ru

Необходимо передать единственный обязательный GET-параметр email. Также возможно передать необязательные параметры password (пароль), phone (телефон), firstname (имя пользователя), lastname (фамилия пользователя). В случае отсутствия каких-либо обязательных параметров они будут заменены на значения по умолчанию.

При успешной регистрации пользователя будет получен ответ вида {"success":"d618cfdcabcddaa000cc12cb6958c878"}, где значение success — это ключ API для последующих запросов к Айри под созданным аккаунтом.

Добавление и удаление сайта: action=(add delete)

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?key=0011123481faedba00011123481faedb&domain=xn--80aqc2a.xn--p1ai&action=add

При успешном действии домен будет добавлен в Айри (или удален из Айри) в течение 2 минут.

Установление настроек ускорения и защиты сайта: action=set.options

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?action=set.options&domain=xn--80aqc2a.xn--p1ai&key=0011123481faedba00011123481faedb&clickfrog=1

Все правила ускорения и защиты сайта передаются в виде POST-данных в следующем формате (в квадратных скобках правила, далее со следующей строки пути на сайте для их применения, каждый с новой строки):

[rule1,rule2,rule3]
/section1/page1
/section2/
[rule3,rule4]
/sections3/

В качестве путей на сайте (URL) доступны специальные значения: * — весь сайт и / — только главная страница.

В качестве правил (rule) доступны все значения, задаваемые в правилах ускорения и защиты. В частности:

  • cache_flush — обновление кэша для заданного адреса раз в минуту (работает только для конкретного URL, не для папки или сайта целиком).
  • cache_flush_10 — обновление кэша для заданного адреса раз в 10 минут (работает аналогично предыдущему).
  • cache_flush_60 — обновление кэша для заданного адреса раз в час (работает аналогично предыдущему).
  • cache_flush_120 — обновление кэша для заданного адреса раз в 2 часа (работает аналогично предыдущему).
  • cache_no — отмена кэширования заданного адреса.
  • cache1 — кэширование заданного адреса на минуту.
  • cache2 — кэширование заданного адреса на 2 минуты.
  • cache3 — кэширование заданного адреса на 5 минут.
  • cache4 — кэширование заданного адреса на 10 минут.
  • cache5 — кэширование заданного адреса на 30 минут.
  • cache6 — кэширование заданного адреса на 1 час.
  • cache7 — кэширование заданного адреса на 2 часа.
  • cache8 — кэширование заданного адреса на 5 часов.
  • cache9 — кэширование заданного адреса на 10 часов.
  • cache0 — кэширование заданного адреса на сутки.

Дополнительно в GET-параметрах можно передать значения глобальных настроек сайта. Например:

  • origin — IP-адрес(а) хостинга сайта (с указанием протокола, при необходимости) через запятую. Например, https://127.0.0.1,https://127.0.0.2
  • blacklist — список IP адресов или подсетей для блокировки доступа к сайту, через запятую. Например, 127.0.0.1,192.168.0.*
  • clickfrog — блокировка фрода (при помощи ClickFrog): 0 (отключена) или 1 (включена).

Установление отдельных настроек сайта: action=set.{option}

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?action=set.blacklist&domain=xn--80aqc2a.xn--p1ai&key=0011123481faedba00011123481faedb, POST: 127.0.0.1

Содержимое конкретной настройки передается в виде POST-данных без каких-либо разделителей.

В качестве {option} можно использовать blacklist. Список всех настроек Айри с примерами приведен выше.

Сброс кэша: action=flush.(html ha custom)

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?action=flush&domain=xn--80aqc2a.xn--p1ai&key=0011123481faedba00011123481faedb

Сброс кэша выполняется в течение двух минут на всех узлах Айри после отправки запроса. Возможны варианты сброса кэша:

  • Полный сброс кэша сайта. Включает все страницы, все статические файлы, промежуточные файлы ускорения, кэш высокой доступности и файлы в обновляемом кэше. Активируется запросом action=flush.
  • Сброс только HTML-страниц. Полезно, когда сайт существенно обновляется. Активируется запросом action=flush.html.
  • Сброс кэша высокой доступности. Необходимо при существенном обновлении сайта наряду со сбросом кэша всех страниц. Активируется запросом action=flush.ha.
  • Сброс кэша отдельных страниц. Работает как для страниц, так и для отдельных файлов. Удаляет запрошенные страницы/файлы из всех кэшей Айри. Активируется запросом action=custom. Дополнительно в POST-параметре pages необходимо указать набор страниц (адресов, можно как через http, так и абсолютные от корня сайта), кэш которых нужно сбросить. Несколько страниц нужно указывать через символ перевода строки (\n).

Включение и отключение: action=(enable disable)

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?action=enable&domain=xn--80aqc2a.xn--p1ai&key=0011123481faedba00011123481faedb

Включение или отключение сайта от Айри производится на уровне DNS. При отключении все запросы начинают отправляться напрямую на хостинг, без ускорения и защиты Айри. При включении сайта все запросы начинают проходить через облако Айри.

Получение данных: action=get.(availability balance bots cache domains download errors guard timings visitors)

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?action=get.timings&domain=xn--80aqc2a.xn--p1ai&key=0011123481faedba00011123481faedb

  • Баланс аккаунта (action=get.balance). Текущая сумма на балансе (в рублях). Параметр domain не обязателен.
  • Домены на аккаунте (action=get.domains). Список доменов, добавленных пользователем, включает статус (отрицательный — домен удален, 0 — домен отключен и 1 — домен включен в Айри), домен (без www) и дату добавления в Айри.

Статистика по сайту выдается за предыдущий день (начиная с 6 часов утра по UTC). Виды статистики:

  • Доступность сайта (action=get.availability). Выдает (в процентах) доступность сайта и доступность хостинга.
  • Поисковые роботы (action=get.bots). Включает количество заходов всех популярныъ поисковых роботов: Google, Yandex, Mail.Ru, Sputnik, Yahoo, Bing, Rambler.
  • Кэш сайта (action=get.cache). Выдает размер кэша сайта по всем узлам Айри в Мб.
  • Трафик сайта (action=get.download). Выдает размер трафика сайта по всем узлам Айри в Мб.
  • Ошибки сайта (action=get.errors). Выдает количество 5xx, 4xx ошибок, а также отказов пользователей от загрузки сайта.
  • Отраженные атаки (action=get.guard). Выдает количество заблокированных запросов к сайту.
  • Время загрузки сайта (action=get.timings). Включает время редиректов, время DNS-запроса, время установления соединения, время SSL-подключения, время ожидания ответа от сервера, время загрузки данных, время отрисовки (DOMready) и время полной загрузки (onload).
  • Пользователи из поиска (action=get.visitors). Включает количество открытий страниц сайта пользователями из поисковой выдачи Google, Yandex, Mail.Ru, Sputnik, Yahoo, Bing, Rambler.

Тестирование времени загрузки сайта: action=test.(start check)

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?action=test.start&domain=xn--80aqc2a.xn--p1ai

Для начала тестирования скорости необходимо передать GET-параметр domain и action=test.start. Запрос вернет ID теста скорости, который нужно использовать в action=test.check.

Для получения результатов тестирования используется action=test.check и GET-параметр id, полученный при начале тестирования. Результат либо будет ошибкой (если время загрузки еще не вычислилось), либо содержать данные о времени ответа сервера и времени загрузки сайта из 5 точек — Москвы, Санкт-Петербурга, Екатеринбурга, Владивостока и Амстердама.

Все результаты проверки для каждого домена кэшируются на сутки.

Пополнение баланса: action=pay

lang — язык (валюта) пополнения. Возможные значения: ru (RUB), en (USD).

sum — сумма пополнения в валюте пополнения. Например: 100.

Пример запроса: https://xn--80aqc2a.xn--p1ai/my/site/api/?key=0011123481faedba00011123481faedb&action=pay&sum=100&lang=ru

При успешном действии будет выполнена переадресация на сайт платежного шлюза с заданной суммой к оплате.

Получите больше скорости! Подключите сайт к Айри

Если доступность сайта снизится — мы вернем вам деньги!