sttp.tapir
Members list
Packages
Type members
Classlikes
Type parameters
- T
-
Type of the value of the attribute.
Value parameters
- typeName
-
The fully qualified name of
T
.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Companion
- class
- Supertypes
- Self type
-
AttributeKey.type
An attribute is arbitrary data that is attached to an endpoint or endpoint input/output. The data is not interpreted by tapir's core in any way, but might be used by interpreters.
An attribute is arbitrary data that is attached to an endpoint or endpoint input/output. The data is not interpreted by tapir's core in any way, but might be used by interpreters.
Typically, you'll add attributes using Endpoint.attribute and EndpointTransput.Atom.attribute. The attribute keys should be defined by the interpreters which are using them, and made available for import.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
AttributeMap.type
A bi-directional mapping between low-level values of type L
and high-level values of type H
. Low level values are formatted as CF
.
A bi-directional mapping between low-level values of type L
and high-level values of type H
. Low level values are formatted as CF
.
The mapping consists of a pair of functions, one to decode (L => H
), and one to encode (H => L
). Decoding can fail, and this is represented as a result of type DecodeResult.
A codec also contains optional meta-data in the schema
of the high-level value (which includes validators), as well as an instance of the format (which determines the media type of the low-level value).
Codec instances are used as implicit values, and are looked up when defining endpoint inputs/outputs. Depending on a particular endpoint input/output, it might require a codec which uses a specific format, or a specific low-level value.
Codec instances can be derived basing on other values (e.g. such as json encoders/decoders when integrating with json libraries). Or, they can be defined by hand for custom types, usually customising an existing, simpler codec.
Codecs can be chained with Mapping s using the map
function.
Type parameters
- CF
-
The format of encoded values. Corresponds to the media type.
- H
-
The type of the high-level value.
- L
-
The type of the low-level value.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Attributes
- Companion
- trait
- Supertypes
-
trait LowPriorityCodectrait CodecMacrostrait FormCodecMacrostrait CodecExtensions2trait CodecExtensionsclass Objecttrait Matchableclass AnyShow all
- Self type
-
Codec.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object Codec.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object Codec.type
Specifies the format of the encoded values. Each variant must be a proper type so that it can be used as a discriminator for different (implicit) instances of Codec values.
Specifies the format of the encoded values. Each variant must be a proper type so that it can be used as a discriminator for different (implicit) instances of Codec values.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class Grpcclass Jsonclass MultipartFormDataclass OctetStreamclass TextEventStreamclass TextHtmlclass TextJavascriptclass TextPlainclass XWwwFormUrlencodedclass Xmlclass ZipShow all
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
CodecFormat.type
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
DecodeResult.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Defaults.type
A description of an endpoint with the given inputs & outputs. The inputs are divided into two parts: security (A
) and regular inputs (I
). There are also two kinds of outputs: error outputs (E
) and regular outputs (O
).
A description of an endpoint with the given inputs & outputs. The inputs are divided into two parts: security (A
) and regular inputs (I
). There are also two kinds of outputs: error outputs (E
) and regular outputs (O
).
In case there are no security inputs, the PublicEndpoint alias can be used, which omits the A
parameter type.
An endpoint can be interpreted as a server, client or documentation. The endpoint requires that server/client interpreters meet the capabilities specified by R
(if any).
When interpreting an endpoint as a server, the inputs are decoded and the security logic is run first, before decoding the body in the regular inputs. This allows short-circuiting further processing in case security checks fail. Server logic can be provided using EndpointServerLogicOps.serverSecurityLogic variants for secure endpoints, and EndpointServerLogicOps.serverLogic variants for public endpoints.
A concise description of an endpoint can be generated using the EndpointMetaOps.show method.
Type parameters
- ERROR_OUTPUT
-
Error output parameter types, abbreviated as
E
. - INPUT
-
Input parameter types, abbreviated as
I
. - OUTPUT
-
Output parameter types, abbreviated as
O
. - R
-
The capabilities that are required by this endpoint's inputs/outputs. This might be
Any
(no requirements), sttp.capabilities.Effect (the interpreter must support the given effect type), sttp.capabilities.Streams (the ability to send and receive streaming bodies) or sttp.capabilities.WebSockets (the ability to handle websocket requests). - SECURITY_INPUT
-
Security input parameter types, abbreviated as
A
.
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait EndpointMetaOpstrait EndpointInfoOps[R]class Objecttrait Matchableclass AnyShow all
- Self type
-
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class PartialServerEndpointWithSecurityOutput[SECURITY_INPUT, PRINCIPAL, INPUT, ERROR_OUTPUT, SECURITY_OUTPUT, OUTPUT, R, F]
Attributes
- Supertypes
- Known subtypes
-
Attributes
- Companion
- object
- Supertypes
-
trait EndpointOutput[T]trait EndpointInput[T]trait EndpointTransput[T]trait EndpointTransputMacros[T]class Objecttrait Matchableclass AnyShow all
- Known subtypes
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
EndpointIO.type
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class PartialServerEndpointWithSecurityOutput[SECURITY_INPUT, PRINCIPAL, INPUT, ERROR_OUTPUT, SECURITY_OUTPUT, OUTPUT, R, F]
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
trait EndpointIO[T]trait Single[I]trait Basic[I]trait Atom[I]class Empty[T]class FixedHeader[T]class Header[T]class Headers[T]trait Single[T]trait Basic[T]trait Atom[T]class Cookie[T]class ExtractFromRequest[T]class FixedMethod[T]class FixedPath[T]class PathCapture[T]class PathsCapture[T]class Query[T]class QueryParams[T]Show all
Attributes
- Companion
- trait
- Supertypes
- Self type
-
EndpointInput.type
Attributes
- Supertypes
- Known subtypes
-
class PartialServerEndpointWithSecurityOutput[SECURITY_INPUT, PRINCIPAL, INPUT, ERROR_OUTPUT, SECURITY_OUTPUT, OUTPUT, R, F]
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class PartialServerEndpointWithSecurityOutput[SECURITY_INPUT, PRINCIPAL, INPUT, ERROR_OUTPUT, SECURITY_OUTPUT, OUTPUT, R, F]
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
trait EndpointIO[T]trait Single[I]trait Basic[I]trait Atom[I]class Empty[T]class FixedHeader[T]class Header[T]class Headers[T]trait Single[T]trait Basic[T]trait Atom[T]class FixedStatusCode[T]class StatusCode[T]class Void[T]Show all
Attributes
- Companion
- trait
- Supertypes
- Self type
-
EndpointOutput.type
Attributes
- Supertypes
- Known subtypes
-
class PartialServerEndpointWithSecurityOutput[SECURITY_INPUT, PRINCIPAL, INPUT, ERROR_OUTPUT, SECURITY_OUTPUT, OUTPUT, R, F]
Attributes
- Supertypes
- Known subtypes
-
A transput is EITHER an input, or an output (see: https://ell.stackexchange.com/questions/21405/hypernym-for-input-and-output). The transput traits contain common functionality, shared by all inputs and outputs.
A transput is EITHER an input, or an output (see: https://ell.stackexchange.com/questions/21405/hypernym-for-input-and-output). The transput traits contain common functionality, shared by all inputs and outputs.
Note that implementations of EndpointIO
can be used both as inputs and outputs.
The hierarchy is as follows:
/---> `EndpointInput` >---\
`EndpointTransput` >--- ---> `EndpointIO`
\---> `EndpointOutput` >---/
Inputs and outputs additionally form another hierarchy:
/--> `Single` >--> `Basic` >--> `Atom`
`EndpointInput` / `EndpointOutput` >--
\--> `Pair`
where the intuition behind the traits is:
single
: represents a single value, as opposed to a pair (tuple); a pair, but transformed using.map
is also a single valuebasic
: corresponds to an input/output which is encoded/decoded in one step; alwayssingle
atom
: corresponds to a single component of a request or response. Such inputs/outputs contain a Codec and Info meta-data, and are alwaysbasic
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
trait EndpointInput[T]trait EndpointIO[T]trait Single[I]trait Basic[I]trait Atom[I]class Empty[T]class FixedHeader[T]class Header[T]class Headers[T]trait Single[T]trait Basic[T]trait Atom[T]class Cookie[T]class ExtractFromRequest[T]class FixedMethod[T]class FixedPath[T]class PathCapture[T]class PathsCapture[T]class Query[T]class QueryParams[T]trait EndpointOutput[T]trait Single[T]trait Basic[T]trait Atom[T]class FixedStatusCode[T]class StatusCode[T]class Void[T]trait Basic[T]trait Atom[T]trait Pair[T]Show all
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
EndpointTransput.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Lower-priority codec implicits, which transform other codecs. For example, when deriving a codec List[T] <-> Either[A, B]
, given codecs ca: T <-> A
and cb: T <-> B
, we want to get listHead(eitherRight(ca, cb))
, not eitherRight(listHead(ca), listHead(cb))
(although they would function the same).
Lower-priority codec implicits, which transform other codecs. For example, when deriving a codec List[T] <-> Either[A, B]
, given codecs ca: T <-> A
and cb: T <-> B
, we want to get listHead(eitherRight(ca, cb))
, not eitherRight(listHead(ca), listHead(cb))
(although they would function the same).
Attributes
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object Schema.type
A bi-directional mapping between values of type L
and values of type H
.
A bi-directional mapping between values of type L
and values of type H
.
Low-level values of type L
can be decoded to a higher-level value of type H
. The decoding can fail; this is represented by a result of type DecodeResult.Failure. Failures might occur due to format errors, wrong arity, exceptions, or validation errors. Validators can be added through the validate
method.
High-level values of type H
can be encoded as a low-level value of type L
.
Mappings can be chained using one of the map
functions.
Type parameters
- H
-
The type of the high-level value.
- L
-
The type of the low-level value.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Information needed to handle a multipart body. Individual parts are decoded as described by rawBodyType, which contains codecs for each part, as well as an optional default codec. The sequence of decoded parts can be further decoded into a high-level T
type using codec.
Information needed to handle a multipart body. Individual parts are decoded as described by rawBodyType, which contains codecs for each part, as well as an optional default codec. The sequence of decoded parts can be further decoded into a high-level T
type using codec.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrortrait MultipartCodecMacrosclass Objecttrait Matchableclass AnyShow all
- Self type
-
MultipartCodec.type
Information needed to read a single part of a multipart body: the raw type (rawBodyType
), and the codec which further decodes it.
Information needed to read a single part of a multipart body: the raw type (rawBodyType
), and the codec which further decodes it.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
The raw format of the body: what do we need to know, to read it and pass to a codec for further decoding.
The raw format of the body: what do we need to know, to read it and pass to a codec for further decoding.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait Binary[R]object ByteArrayBody.typeobject ByteBufferBody.typeobject FileBody.typeobject InputStreamBody.typeobject InputStreamRangeBody.typeclass MultipartBodyclass StringBodyShow all
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
RawBodyType.type
Describes the type T
: its low-level representation, meta-data and validation rules.
Describes the type T
: its low-level representation, meta-data and validation rules.
Value parameters
- format
-
The name of the format of the low-level representation of
T
.
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait SchemaMacros[T]class Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrortrait SchemaCompanionMacrostrait SchemaMagnoliaDerivationtrait LowPrioritySchemaclass Objecttrait Matchableclass AnyShow all
- Self type
-
Schema.type
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrortrait SchemaAnnotationsMacrosclass Objecttrait Matchableclass AnyShow all
- Self type
-
SchemaAnnotations.type
Attributes
- Companion
- trait
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SchemaType.type
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Atom[T]trait Basic[T]trait EndpointTransput[T]trait EndpointTransputMacros[T]class Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait ModifyMacroSupporttrait TapirComputedInputstrait TapirExtensionsclass Objecttrait Matchableclass AnyShow all
Mixin containing aliases for top-level types and modules in the tapir package.
Mixin containing aliases for top-level types and modules in the tapir package.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
TapirAuth.type
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
trait Tapir
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
TapirFile.type
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- trait
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
ValidationResult.type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait Atom[T]trait Basic[T]trait EndpointTransput[T]trait EndpointTransputMacros[T]class Objecttrait Matchableclass AnyShow all
Inherited classlikes
Attributes
- Inherited from:
- Tapir
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Inherited from:
- ModifyMacroFunctorSupport
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Inherited from:
- ModifyMacroSupport
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Inherited from:
- ModifyMacroFunctorSupport
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Inherited from:
- Tapir
- Supertypes
-
class Objecttrait Matchableclass Any
Types
Inherited types
Attributes
- Inherited from:
- TapirExtensions
Value members
Inherited methods
Inputs which describe authentication credentials with metadata.
Usage:
Usage:
binaryBody(RawBodyType.FileBody)[MyType]
, given that a codec between a file and MyType
is available in the implicit scope.
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- TapirComputedInputs
Attributes
- Inherited from:
- Tapir
Requires an implicit Codec.JsonCodec in scope. Such a codec can be created using Codec.json.
Requires an implicit Codec.JsonCodec in scope. Such a codec can be created using Codec.json.
However, json codecs are usually derived from json-library-specific implicits. That's why integrations with various json libraries define jsonBody
methods, which directly require the library-specific implicits.
Unless you have defined a custom json codec, the jsonBody
methods should be used.
Attributes
- Inherited from:
- Tapir
Extract a value from a server request. This input is only used by server interpreters, it is ignored by documentation interpreters and the provided value is discarded by client interpreters.
Extract a value from a server request. This input is only used by server interpreters, it is ignored by documentation interpreters and the provided value is discarded by client interpreters.
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- TapirComputedInputs
Attributes
- Inherited from:
- Tapir
An output which contains a number of variant outputs. Each variant can contain different outputs and represent different content. To describe an output which represents same content, but with different content types, use oneOfBody.
An output which contains a number of variant outputs. Each variant can contain different outputs and represent different content. To describe an output which represents same content, but with different content types, use oneOfBody.
All possible outputs must have a common supertype (T
). Typically, the supertype is a sealed trait, and the variants are implementing case classes.
When encoding to a response, the first matching output is chosen, using the following rules:
- the variant's
appliesTo
method, applied to the output value (as returned by the server logic) must returntrue
. - when a fixed content type is specified by the output, it must match the request's
Accept
header (if present). This implements content negotiation.
When decoding from a response, the first output which decodes successfully is chosen.
The outputs might vary in status codes, headers (e.g. different content types), and body implementations. However, for bodies, only replayable ones can be used, and they need to have the same raw representation (e.g. all byte-array-base, or all file-based).
Note that exhaustiveness of the variants (that all subtypes of T
are covered) is not checked.
Attributes
- Inherited from:
- Tapir
Streaming variant of oneOfBody.
A body input or output, which can be one of the given variants. All variants should represent T
instances using different content types. Hence, the content type is used as a discriminator to choose the appropriate variant.
A body input or output, which can be one of the given variants. All variants should represent T
instances using different content types. Hence, the content type is used as a discriminator to choose the appropriate variant.
Should be used to describe an input or output which represents the same content, but using different content types. For an output which describes variants including possibly different outputs (representing different content), see oneOf.
The server behavior is as follows:
- when encoding to a response, the first variant matching the request's
Accept
header is chosen (if present). Otherwise, the first variant is used. This implements content negotiation. - when decoding a request, the variant corresponding to the request's
Content-Type
header is chosen (if present). Otherwise, a decode failure is returned, which by default results in an415 Unsupported Media Type
response.
The client behavior is as follows:
- when encoding a request, the first variant is used.
- when decoding a response, the variant corresponding to the response's
Content-Type
header is chosen (if present). Otherwise, the first variant is used. For client interpreters to work correctly, all body variants must have the same raw type (e.g. all are string-based or all byte-array-based)
All possible bodies must have the same type T
. Typically, the bodies will vary in the Codecs that are used for the body.
Attributes
- Inherited from:
- Tapir
Create a fallback variant to be used in oneOf output descriptions. Multiple such variants can be specified, with different body content types.
Create a one-of-variant which uses output
if the class of the provided value (when interpreting as a server) matches the runtime class of T
. Adds a fixed status-code output with the given value.
Create a one-of-variant which uses output
if the class of the provided value (when interpreting as a server) matches the runtime class of T
. Adds a fixed status-code output with the given value.
This will fail at compile-time if the type erasure of T
is different from T
, as a runtime check in this situation would give invalid results. In such cases, use oneOfVariantClassMatcher, oneOfVariantValueMatcher or oneOfVariantFromMatchType instead.
Should be used in oneOf output descriptions.
Attributes
- Inherited from:
- Tapir
Create a one-of-variant which uses output
if the class of the provided value (when interpreting as a server) matches the runtime class of T
.
Create a one-of-variant which uses output
if the class of the provided value (when interpreting as a server) matches the runtime class of T
.
This will fail at compile-time if the type erasure of T
is different from T
, as a runtime check in this situation would give invalid results. In such cases, use oneOfVariantClassMatcher, oneOfVariantValueMatcher or oneOfVariantFromMatchType instead.
Should be used in oneOf output descriptions.
Attributes
- Inherited from:
- Tapir
Create a one-of-variant which uses output
i the class of the provided value (when interpreting as a server) matches the given runtimeClass
. Note that this does not take into account type erasure. Adds a fixed status-code output with the given value.
Create a one-of-variant which uses output
i the class of the provided value (when interpreting as a server) matches the given runtimeClass
. Note that this does not take into account type erasure. Adds a fixed status-code output with the given value.
Should be used in oneOf output descriptions.
Attributes
- Inherited from:
- Tapir
Create a one-of-variant which uses output
if the class of the provided value (when interpreting as a server) matches the given runtimeClass
. Note that this does not take into account type erasure.
Create a one-of-variant which uses output
if the provided value exactly matches one of the values provided in the second argument list. Adds a fixed status-code output with the given value.
Create a one-of-variant which output
if the provided value exactly matches one of the values provided in the second argument list.
Create a one-of-variant which uses output
if the provided value matches the target type, as checked by MatchType. Instances of MatchType are automatically derived and recursively check that classes of all fields match, to bypass issues caused by type erasure. Adds a fixed status-code output with the given value.
Create a one-of-variant which uses output
if the provided value matches the target type, as checked by MatchType. Instances of MatchType are automatically derived and recursively check that classes of all fields match, to bypass issues caused by type erasure. Adds a fixed status-code output with the given value.
Should be used in oneOf output descriptions.
Attributes
- Inherited from:
- Tapir
Create a one-of-variant which uses output
if the provided value matches the target type, as checked by MatchType. Instances of MatchType are automatically derived and recursively check that classes of all fields match, to bypass issues caused by type erasure.
Create a one-of-variant which uses output
if the provided value matches the target type, as checked by MatchType. Instances of MatchType are automatically derived and recursively check that classes of all fields match, to bypass issues caused by type erasure.
Should be used in oneOf output descriptions.
Attributes
- Inherited from:
- Tapir
Create a one-of-variant which uses output
if the provided value (when interpreting as a server matches the matcher
predicate). Adds a fixed status-code output with the given value.
Create a one-of-variant which uses output
if the provided value (when interpreting as a server matches the matcher
predicate).
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- TapirExtensions
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
A query parameter in any format, read using the given codec
.
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
An fixed status code output.
An output which maps to the status code in the response.
Creates a stream body with a binary schema.
Creates a stream body with a binary schema.
Value parameters
- format
-
The media type to use by default. Can be later overridden by providing a custom
Content-Type
header. - s
-
A supported streams implementation.
Attributes
- Inherited from:
- Tapir
Creates a stream body with the given schema.
Creates a stream body with the given schema.
Value parameters
- charset
-
An optional charset of the resulting stream's data, to be used in the content type.
- format
-
The media type to use by default. Can be later overridden by providing a custom
Content-Type
header. - s
-
A supported streams implementation.
- schema
-
Schema of the body. This should be a schema for the "deserialized" stream.
Attributes
- Inherited from:
- Tapir
Creates a stream body with a text schema.
Creates a stream body with a text schema.
Value parameters
- charset
-
An optional charset of the resulting stream's data, to be used in the content type.
- format
-
The media type to use by default. Can be later overridden by providing a custom
Content-Type
header. - s
-
A supported streams implementation.
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
A body in any format, read using the given codec
, from a raw string read using charset
.
A body in any format, read using the given codec
, from a raw string read using charset
.
Attributes
- Inherited from:
- Tapir
A body in any format, read using the given codec
, from a raw string read using UTF-8.
A body in any format, read using the given codec
, from a raw string read using UTF-8.
Attributes
- Inherited from:
- Tapir
A body in the JSON format, read from a raw string using charset
.
A body in the JSON format, read from a raw string using UTF-8.
Type parameters
- REQ
-
The type of messages that are sent to the server.
- REQ_CF
-
The codec format (media type) of messages that are sent to the server.
- RESP
-
The type of messages that are received from the server.
- RESP_CF
-
The codec format (media type) of messages that are received from the server.
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Requires an implicit Codec.XmlCodec in scope. Such a codec can be created using Codec.xml.
Requires an implicit Codec.XmlCodec in scope. Such a codec can be created using Codec.xml.
Attributes
- Inherited from:
- Tapir
Deprecated and Inherited methods
A server endpoint, which exposes a single file from local storage found at systemPath
, using the given path
.
A server endpoint, which exposes a single file from local storage found at systemPath
, using the given path
.
fileGetServerEndpoint("static" / "hello.html")("/home/app/static/data.html")
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
A server endpoint, which exposes files from local storage found at systemPath
, using the given prefix
. Typically, the prefix is a path, but it can also contain other inputs. For example:
A server endpoint, which exposes files from local storage found at systemPath
, using the given prefix
. Typically, the prefix is a path, but it can also contain other inputs. For example:
filesGetServerEndpoint("static" / "files")("/home/app/static")
A request to /static/files/css/styles.css
will try to read the /home/app/static/css/styles.css
file.
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
A server endpoint, used to verify if sever supports range requests for file under particular path Additionally it verify file existence and returns its size
A server endpoint, used to verify if sever supports range requests for file under particular path Additionally it verify file existence and returns its size
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
Create a pair of endpoints (head, get) for exposing files from local storage found at systemPath
, using the given prefix
. Typically, the prefix is a path, but it can also contain other inputs. For example:
Create a pair of endpoints (head, get) for exposing files from local storage found at systemPath
, using the given prefix
. Typically, the prefix is a path, but it can also contain other inputs. For example:
filesServerEndpoints("static" / "files")("/home/app/static")
A request to /static/files/css/styles.css
will try to read the /home/app/static/css/styles.css
file.
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
A server endpoint, which exposes a single resource available from the given classLoader
at resourcePath
, using the given path
.
A server endpoint, which exposes a single resource available from the given classLoader
at resourcePath
, using the given path
.
resourceGetServerEndpoint("static" / "hello.html")(classOf[App].getClassLoader, "app/data.html")
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
A server endpoint, which exposes resources available from the given classLoader
, using the given prefix
. Typically, the prefix is a path, but it can also contain other inputs. For example:
A server endpoint, which exposes resources available from the given classLoader
, using the given prefix
. Typically, the prefix is a path, but it can also contain other inputs. For example:
resourcesGetServerEndpoint("static" / "files")(classOf[App].getClassLoader, "app")
A request to /static/files/css/styles.css
will try to read the /app/css/styles.css
resource.
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
Inherited fields
An empty authentication input, to express the fact (for documentation) that authentication is optional, even in the presence of multiple optional authentication inputs (which by default are treated as alternatives).
An empty authentication input, to express the fact (for documentation) that authentication is optional, even in the presence of multiple optional authentication inputs (which by default are treated as alternatives).
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- Tapir
An input which matches if the request URI ends with a trailing slash, otherwise the result is a decode failure on the path. Has no effect when used by documentation or client interpreters.
An input which matches if the request URI ends with a trailing slash, otherwise the result is a decode failure on the path. Has no effect when used by documentation or client interpreters.
Attributes
- Inherited from:
- TapirComputedInputs
Deprecated and Inherited fields
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
Attributes
- Deprecated
-
[Since version 1.3.0]
- Inherited from:
- TapirStaticContentEndpoints
Implicits
Inherited implicits
Attributes
- Inherited from:
- ModifyMacroFunctorSupport
Attributes
- Inherited from:
- ModifyMacroSupport
Attributes
- Inherited from:
- ModifyMacroFunctorSupport
Attributes
- Inherited from:
- Tapir
Attributes
- Inherited from:
- ModifyMacroSupport