Base trait for annotations which may adjust Operation generated for REST HTTP methods.
Base trait for annotation which may adjust Parameter generated for path, query or header parameters of REST RPC methods.
A SchemaAdjuster which can also be applied on a (non-body) parameter to affect its schema.
Base trait for annotations which may adjust PathItem generated for REST HTTP methods.
Base trait for annotations which may adjust PathItem generated for REST HTTP methods. Path item adjusters may also be specified on prefix methods - they will be applied to all path items generated for the result this prefix method.
Convenience implementation of OperationAdjuster for adjusting RequestBody of an operation.
Convenience implementation of OperationAdjuster for adjusting RequestBody of an operation. Request body adjuster is only be applied if Operation has RequestBody defined and it's not a reference.
Base trait for annotations which may adjust Schema derived for various symbols in REST API traits.
Base trait for annotations which may adjust Schema derived for various symbols in REST API traits. Schema adjusters may be applied on:
- Types for which RestStructure is macro materialized and RestSchema derived from it. This includes all types with companion extending RestDataCompanion.
- Fields of case classes for which RestStructure is macro materialized.
- Body parameters of REST methods (parameters tagged with BodyField or Body annotations)
Schema adjusters DO NOT WORK on REST methods themselves and their path/header/query parameters. Instead, use OperationAdjuster and ParameterAdjuster.
Also, be aware that schema adjusters may also be applied on schema references. In such cases, the schema reference
is wrapped into a Schema object with allOf
property containing the original reference. This effectively
allows you to extend the referenced schema but you cannot inspect it in the process.
Convenience implementation of OperationAdjuster for adjusting Response associated with 200 OK
status code (this may be changed by overriding statusCode
method).
Convenience implementation of OperationAdjuster for adjusting Response associated with 200 OK
status code (this may be changed by overriding statusCode
method).
Default response adjuster is only applied if Responses contains a Response defined for
200 OK
and it's not a reference.
Convenience implementation of OperationAdjuster
Convenience implementation of ParameterAdjuster
Convenience implementation of PathItemAdjuster
Convenience implementation of SchemaAdjuster
Annotation which may be applied on HTTP REST method to specify description for that method's RequestBody.
Annotation that specifies description that will be included into generated OpenAPI specification.
Annotation that specifies description that will be included into generated OpenAPI specification. It can be applied on REST methods (OperationAdjuster), path/header/query parameters (ParameterAdjuster), body parameters (SchemaAdjuster), case class fields (SchemaAdjuster) and ADTs for which RestStructure is macro generated (SchemaAdjuster).
Can be applied on REST method parameters, case class parameters and REST types themselves to include
"nullable": true
property into their OpenAPI Schema.
Allows setting custom operationId
for Operation objects generated for REST HTTP methods.
Allows setting custom operationId
for Operation objects generated for REST HTTP methods.
By default, operationId
is set to method's rpcName which in turn
defaults to method's regular name. If method is overloaded, method name may be prepended with lowercased
HTTP method followed by underscore (e.g. "post_")
Prefix methods may be annotated with this annotation to specify prefix that will be prepended to
operationId
of all Operation objects generated for result of that prefix method.
Prefix methods may be annotated with this annotation to specify prefix that will be prepended to
operationId
of all Operation objects generated for result of that prefix method.
By default, this prefix is prefix method's name with underscore,
so this annotation may be used in particular to set empty prefix.
Annotation which may be applied on HTTP REST method to specify description for PathItem associated with that method's path.
Annotation which may be applied on HTTP REST method to specify summary for PathItem associated with that method's path.
Annotation which may be applied on HTTP REST method to specify description for that method's Response
associated with 200 OK
status code.
Like description but changes Schema description instead of Parameter description when applied on a (non-body) parameter.
Like description but changes Schema description instead of Parameter description when applied on a (non-body) parameter. It has no effect when applied on a method.
Annotation which may be applied on HTTP REST method to specify summary for Operation generated for that method.
Adds OpenAPI operation tags to an Operation object.
Sets the title
of a Schema.
Sets the title
of a Schema. It can be applied on standard SchemaAdjuster targets and also
all parameters of REST methods (not just body parameters).
Base trait for annotations which may adjust Operation generated for REST HTTP methods. Operation adjusters may also be specified on prefix methods - they will be applied to all operations generated for the result of this prefix method.