Module org.eclipse.microprofile.openapi
Package org.eclipse.microprofile.openapi.annotations.callbacks

# Annotation Type Callback

@Target({METHOD,TYPE}) @Retention(RUNTIME) @Repeatable(Callbacks.class) @Inherited public @interface Callback
This object represents a callback URL that will be invoked.

See Also:
  - OpenAPI Specification Callback Object

## Optional Element Summary

Optional Elements
Modifier and Type
Optional Element
Description
`String`
`callbackUrlExpression`
An absolute URL which defines the destination which will be called with the supplied operation definition.
`Extension[]`
`extensions`
List of extensions to be added to the `Callback` model corresponding to the containing annotation.
`String`
`name`
The friendly name used to refer to this callback.
`CallbackOperation[]`
`operations`
The array of operations that will be called out-of band
`String`
`pathItemRef`
Reference value to a Path Item object, to be referenced by the Callback object.
`String`
`ref`
Reference value to a Callback object.

## Element Details

### name

String name
The friendly name used to refer to this callback. It is a REQUIRED property unless this is only a reference to a callback.

The name is REQUIRED when the callback is defined within `Components`. The name will be used as the key to add this callback to the 'callbacks' map for reuse.

Returns:
  the name of this callback

Default:
  ""

### callbackUrlExpression

String callbackUrlExpression
An absolute URL which defines the destination which will be called with the supplied operation definition.

It is a REQUIRED property unless this is only a reference to a callback instance.

Returns:
  the callback URL

Default:
  ""

### operations

CallbackOperation[] operations
The array of operations that will be called out-of band

Returns:
  the callback operations

Default:
  {}

### ref

String ref
Reference value to a Callback object.

This property provides a reference to an object defined elsewhere. This property and all other properties are mutually exclusive. If other properties are defined in addition to the `ref` property then the result is undefined.

Returns:
  reference to a callback object definition

Default:
  ""

### pathItemRef

String pathItemRef
Reference value to a Path Item object, to be referenced by the Callback object.

This property provides a reference to a Path Item object defined elsewhere. `#callbackUrlExpression()` is REQUIRED when this property is set. The referenced Path Item will be used for the URL expression specified.

Since:
  4.0

Default:
  ""

### extensions

Extension[] extensions
List of extensions to be added to the `Callback` model corresponding to the containing annotation.

Returns:
  array of extensions
Since:
  3.1

Default:
  {}