API: Получение данных по CMS и технологиям домена

Узнаём CMS и технологии любого сайта через API.

Перед началом

  1. Зарегистрируйтесь на PR‑CY.
  2. Скопируйте свой API‑ключ в настройках.

Ключ нужно передавать в каждом запросе через заголовок Api-Key.


Как это работает

Всего два шага:

  1. Создаёте задачу — говорите API: «проверь этот домен».
  2. Забираете результат — спрашиваете: «уже готово?» Если да — получаете данные.

Шаг 1. Создать задачу

Отправьте POST‑запрос:

curl 'https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/' \
  -H 'Content-Type: application/vnd.api+json' \
  -H 'Api-Key: ВАШ_КЛЮЧ' \
  --data-raw '{
    "data": {
      "type": "toolTasks",
      "attributes": {
        "toolName": "cmsChecker",
        "params": { "domain": "vc.ru" }
      }
    }
  }'

Замените ВАШ_КЛЮЧ на свой ключ, а vc.ru — на нужный домен.

Ответ (сокращённо):

{
  "data": {
    "type": "toolTasks",
    "id": "4fb6ab11baf8a781812e6a447096b125",
    "attributes": {
      "isUpdating": true,
      "cost": 1
    }
  }
}

Сохраните id из ответа — он понадобится на следующем шаге.

isUpdating: true означает, что проверка ещё идёт.


Шаг 2. Получить результат

Подставьте сохранённый id в GET‑запрос:

curl 'https://apis.pr-cy.ru/api/v2.1.0/tool-tasks/4fb6ab11baf8a781812e6a447096b125?include=tests' \
  -H 'Content-Type: application/vnd.api+json' \
  -H 'Api-Key: ВАШ_КЛЮЧ'

Когда результат готов?

Смотрите поле isUpdating в ответе:

Значение Что это значит
true Проверка ещё идёт — подождите и повторите запрос через пару секунд
false Готово — результаты в ответе

Если isExpired: true — результат устарел, создайте задачу заново (шаг 1).

Где искать данные?

Результаты лежат в массиве included. Каждый элемент — отдельный тест:

  • name — название теста (например, mainPageTechs)
  • status — результат: success, info и т.д.
  • results — сами данные (структура зависит от теста)

Итого: весь процесс в трёх строках

1. POST /tool-tasks/          → создали задачу, получили id
2. GET  /tool-tasks/{id}?include=tests  → повторяем, пока isUpdating не станет false
3. Читаем included[].attributes.results → это и есть результат

Не нашли нужной информации? Напишите нам в тех.поддержку

🍪 Используя сайт, вы соглашаетесь с обработкой cookie и сбором технических данных для улучшения работы сайта согласно политике конфиденциальности.