Проверь свой REST API на правильность

Чеклист для проверки REST API на корректность. Если все ответы "Да", то у вас правильный REST API.

В Вашем REST API в URL содержится информация о версии?

В Вашем REST API отсутствует состояние (вся информация в URL и нет никаких сессий и локальных стейтов)?

В Вашем REST API выполняется принцип гипер-медиа? Это значит, что получив начальный ответ сервера, клиент может далее следовать по вашему API используя ответы REST.

В Вашем REST API ответ может быть легко закэширован по URL? Нет скрытой информации в HTTP заголовках?

Ваш REST API формирует URL без использования "глаголов" обозначающих действия? Т.е. ваш REST не является RPC?

В Вашем REST API все возвращаемые данные являются самоописываемыми (REST возвращает XML или JSON)?

В Вашем REST API используются следующие методы: POST для создания, PUT для обновления, GET для получения данных, DELETE для удаления, PATCH для частичного обновления?

В Вашем REST API методы PUT, GET, OPTIONS, DELETE, HEAD — идемпотентные.

В Вашем REST API методы POST, PATCH — неидемпотентные?

В Вашем REST API используется HTTP и для технических ошибок возвращаются HTTP коды ответов (коды ответов это - 200, 401, 403 и другие)?

В Вашем REST API разрешено для бизнес-ошибок использовать ошибки внутри тела HTTP с кодом 200?

Поздравляю, вы ответили на все вопросы!