org.eclipse.microprofile.openapi.annotations.callbacks

## Annotation Type CallbackOperation

    @Target(value={})
     @Retention(value=RUNTIME)
     @Inherited
    public @interface CallbackOperation

Describes a single API callback operation.

See Also:
  OpenAPI Specification Operation Object

### Optional Element Summary

Optional Elements
`String` `description` A verbose description of the callback operation behavior.
`Extension[]` `extensions` List of extensions to be added to the `Operation` model corresponding to the containing annotation.
`ExternalDocumentation` `externalDocs` Additional external documentation for this callback operation.
`String` `method` The HTTP method for this callback operation.
`Parameter[]` `parameters` An array of parameters applicable for this callback operation, which will be added to any automatically detected parameters in the method itself.
`RequestBody` `requestBody` The request body applicable for this callback operation.
`APIResponse[]` `responses` This is a REQUIRED property of an callback operation instance.
`SecurityRequirement[]` `security` A declaration of which security mechanisms can be used for this callback operation.
`SecurityRequirementsSet[]` `securitySets` A declaration of which security mechanisms can be used for this callback operation.
`String` `summary` Provides a brief description of what this callback operation does.

### Element Detail

#### method

    public abstract String method

The HTTP method for this callback operation.

Returns:
  the HTTP method of this callback operation

Default:
  ""

#### summary

    public abstract String summary

Provides a brief description of what this callback operation does.

Returns:
  a summary of this callback operation

Default:
  ""

#### description

    public abstract String description

A verbose description of the callback operation behavior. CommonMark syntax MAY be used for rich text representation.

Returns:
  a description of this callback operation

Default:
  ""

#### externalDocs

    public abstract ExternalDocumentation externalDocs

Additional external documentation for this callback operation.

Returns:
  external documentation associated with this callback operation instance

Default:
  @org.eclipse.microprofile.openapi.annotations.ExternalDocumentation

#### parameters

    public abstract Parameter[] parameters

An array of parameters applicable for this callback operation, which will be added to any automatically detected parameters in the method itself.

The list MUST NOT include duplicated parameters. A unique parameter is defined by a combination of a name and location.

Returns:
  the list of parameters for this callback operation

Default:
  {}

#### requestBody

    public abstract RequestBody requestBody

The request body applicable for this callback operation.

Returns:
  the request body of this callback operation

Default:
  @org.eclipse.microprofile.openapi.annotations.parameters.RequestBody

#### responses

    public abstract APIResponse[] responses

This is a REQUIRED property of an callback operation instance.

The list of possible responses as they are returned from executing this callback operation.

Returns:
  the list of responses for this callback operation

Default:
  {}

#### security

    public abstract SecurityRequirement[] security

A declaration of which security mechanisms can be used for this callback operation. Only one of the security requirement objects need to be satisfied to authorize a request.

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

This definition overrides any declared top-level security. To remove a top-level security declaration, an empty array can be used.

Returns:
  the list of security mechanisms for this callback operation

Default:
  {}

#### securitySets

    public abstract SecurityRequirementsSet[] securitySets

A declaration of which security mechanisms can be used for this callback operation. All of the security requirements within any one of the sets needs needs to be satisfied to authorize a request.

This definition overrides any declared top-level security. To remove a top-level security declaration, an empty array can be used.

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

Returns:
  the list of security mechanisms for this callback operation

Default:
  {}

#### extensions

    public abstract Extension[] extensions

List of extensions to be added to the `Operation` model corresponding to the containing annotation.

Returns:
  array of extensions
Since:
  3.1

Default:
  {}