API
Подтягивайте результаты проверок в свою CRM или панель и запускайте проверки из своих систем. API доступен на тарифе Pro.
Авторизация
- Создайте токен в кабинете: Настройки, блок API.
- Сохраните его в переменную окружения
PDCHECK_TOKEN. - Передавайте его в заголовке
Authorization: Bearer …. Лимит — 120 запросов в минуту на токен.
Список сайтов
GET/api/v1/sites
Сайты аккаунта с итогами последней проверки.
curl "https://pdguard.ru/api/v1/sites" \
-H "Authorization: Bearer $PDCHECK_TOKEN"Ответ
{
"sites": [
{
"id": 12,
"url": "https://example.ru",
"domain": "example.ru",
"monitoring": "daily",
"lastScan": {
"status": "done",
"crit": 2,
"warn": 3,
"ok": 9,
"finishedAt": "2026-09-28T09:12:00.000Z"
}
}
]
}Проверки сайта
GET/api/v1/sites/12/scans?issues=1
Последние 20 проверок сайта. С параметром issues=1 в ответ попадёт список нарушений с инструкциями по исправлению.
curl "https://pdguard.ru/api/v1/sites/12/scans?issues=1" \
-H "Authorization: Bearer $PDCHECK_TOKEN"Ответ
{
"scans": [
{
"id": 481,
"status": "done",
"trigger": "schedule",
"summary": { "crit": 2, "warn": 3, "ok": 9 },
"error": null,
"createdAt": "2026-09-28T09:10:41.000Z",
"finishedAt": "2026-09-28T09:12:00.000Z",
"issues": [
{
"id": "form_prechecked",
"level": "crit",
"title": "Галочка согласия отмечена заранее",
"text": "В форме «Обратный звонок» галочка согласия уже отмечена…",
"fix": { "text": "Снимите отметку по умолчанию…", "steps": ["…"] }
}
]
}
]
}Запустить проверку
POST/api/v1/sites/12/scans
Ставит проверку в очередь и отвечает 202. Если проверка уже идёт, вернётся её id. Запуск расходует суточный лимит ручных проверок тарифа.
curl -X POST "https://pdguard.ru/api/v1/sites/12/scans" \
-H "Authorization: Bearer $PDCHECK_TOKEN"Ответ
{ "id": 482, "queued": true }Ошибки
В теле ответа приходит statusMessage с описанием на русском.
- 401
- Нет токена или он неверный
- 402
- Тариф аккаунта не Pro
- 404
- Сайт не найден в аккаунте
- 429
- Превышен лимит запросов или проверок за сутки