Annotation Interface OpenAPIDefinition


@Target({TYPE,PACKAGE}) @Retention(RUNTIME) @Inherited public @interface OpenAPIDefinition
OpenAPI

This is the root document object of the OpenAPI document. It contains required and optional fields.

See Also:
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    Required: Provides metadata about the API.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    An element to hold a set of reusable objects for different aspects of the OpenAPI Specification (OAS).
    List of extensions to be added to the OpenAPI model corresponding to the containing annotation.
    Any additional external documentation for the API
    A declaration of which security mechanisms can be used across the API.
    A declaration of which security mechanisms can be used across the API.
    An array of Server Objects, which provide connectivity information to a target server.
    Tag[]
    A list of tags used by the specification with additional metadata.
  • Element Details

    • info

      Info info
      Required: Provides metadata about the API. The metadata MAY be used by tooling as required.
      Returns:
      the metadata about this API
    • tags

      Tag[] tags
      A list of tags used by the specification with additional metadata. The order of the tags can be used to reflect on their order by the parsing tools.
      Returns:
      the tags used by the specification with any additional metadata
      Default:
      {}
    • servers

      Server[] servers
      An array of Server Objects, which provide connectivity information to a target server. If the servers property is not provided, or is an empty array, the default value would be a Server Object with a url value of /.
      Returns:
      the servers of this API
      Default:
      {}
    • security

      A declaration of which security mechanisms can be used across the API.

      Adding a SecurityRequirement to this array is equivalent to adding a SecurityRequirementsSet containing a single SecurityRequirement to securitySets().

      Returns:
      the array of security requirements for this API
      Default:
      {}
    • securitySets

      SecurityRequirementsSet[] securitySets
      A declaration of which security mechanisms can be used across the API.

      All of the security requirements within any one of the sets must be satisfied to authorize a request.

      Including an empty set within this list indicates that the other requirements are optional.

      Returns:
      the array of security requirement sets for this API
      Default:
      {}
    • externalDocs

      ExternalDocumentation externalDocs
      Any additional external documentation for the API
      Returns:
      the external documentation for this API.
      Default:
      @org.eclipse.microprofile.openapi.annotations.ExternalDocumentation
    • components

      Components components
      An element to hold a set of reusable objects for different aspects of the OpenAPI Specification (OAS). All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.
      Returns:
      the element with a set of reusable objects for different aspects of the OAS.
      Default:
      @org.eclipse.microprofile.openapi.annotations.Components
    • extensions

      Extension[] extensions
      List of extensions to be added to the OpenAPI model corresponding to the containing annotation.
      Returns:
      array of extensions
      Since:
      3.1
      Default:
      {}