15장. OpenAPI를 실행 가능한 인터페이스로 만든다
OpenAPI 3.2.0 specification은 언어 독립 HTTP API description을 정의한다. 그러나 client/tool 호환성 때문에 실제 조직이 지원하는 3.1/3.0을 선택할 수 있다. spec version과 API version은 다르다.
openapi: 3.1.0
paths:
/api/checkouts:
post:
operationId: createCheckout
responses:
'201': { description: Checkout accepted }
'409': { description: Idempotency conflict }
문서 생성보다 request/response schema, error, idempotency, auth, example을 contract test에 사용한다. 외부 $ref와 Markdown HTML을 처리하는 tooling의 security를 검토한다.