Коды ошибок
У ошибки в теле есть поле error с коротким названием причины. Ниже — все коды, которые отдаёт мок.
| Код | error | Когда |
|---|---|---|
400 | invalid_body | Тело запроса пустое или не JSON-объект |
400 | unknown_field | В фильтре поле, которого нет в схеме; ответ называет поле |
401 | — | Ресурс приватный, заголовок Authorization не передан или ключ не совпал |
404 | not_found | Проект, ресурс или запись не найдены |
409 | RECORD_LIMIT_REACHED | Достигнут лимит записей тарифа |
429 | QUOTA_EXCEEDED | Исчерпан месячный лимит запросов организации |
500 | — | Включён chaos-режим или сбой на нашей стороне |
Чужое всегда 404, а не 403
Обращение к чужой организации или чужому проекту отвечает 404 — так же, как к несуществующему, и независимо от ваших прав. По коду ответа нельзя отличить «нет доступа» от «не существует», а значит, нельзя перебором составить список чужих проектов.
Приватный доступ
На тарифах Pro и выше проект можно закрыть API-ключом. Тогда запрос без ключа отвечает 401. Принимаются обе формы:
-H "Authorization: Bearer <ключ>"
-H "Authorization: <ключ>"
Ключ показан в настройках проекта. В логи запросов он не попадает: заголовки авторизации вырезаются до записи.
Чего мок не проверяет
Тело запроса не сверяется со схемой: запись с любым набором полей сохранится и ошибки не вызовет. Схема нужна для генерации значений и для проверки имён полей в фильтрах.