Pepelen
← Системный анализ: API, интеграции и данные

Урок

OpenAPI: читаем и пишем контракт метода

Прочитать описание метода в OpenAPI 3.1 — путь, параметры, тело запроса, ответы с кодами и схемами — и составить такое описание для нового метода «Ромашки».

1 / 8

Контракт, из которого собирают всё остальное

Контракт, из которого собирают всё остальное

OpenAPI — машиночитаемый контракт REST-API в YAML или JSON. Из одного файла получают документацию, заглушки (моки), проверку запросов и клиентский код. Курс пишет по версии 3.1: её схемы — это JSON Schema 2020-12 из прошлого урока. Версия 3.2 (сентябрь 2025) совместима с 3.1 и добавляет новое — достаточно знать, что она есть. Подход contract-first (API first): сначала контракт, его согласуют фронтенд и бэкенд, потом код — и команды работают параллельно. Верхний уровень документа: • openapi — версия спецификации, например 3.1.0; • info — название, описание и версия самого API; • servers — базовые адреса: https://api.romashka.example/v1; • paths — пути ресурсов и их методы; • components — общие схемы (schemas), ответы (responses) и схемы доступа (securitySchemes). На них ссылаются через $ref, а не переписывают в каждом методе. Метод описан внутри своего пути, уровень за уровнем, — шаги ниже. Параметр задают полями name, in (path, query, header или cookie), required и schema. Параметр пути всегда required: true. Чек-лист метода для аналитика: • назначение — summary и operationId; • параметры с типами и обязательностью; • тело запроса (requestBody) со схемой и примером; • все ответы — и успешные, и ошибочные, а не только 200; • формат ошибки; • требования доступа (security).
Путь от корня до схемы ответа
  1. 1
    paths

    раздел со всеми путями API

  2. 2
    путь ресурса

    например /orders/{orderId}

  3. 3
    метод

    get, post, patch…

  4. 4
    responses

    ответы метода

  5. 5
    код ответа

    '200', '404'…

  6. 6
    content

    тело ответа

  7. 7
    медиатип

    application/json или application/problem+json

  8. 8
    schema

    схема тела — чаще всего $ref на components

Конспект урока
Контракт, из которого собирают всё остальное
OpenAPI — машиночитаемый контракт REST-API в YAML или JSON. Из одного файла получают документацию, заглушки (моки), проверку запросов и клиентский код. Курс пишет по версии 3.1: её схемы — это JSON Schema 2020-12 из прошлого урока. Версия 3.2 (сентябрь 2025) совместима с 3.1 и добавляет новое — достаточно знать, что она есть. Подход contract-first (API first): сначала контракт, его согласуют фронтенд и бэкенд, потом код — и команды работают параллельно. Верхний уровень документа: • openapi — версия спецификации, например 3.1.0; • info — название, описание и версия самого API; • servers — базовые адреса: https://api.romashka.example/v1; • paths — пути ресурсов и их методы; • components — общие схемы (schemas), ответы (responses) и схемы доступа (securitySchemes). На них ссылаются через $ref, а не переписывают в каждом методе. Метод описан внутри своего пути, уровень за уровнем, — шаги ниже. Параметр задают полями name, in (path, query, header или cookie), required и schema. Параметр пути всегда required: true. Чек-лист метода для аналитика: • назначение — summary и operationId; • параметры с типами и обязательностью; • тело запроса (requestBody) со схемой и примером; • все ответы — и успешные, и ошибочные, а не только 200; • формат ошибки; • требования доступа (security).