Опишите ресурсы и разрешённые переходы состояния до выбора URL.
Зачем
Зачем это нужно
Согласуйте формат ошибок и поведение повторных запросов.
Проверьте пагинацию, права доступа и совместимость новых полей.
Вопросы
Частые вопросы
Как сформулировать пример контракта?
«Учебная заявка 42 принадлежит пользователю A и находится в статусе new. A отменяет её дважды, B пытается прочитать её, затем A запрашивает список». Попросите для каждого шага метод, статус и тело ответа. Повтор отмены должен иметь заранее согласованный смысл. Нет единственного обязательного формата для всех API: важны последовательность правил и удобство ваших клиентов.
Как проектировать ошибки, полезные клиенту?
Определите машинный код, безопасное сообщение, ошибки полей и идентификатор запроса, если он используется. Отделите неверный ввод, отсутствие разрешения и внутренний сбой. Не включайте в публичный ответ SQL, стек или секретные значения. Попросите пример клиента, который принимает решение по коду, а не по русскому тексту: формулировку сообщения тогда можно менять без поломки интеграции.
Почему пагинацию нужно обсуждать заранее?
При меняющемся списке смещение может давать повтор или пропуск записи между страницами. Курсор тоже требует устойчивой сортировки и правила для одинаковых значений основного поля. Попросите пример из пяти записей, две из которых созданы одновременно, и добавление шестой между запросами. Согласуйте, нужна ли стабильная выборка или показ текущего состояния каталога на каждом обращении.
Достаточно ли сгенерировать OpenAPI-файл?
Нет: валидный файл проверяет структуру описания, но не подтверждает права, идемпотентность и соответствие реализации. Сверьте примеры с договорёнными бизнес-правилами и выполните запросы на стенде. Назовите версию OpenAPI и используемые инструменты, чтобы не смешивать варианты схемы. Полезный результат диалога — контракт с открытыми вопросами и критериями приёмки, а не формальное обещание готового сервиса.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.