• Какие http коды ошибок возвращать?

    @ikasparov
    Если вы по АПИ запрашиваете что-либо - то 404 это значит то что вы запрашиваете не найдено. Речь про запрашиваемый ресурс, а не скрипт.

    То есть если Вы имеете запрос на продукт GET /products/41
    404 - Продукт с ИД 41 отсутствует
    403 - Отсутствует доступ к ресурсу с ИД 41
    500 - Ошибка сервера (вот тут Ваш скрипт не найден)