Search code examples
openapiapigee

what are mandatory elements in OpenAPI spec


What are the mandatory elements of OpenAPI spec? my assumption is OpenAPI, Info and Path, Is that correct?

Thanks


Solution

  • The minimum required fields in OpenAPI definitions are:

    • OpenAPI version identifier, such as openapi: 3.1.0 or swagger: '2.0'
    • info.title
    • info.version
    • For OpenAPI 3.1:
      • One of: paths, components, webhooks. These sections can be empty, e.g. paths: {}.
    • For OpenAPI 3.0.x and 2.0:
      • paths – can be empty, i.e. paths: {}

    Sample minimal definition:

    openapi: 3.1.0
    info:
      title: My API
      version: 1.0.0
    paths: {}
    

    Technically info.title and info.version can also be empty strings (such as title: ''), although this wouldn't make sense in practice.