Value used as encoding of Header parameters.
Value used to represent HTTP body.
Enum representing HTTP methods.
Typeclass used during RestMetadata materialization to determine whether a real method is a valid HTTP method.
Typeclass used during RestMetadata materialization to determine whether a real method is a valid HTTP
method. Usually this means that the result must be a type wrapped into something that captures asynchronous
computation, e.g. Future
. Because REST framework core tries to be agnostic about this
asynchronous wrapper (not everyone likes Future
s), there are no default implicits provided for HttpResponseType.
They must be provided externally.
For example, FutureRestImplicits introduces an instance of HttpResponseType for Future[T]
,
for arbitrary type T
. For RestMetadata materialization this means that every method which returns a
Future
is considered a valid HTTP method. FutureRestImplicits is injected into materialization of
RestMetadata through one of the base companion classes, e.g. DefaultRestApiCompanion.
See MacroInstances for more information on injection of implicits.
Value used as encoding of BodyField parameters of non-FormBody methods.
Value used as encoding of Path parameters.
Value used as encoding of Query parameters and BodyField parameters of FormBody methods.
Value used to represent HTTP body. Also used as direct encoding of Body parameters. Types that have encoding to JsonValue automatically have encoding to HttpBody which uses application/json MIME type. There is also a specialized encoding provided for
Unit
which returns empty HTTP body when writing and ignores the body when reading.