Нужно ли возвращать ошибку из rest api?
По идее, код 403 Forbidden тут подходит, ведь использование этого метода запрещено пользователю с определенной ролью. Ну и чтобы было понятно в почему ответ 403, можно сделать так:return response()->json(['error' => 'Forbidden for current user role.'], 403);
Ну или 422 Unprocessable Entity можно отправлять, если проверка идет не роли пользователя, который отправляет запрос, а роли пользователя, которому отправляют инвайт. Тогда по сути это ошибка валидации:return response()->json(['error' => 'The required user is a customer.'], 422);
Ошибки бывают 2 видов: серверные и клиентские. Если вы получили серверную (404, 500, etc), отдавайте общее сообщение о том, что "Что-то пошло не так". Если ошибка клиентская (пользователь не найден, у пользователя не те права), отдавайте свои сообщения под каждый случай. Конечный пользователь должен наглядно видеть что он делает не так, а не эти ваши заумности в коде.