Разработчикам
Описание и примеры запросов
REST / JSON
OpenAPI 3.0 (JSON)
Все методы работают по HTTPS, используют GET и заголовок Authorization: Bearer API_KEY. Ключ нельзя передавать через URL. Даты в часовом поясе сервера Asia/Almaty (+05:00). Значение all или отсутствие фильтра означает все разрешённые ключу записи.
| Метод | Эндпоинт | Назначение | Разрешение |
| GET | /api/external/projects.php | Проекты с массивом точек | allow_projects |
| GET | /api/external/visits.php | Список визитов с пагинацией | allow_visits |
| GET | /api/external/visit.php?id=123 | Визит, анкета, ответы, комментарии | allow_details |
1. Проекты и точки
Опционально: project_ids=1,2 и location_ids=10,11. В ответе project.id = company.id, location.id = rest.id, а location.restid — бизнес-код ресторана.
2. Список визитов
project_ids=all|1,2, location_ids=all|10,11, date_from=2026-10-01, date_to=2026-10-09, status=all|draft|final, page=1, limit=50 (до 100). Дата — завершения для final, начала для draft. Неудалённые визиты; по умолчанию оба статуса.
3. Один визит по ID
Возвращает блоки анкеты, вопросы и ответы, комментарии, оценку и ссылку на PDF при наличии. URL фото/видео/аудио включаются только при отдельном разрешении «Медиа».
Пример JSON-ответа
{
"success": true,
"items": [{"id": 123, "guest": "Тайный гость #25", "project_id": 1,
"location_id": 10, "location_code": "R10", "status": "final", "score_percent": 92.0}],
"pagination": {"page": 1, "limit": 50, "total": 1, "total_pages": 1}
}
Ошибки: 400 — неверные параметры, 401 — неверный или просроченный ключ, 403 — нет разрешения, 404 — визит недоступен, 429 — лимит 600 запросов/час на ключ. Чужие проекты и точки не возвращаются. ФИО и телефон гостей не передаются.