Information carried by an HTTP endpoint
Information carried by an HTTP endpoint
Type class defining how to represent the A
information as a JSON request entity
Type class defining how to represent the A
information as a JSON request entity
Type class defining how to represent the A
information as a JSON response entity
Type class defining how to represent the A
information as a JSON response entity
HTTP Method
HTTP Method
An URL path carrying an A
information
An URL path carrying an A
information
Convenient methods for Paths.
A query string carrying an A
information
Provides convenient methods on QueryString.
Provides convenient methods on QueryString.
A single query string parameter carrying an A
information.
A single query string parameter carrying an A
information.
Information carried by a whole request (headers and entity)
Information carried by a whole request (headers and entity)
Information carried by request entity
Information carried by request entity
Information carried by requests’ headers
Information carried by requests’ headers
Information carried by a response
Information carried by a response
Extensions for Response.
An URL path segment carrying an A
information.
An URL path segment carrying an A
information.
HTTP Status Code
HTTP Status Code
An URL carrying an A
information
An URL carrying an A
information
4xx Client Error
4xx Client Error
2xx Success
2xx Success
Chains the two paths
Chains the two paths
Concatenates two QueryString
s
Concatenates two QueryString
s
No particular information.
No particular information. Does not mean that the headers *have to* be empty. Just that, from a server point of view no information will be extracted from them, and from a client point of view no particular headers will be built in the request.
Use description
of endpoints.algebra.Endpoints#endpoint to document empty headers.
Empty request -- request without a body.
Empty request -- request without a body.
Use description
of endpoints.algebra.Endpoints#endpoint to document an empty body.
Empty response.
Empty response.
HTTP endpoint.
HTTP endpoint.
Request
Response
optional summary documentation
optional description documentation
list of OpenApi tags
Defines a RequestEntity[A]
given an implicit JsonRequest[A]
Defines a RequestEntity[A]
given an implicit JsonRequest[A]
Defines a Response[A]
given an implicit JsonResponse[A]
Defines a Response[A]
given an implicit JsonResponse[A]
Make a query string parameter optional:
Make a query string parameter optional:
path / "articles" /? qs[Option[Int]]("page")
Client interpreters must omit optional query string parameters that are empty. Server interpreters must accept incoming requests whose optional query string parameters are missing. Server interpreters must report a failure for incoming requests whose optional query string parameters are present, but malformed.
Builds a QueryString
with one parameter.
Builds a QueryString
with one parameter.
Examples:
qs[Int]("page") // mandatory `page` parameter qs[Option[String]]("lang") // optional `lang` parameter qs[List[Long]]("id") // repeated `id` parameter
Type of the value carried by the parameter
Parameter’s name
The remaining segments of the path.
The remaining segments of the path. The String
value carried by this Path
is still URL-encoded.
Support query string parameters with multiple values:
Support query string parameters with multiple values:
path / "articles" /? qs[List[Long]]("id")
Server interpreters must accept incoming requests where such parameters are missing (in such a case, its value is an empty collection), and report a failure if at least one value is malformed.
Request for given parameters
A path segment carrying an A
information
A path segment carrying an A
information
A path segment whose value is the given segment
A path segment whose value is the given segment
Ability to define String
query string parameters
Ability to define String
query string parameters
Ability to define String
path segments
Servers should return an URL-decoded string value,
and clients should take an URL-decoded string value.
Ability to define String
path segments
Servers should return an URL-decoded string value,
and clients should take an URL-decoded string value.
Request with a String body.
Request with a String body.
Text response.
Text response.
Builds an URL from the given path and query string
Builds an URL from the given path and query string
Turns a Response[A]
into a Response[Option[A]]
.
Turns a Response[A]
into a Response[Option[A]]
.
Concrete interpreters should represent None
with
an empty HTTP response whose status code is 404 (Not Found).
Query string parameter containing a Boolean
value
Query string parameter containing a Boolean
value
Helper method to perform DELETE request
Helper method to perform DELETE request
Payload carried by url
Payload carried by headers
Implicit conversion to get rid of intellij errors when defining paths.
Implicit conversion to get rid of intellij errors when defining paths. Effectively should not be called.
Helper method to perform GET request
Helper method to perform GET request
Payload carried by url
Payload carried by headers
Ability to define Int
query string parameters
Ability to define Int
query string parameters
Ability to define Int
path segments
Ability to define Int
path segments
Query string parameter containing a Long
value
Query string parameter containing a Long
value
Segment containing a Long
value
Segment containing a Long
value
An empty path.
An empty path.
Useful to begin a path definition:
path / "foo" / segment[Int] /? qs[String]("bar")
Helper method to perform POST request
Helper method to perform PUT request
Ability to define UUID
query string parameters
Ability to define UUID
query string parameters
Ability to define UUID
path segments
Ability to define UUID
path segments
Partially applies the endpoints.algebra.JsonEntities algebra interface to fix the
JsonRequest
andJsonResponse
types to beJsonSchema
.