Вступить в клуб →
средняявопросКонтракты API: OpenAPI, ошибки и маппинг данных

Четыре эндпоинта возвращают ошибки в четырёх разных форматах

Ответы с ошибками одного сервиса:

GET  /orders/1      → 404 {"error": "not found"}
POST /orders        → 400 {"code": 17, "msg": "bad phone"}
POST /payments      → 400 text/plain: Invalid card
POST /refunds       → 200 {"success": false, "reason": "limit"}

Мобильная команда пишет отдельный разбор под каждый эндпоинт и не может показать пользователю, какое именно поле формы заполнено неверно. Что зафиксировать в контракте?

  • Единую модель ошибки, например Problem Details
  • Всегда 200 OK и признак success в теле
  • Текст ошибки, готовый к показу пользователю
  • Коды ошибок только в статье на Confluence

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела