JsonEntitiesFromSchemas

Interpreter for algebra.JsonEntitiesFromSchemas that produces a documentation of the JSON schemas.

Type members

Inherited classlikes

final class CallbackDocs extends Serializable
Value parameters:
entity

Contents of the callback message

method

HTTP method used for the callback

response

Expected response

Inherited from:
EndpointsWithCustomErrors

This object contains the options for how to encode coproduct JSON schemas.

This object contains the options for how to encode coproduct JSON schemas.

The following Scala coproduct is the candidate example. Each encoding option includes the schema that it would generate for that example.

sealed trait Pet
case class Cat(name: String) extends Pet
case class Lizard(lovesRocks: Boolean) extends Pet
Inherited from:
JsonSchemas
sealed trait CoproductEncoding
Inherited from:
JsonSchemas
case object Delete extends Method
Inherited from:
Methods
case class DocumentedEndpoint(request: DocumentedRequest, response: List[DocumentedResponse], securityRequirements: Seq[SecurityRequirement], docs: EndpointDocs)
case class DocumentedHeader(name: String, description: Option[String], required: Boolean, schema: Schema)
Inherited from:
Headers
Value parameters:
value

List of request header names (e.g. “Authorization”)

Inherited from:
Headers
Inherited from:
JsonSchemas
Inherited from:
JsonSchemas
case class DocumentedParameter(name: String, required: Boolean, description: Option[String], schema: Schema)
Value parameters:
name

Name of the parameter

required

Whether this parameter is required or not (MUST be true for path parameters)

Inherited from:
Urls
Value parameters:
parameters

List of query string parameters

Inherited from:
Urls
case class DocumentedQueryStringParam[A](schema: Schema, isRequired: Boolean, encoder: Encoder[A, Option[Value]])

A query string parameter documentation description for type A

A query string parameter documentation description for type A

Value parameters:
encoder

JSON encoder for query string parameter value, primarily used for encoding of the parameter's default value. Result of the encoding is optional since the empty value of optional query string parameter should result in the empty encoded value.

isRequired

Whether the query string parameter is required

schema

Schema that corresponds to type A

Inherited from:
Urls
case class DocumentedRequest(method: Method, url: DocumentedUrl, headers: DocumentedHeaders, documentation: Documentation, entity: Map[String, MediaType])
Inherited from:
Requests
case class DocumentedResponse(status: StatusCode, documentation: String, headers: DocumentedHeaders, content: Map[String, MediaType])
Value parameters:
content

Map that associates each possible content-type (e.g. “text/html”) with a MediaType description

documentation

Human readable documentation. Not optional because its required by openapi

headers

Response headers documentation

status

Response status code (e.g. OK or NotFound)

Inherited from:
Responses
Value parameters:
path

List of path segments. Left is a static segment, right is a path parameter

queryParameters

Query string parameters

Inherited from:
Urls
final class EndpointDocs extends Serializable
Value parameters:
callbacks

Callbacks indexed by event name

deprecated

Indicates whether this endpoint is deprecated or not

description

Detailed description

operationId

A unique identifier which identifies this operation

summary

Short description

tags

OpenAPI tags

Inherited from:
EndpointsWithCustomErrors
final implicit class EndpointSyntax[A, B](endpoint: Endpoint[A, B])

Extension methods for Endpoint.

Extension methods for Endpoint.

Inherited from:
EndpointsWithCustomErrors
class Enum[A](val ujsonSchema: JsonSchema[A], val docs: DocumentedEnum) extends JsonSchema[A]
Inherited from:
JsonSchemas
final implicit class EnumOps[A](enumA: Enum[A]) extends JsonSchemaDocumentationOps[A]
Inherited from:
JsonSchemas
case object Get extends Method
Inherited from:
Methods
implicit class InvariantFunctorSyntax[A, F[_]](val fa: F[A])(implicit ev: InvariantFunctor[F])

Extension methods for values of type F[A] for which there is an implicit InvariantFunctor[F] instance.

Extension methods for values of type F[A] for which there is an implicit InvariantFunctor[F] instance.

Inherited from:
InvariantFunctorSyntax
class JsonSchema[A](val ujsonSchema: JsonSchema[A], val docs: DocumentedJsonSchema)
Inherited from:
JsonSchemas

Documentation related methods for annotating schemas. Encoder and decoder interpreters ignore this information.

Documentation related methods for annotating schemas. Encoder and decoder interpreters ignore this information.

Inherited from:
JsonSchemas
final implicit class JsonSchemaOps[A](schemaA: JsonSchema[A]) extends JsonSchemaDocumentationOps[A]

Implicit methods for values of type JsonSchema

Implicit methods for values of type JsonSchema

Inherited from:
JsonSchemas
sealed trait Method
Inherited from:
Methods
case object Options extends Method
Inherited from:
Methods
implicit class PartialInvariantFunctorSyntax[A, F[_]](val fa: F[A])(implicit ev: PartialInvariantFunctor[F])
case object Patch extends Method
Inherited from:
Methods
implicit class PathOps[A](first: Path[A])

Convenient methods for Paths.

Convenient methods for Paths.

Inherited from:
Urls
case object Post extends Method
Inherited from:
Methods
case object Put extends Method
Inherited from:
Methods
implicit class QueryStringSyntax[A](first: QueryString[A])

Extension methods on QueryString.

Extension methods on QueryString.

Inherited from:
Urls
class Record[A](val ujsonSchema: Record[A], val docs: DocumentedRecord) extends JsonSchema[A]
Inherited from:
JsonSchemas
final implicit class RecordOps[A](recordA: Record[A]) extends JsonSchemaDocumentationOps[A]

Implicit methods for values of type Record

Implicit methods for values of type Record

Inherited from:
JsonSchemas
implicit class RequestEntitySyntax[A](requestEntity: RequestEntity[A])
Inherited from:
Requests
final implicit class RequestSyntax[A](request: Request[A])

Extension methods for Request.

Extension methods for Request.

Inherited from:
Requests
implicit class ResponseSyntax[A](response: Response[A])

Extension methods for Response.

Extension methods for Response.

Inherited from:
Responses
implicit class SemigroupalSyntax[A, F[_]](val f: F[A])(implicit ev: Semigroupal[F])
Inherited from:
SemigroupalSyntax
class Tagged[A](val ujsonSchema: Tagged[A], val docs: DocumentedCoProd) extends JsonSchema[A]
Inherited from:
JsonSchemas
final implicit class TaggedOps[A](taggedA: Tagged[A]) extends JsonSchemaDocumentationOps[A]
Inherited from:
JsonSchemas

Inherited types

Callbacks indexed by URL pattern

Callbacks indexed by URL pattern

See also:
Inherited from:
EndpointsWithCustomErrors

Errors in a request built by a client

Errors in a request built by a client

Inherited from:
Errors
Inherited from:
JsonCodecs
Inherited from:
JsonCodecs
Inherited from:
Urls
Inherited from:
Urls
Inherited from:
Requests
Inherited from:
Requests
Inherited from:
Requests
Inherited from:
Responses
Inherited from:
Responses
type Segment[A] = Schema
Inherited from:
Urls

Error raised by the business logic of a server

Error raised by the business logic of a server

Inherited from:
Errors
Inherited from:
StatusCodes
type Url[A] = DocumentedUrl
Inherited from:
Urls
type WithDefault[A] = A
Inherited from:
Urls

Value members

Concrete methods

def jsonRequest[A](implicit codec: JsonSchema[A]): RequestEntity[A]
def jsonResponse[A](implicit codec: JsonSchema[A]): ResponseEntity[A]

Inherited methods

Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Inherited from:
StatusCodes
override def Conflict: StatusCode
Definition Classes
Inherited from:
StatusCodes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Inherited from:
StatusCodes
override def Gone: StatusCode
Definition Classes
Inherited from:
StatusCodes
override def IMUsed: StatusCode
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
override def Locked: StatusCode
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
override def MultiStatus: StatusCode
Definition Classes
Inherited from:
StatusCodes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Inherited from:
StatusCodes
override def NotModified: StatusCode
Definition Classes
Inherited from:
StatusCodes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
override def ResetContent: StatusCode
Definition Classes
Inherited from:
StatusCodes
override def TooEarly: StatusCode
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
Definition Classes
Inherited from:
StatusCodes
override def UriTooLong: StatusCode
Definition Classes
Inherited from:
StatusCodes
override def addRequestHeaders[A, H](request: Request[A], headers: RequestHeaders[H])(implicit tupler: Tupler[A, H]): Request[Out]
Definition Classes
Inherited from:
Requests
override def addRequestQueryString[A, Q](request: Request[A], qs: QueryString[Q])(implicit tupler: Tupler[A, Q]): Request[Out]
Definition Classes
Inherited from:
Requests
override def addResponseHeaders[A, H](response: Response[A], headers: ResponseHeaders[H])(implicit tupler: Tupler[A, H]): Response[Out]
Definition Classes
Inherited from:
Responses
def arrayJsonSchema[C <: (Iterable), A](implicit jsonSchema: JsonSchema[A], factory: Factory[A, C[A]]): JsonSchema[C[A]]
Inherited from:
JsonSchemas
final def badRequest[A, R](docs: Documentation, headers: ResponseHeaders[A])(implicit tupler: Aux[ClientErrors, A, R]): Response[R]

Bad Request (400) response, with an entity of type ClientErrors.

Bad Request (400) response, with an entity of type ClientErrors.

See also:
Inherited from:
Responses
Definition Classes
Inherited from:
Urls
def chainPaths[A, B](first: Path[A], second: Path[B])(implicit tupler: Tupler[A, B]): Path[Out]
Inherited from:
Urls
def choiceRequestEntity[A, B](requestEntityA: Map[String, MediaType], requestEntityB: Map[String, MediaType]): Map[String, MediaType]
Inherited from:
Requests
def choiceResponse[A, B](responseA: Response[A], responseB: Response[B]): Response[Either[A, B]]
Inherited from:
Responses
def choiceTagged[A, B](taggedA: Tagged[A], taggedB: Tagged[B]): Tagged[Either[A, B]]
Inherited from:
JsonSchemas

Format of the response entity carrying the client errors.

Format of the response entity carrying the client errors.

Inherited from:
Errors

Convert the ClientErrors type into the endpoints4s internal client error type

Convert the ClientErrors type into the endpoints4s internal client error type

Inherited from:
Errors
def combineQueryStrings[A, B](first: QueryString[A], second: QueryString[B])(implicit tupler: Tupler[A, B]): QueryString[Out]
Inherited from:
Urls

Override this method to customize the strategy used to encode the JSON schema of coproducts. By default, it uses CoproductEncoding.OneOf.

Override this method to customize the strategy used to encode the JSON schema of coproducts. By default, it uses CoproductEncoding.OneOf.

See also:
Inherited from:
JsonSchemas

Default discriminator field name for sum types.

Default discriminator field name for sum types.

It defaults to "type", but you can override it twofold:

  • by overriding this field you can change default discriminator name algebra-wide
  • by using withDiscriminator you can specify discriminator field name for specific sum type
Inherited from:
JsonSchemas
final def delete[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUH: Aux[UrlP, HeadersP, Out]): Request[Out]

Helper method to perform DELETE request

Helper method to perform DELETE request

Type parameters:
HeadersP

Payload carried by headers

UrlP

Payload carried by url

Inherited from:
Requests
Definition Classes
Inherited from:
Urls
Definition Classes
Inherited from:
Urls
Definition Classes
Inherited from:
JsonSchemas
Inherited from:
JsonSchemas
def endpoint[A, B](request: Request[A], response: Response[B], docs: EndpointDocs): Endpoint[A, B]
def enumeration[A](values: Seq[A])(tpe: JsonSchema[A]): Enum[A]
Inherited from:
JsonSchemas
def field[A](name: String, docs: Documentation)(implicit tpe: JsonSchema[A]): Record[A]
Inherited from:
JsonSchemas
Definition Classes
Inherited from:
JsonSchemas
final def get[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUH: Aux[UrlP, HeadersP, Out]): Request[Out]

Helper method to perform GET request

Helper method to perform GET request

Type parameters:
HeadersP

Payload carried by headers

UrlP

Payload carried by url

Inherited from:
Requests
final def intEnumeration[A](values: Seq[A])(encode: A => Int)(implicit tpe: JsonSchema[Int]): Enum[A]

Convenient constructor for enumerations represented by int values.

Convenient constructor for enumerations represented by int values.

Inherited from:
JsonSchemas
Definition Classes
Inherited from:
Urls
override def intSegment: Segment[Int]
Definition Classes
Inherited from:
Urls
Definition Classes
Inherited from:
JsonSchemas
final def internalServerError[A, R](docs: Documentation, headers: ResponseHeaders[A])(implicit tupler: Aux[ServerError, A, R]): Response[R]

Internal Server Error (500) response, with an entity of type ServerError.

Internal Server Error (500) response, with an entity of type ServerError.

See also:
Inherited from:
Responses

Convert the endpoints4s internal client error type into the ClientErrors type

Convert the endpoints4s internal client error type into the ClientErrors type

Inherited from:
Errors
override def lazyRecord[A](name: String)(schema: => Record[A]): Record[A]
Definition Classes
Inherited from:
JsonSchemas
def lazyRecord[A](schema: => Record[A], name: String): JsonSchema[A]
Inherited from:
JsonSchemas
override def lazySchema[A](name: String)(schema: => JsonSchema[A]): JsonSchema[A]
Definition Classes
Inherited from:
JsonSchemas
override def lazyTagged[A](name: String)(schema: => Tagged[A]): Tagged[A]
Definition Classes
Inherited from:
JsonSchemas
def lazyTagged[A](schema: => Tagged[A], name: String): JsonSchema[A]
Inherited from:
JsonSchemas
final def literal[A](value: A)(implicit tpe: JsonSchema[A]): JsonSchema[Unit]

A schema for a statically known value.

A schema for a statically known value.

  • Decoder interpreters first try to decode incoming values with the given tpe schema, and then check that it is equal to the given value,
  • Encoder interpreters always produce the given value, encoded according to tpe,
  • Documentation interpreters enrich the JSON schema with a const property documenting its only possible value (or an enum property with a single item).

This is useful to model schemas of objects containing extra fields that are absent from their Scala representation. For example, here is a schema for a GeoJSON point:

 case class Point(lon: Double, lat: Double)
 val pointSchema = (
   field("type")(literal("Point")) zip
   field[(Double, Double)]("coordinates")
 ).xmap(Point.tupled)(p => (p.lon, p.lat))
Inherited from:
JsonSchemas
Definition Classes
Inherited from:
Urls
override def longSegment: Segment[Long]
Definition Classes
Inherited from:
Urls
Definition Classes
Inherited from:
JsonSchemas
override def mapEndpointDocs[A, B](currentEndpoint: Endpoint[A, B], func: EndpointDocs => EndpointDocs): Endpoint[A, B]
override def mapEndpointRequest[A, B, C](currentEndpoint: Endpoint[A, B], func: Request[A] => Request[C]): Endpoint[C, B]
override def mapEndpointResponse[A, B, C](currentEndpoint: Endpoint[A, B], func: Response[B] => Response[C]): Endpoint[A, C]
def mapJsonSchema[A](implicit jsonSchema: JsonSchema[A]): JsonSchema[Map[String, A]]
Inherited from:
JsonSchemas
def namedEnum[A](schema: Enum[A], name: String): Enum[A]
Inherited from:
JsonSchemas
def namedRecord[A](schema: Record[A], name: String): Record[A]
Inherited from:
JsonSchemas
def namedTagged[A](schema: Tagged[A], name: String): Tagged[A]
Inherited from:
JsonSchemas
final def ok[A, B, R](entity: ResponseEntity[A], docs: Documentation, headers: ResponseHeaders[B])(implicit tupler: Aux[A, B, R]): Response[R]

OK (200) Response with the given entity

OK (200) Response with the given entity

Inherited from:
Responses
def openApi(info: Info)(endpoints: DocumentedEndpoint*): OpenApi
Value parameters:
endpoints

The endpoints to generate the documentation for

info

General information about the documentation to generate

Returns:

An OpenApi instance for the given endpoint descriptions

Inherited from:
EndpointsWithCustomErrors
def optField[A](name: String, docs: Documentation)(implicit tpe: JsonSchema[A]): Record[Option[A]]
Inherited from:
JsonSchemas
override def optFieldWithDefault[A](name: String, defaultValue: A, docs: Option[String])(implicit tpe: JsonSchema[A]): Record[A]
Definition Classes
Inherited from:
JsonSchemas
override def optQsWithDefault[A](name: String, default: A, docs: Documentation)(implicit value: DocumentedQueryStringParam[A]): QueryString[WithDefault[A]]
Definition Classes
Inherited from:
Urls
def orElseMergeTagged[A : ClassTag, C >: A, B <: C : ClassTag](taggedA: Tagged[A], taggedB: Tagged[B]): Tagged[C]

The JSON schema of a coproduct that share the same parent type and thus can be widened to that parent type

The JSON schema of a coproduct that share the same parent type and thus can be widened to that parent type

Inherited from:
JsonSchemas
def orFallbackToJsonSchema[A, B](schemaA: JsonSchema[A], schemaB: JsonSchema[B]): JsonSchema[Either[A, B]]
Inherited from:
JsonSchemas
final def patch[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUB: Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

Helper method to perform PATCH request

Helper method to perform PATCH request

Type parameters:
BodyP

Payload carried by body

HeadersP

Payload carried by headers

UrlAndBodyPTupled

Payloads of Url and Body tupled together by Tupler

UrlP

Payload carried by url

Value parameters:
docs

Request documentation

Inherited from:
Requests
final def post[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUB: Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

Helper method to perform POST request

Helper method to perform POST request

Type parameters:
BodyP

Payload carried by body

HeadersP

Payload carried by headers

UrlAndBodyPTupled

Payloads of Url and Body tupled together by Tupler

UrlP

Payload carried by url

Value parameters:
docs

Request documentation

Inherited from:
Requests
final def put[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUB: Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

Helper method to perform PUT request

Helper method to perform PUT request

Type parameters:
BodyP

Payload carried by body

HeadersP

Payload carried by headers

UrlAndBodyPTupled

Payloads of Url and Body tupled together by Tupler

UrlP

Payload carried by url

Inherited from:
Requests
def qs[A](name: String, docs: Documentation)(implicit value: DocumentedQueryStringParam[A]): QueryString[A]
Inherited from:
Urls
Inherited from:
Urls
def request[A, B, C, AB, Out](method: Method, url: Url[A], entity: RequestEntity[B], docs: Documentation, headers: RequestHeaders[C])(implicit tuplerAB: Aux[A, B, AB], tuplerABC: Aux[AB, C, Out]): Request[Out]
Inherited from:
Requests
def response[A, B, R](statusCode: StatusCode, entity: ResponseEntity[A], docs: Documentation, headers: ResponseHeaders[B])(implicit tupler: Aux[A, B, R]): Response[R]
Inherited from:
Responses
def segment[A](name: String, docs: Documentation)(implicit A: Segment[A]): Path[A]
Inherited from:
Urls

Format of the response entity carrying the server error.

Format of the response entity carrying the server error.

Inherited from:
Errors

Convert the ServerError type into the endpoints4s internal server error type

Convert the ServerError type into the endpoints4s internal server error type

Inherited from:
Errors
Inherited from:
Urls
final def stringEnumeration[A](values: Seq[A])(encode: A => String)(implicit tpe: JsonSchema[String]): Enum[A]

Convenient constructor for enumerations represented by string values.

Convenient constructor for enumerations represented by string values.

Inherited from:
JsonSchemas
Inherited from:
Urls
def taggedRecord[A](recordA: Record[A], tag: String): Tagged[A]
Inherited from:
JsonSchemas

Convert the endpoints4s internal server error type into the ServerError type

Convert the endpoints4s internal server error type into the ServerError type

Inherited from:
Errors

Convert the internal representation of a JSON schema into the public OpenAPI AST

Convert the internal representation of a JSON schema into the public OpenAPI AST

Inherited from:
JsonSchemas
def urlWithQueryString[A, B](path: Path[A], qs: QueryString[B])(implicit tupler: Tupler[A, B]): Url[Out]
Inherited from:
Urls
Definition Classes
Inherited from:
Urls
override def uuidSegment: Segment[UUID]
Definition Classes
Inherited from:
Urls
final def wheneverFound[A](responseA: Response[A], notFoundDocs: Documentation): Response[Option[A]]

Turns a Response[A] into a Response[Option[A]].

Turns a Response[A] into a Response[Option[A]].

Interpreters represent None with an empty HTTP response whose status code is 404 (Not Found).

Inherited from:
Responses
def withDescriptionEnum[A](enumeration: Enum[A], description: String): Enum[A]
Inherited from:
JsonSchemas
def withDescriptionJsonSchema[A](schema: JsonSchema[A], description: String): JsonSchema[A]
Inherited from:
JsonSchemas
def withDescriptionRecord[A](record: Record[A], description: String): Record[A]
Inherited from:
JsonSchemas
def withDescriptionTagged[A](tagged: Tagged[A], description: String): Tagged[A]
Inherited from:
JsonSchemas
def withDiscriminatorTagged[A](tagged: Tagged[A], discriminatorName: String): Tagged[A]
Inherited from:
JsonSchemas
def withExampleEnum[A](enumeration: Enum[A], example: A): Enum[A]
Inherited from:
JsonSchemas
def withExampleJsonSchema[A](schema: JsonSchema[A], example: A): JsonSchema[A]
Inherited from:
JsonSchemas
def withExampleRecord[A](record: Record[A], example: A): Record[A]
Inherited from:
JsonSchemas
def withExampleTagged[A](tagged: Tagged[A], example: A): Tagged[A]
Inherited from:
JsonSchemas
def withTitleEnum[A](enumeration: Enum[A], title: String): Enum[A]
Inherited from:
JsonSchemas
def withTitleJsonSchema[A](schema: JsonSchema[A], title: String): JsonSchema[A]
Inherited from:
JsonSchemas
def withTitleRecord[A](record: Record[A], title: String): Record[A]
Inherited from:
JsonSchemas
def withTitleTagged[A](tagged: Tagged[A], title: String): Tagged[A]
Inherited from:
JsonSchemas
def zipRecords[A, B](recordA: Record[A], recordB: Record[B])(implicit t: Tupler[A, B]): Record[Out]
Inherited from:
JsonSchemas

Inherited fields

Inherited from:
JsonSchemas

Response used by endpoints4s when decoding a request fails.

Response used by endpoints4s when decoding a request fails.

The provided implementation forwards to badRequest.

Inherited from:
Errors
Inherited from:
Requests
val path: Path[Unit]

An empty path.

An empty path.

Useful to begin a path definition:

 path / "foo" / segment[Int] /? qs[String]("bar")
Inherited from:
Urls

Response used by endpoints4s when the business logic of an endpoint fails.

Response used by endpoints4s when the business logic of an endpoint fails.

The provided implementation forwards to internalServerError

Inherited from:
Errors
Inherited from:
Requests
final lazy val ujsonSchemas: JsonSchemas

The JSON codecs used to produce some parts of the documentation.

The JSON codecs used to produce some parts of the documentation.

Inherited from:
JsonSchemas

Implicits

Inherited implicits

final implicit def EndpointSyntax[A, B](endpoint: Endpoint[A, B]): EndpointSyntax[A, B]

Extension methods for Endpoint.

Extension methods for Endpoint.

Inherited from:
EndpointsWithCustomErrors
final implicit def EnumOps[A](enumA: Enum[A]): EnumOps[A]
Inherited from:
JsonSchemas
final implicit def InvariantFunctorSyntax[A, F[_]](fa: F[A])(implicit ev: InvariantFunctor[F]): InvariantFunctorSyntax[A, F]

Extension methods for values of type F[A] for which there is an implicit InvariantFunctor[F] instance.

Extension methods for values of type F[A] for which there is an implicit InvariantFunctor[F] instance.

Inherited from:
InvariantFunctorSyntax
final implicit def JsonSchemaOps[A](schemaA: JsonSchema[A]): JsonSchemaOps[A]

Implicit methods for values of type JsonSchema

Implicit methods for values of type JsonSchema

Inherited from:
JsonSchemas
final implicit def PartialInvariantFunctorSyntax[A, F[_]](fa: F[A])(implicit ev: PartialInvariantFunctor[F]): PartialInvariantFunctorSyntax[A, F]
final implicit def PathOps[A](first: Path[A]): PathOps[A]

Convenient methods for Paths.

Convenient methods for Paths.

Inherited from:
Urls
final implicit def QueryStringSyntax[A](first: QueryString[A]): QueryStringSyntax[A]

Extension methods on QueryString.

Extension methods on QueryString.

Inherited from:
Urls
final implicit def RecordOps[A](recordA: Record[A]): RecordOps[A]

Implicit methods for values of type Record

Implicit methods for values of type Record

Inherited from:
JsonSchemas
final implicit def RequestEntitySyntax[A](requestEntity: RequestEntity[A]): RequestEntitySyntax[A]
Inherited from:
Requests
final implicit def RequestSyntax[A](request: Request[A]): RequestSyntax[A]

Extension methods for Request.

Extension methods for Request.

Inherited from:
Requests
final implicit def ResponseSyntax[A](response: Response[A]): ResponseSyntax[A]

Extension methods for Response.

Extension methods for Response.

Inherited from:
Responses
final implicit def SemigroupalSyntax[A, F[_]](f: F[A])(implicit ev: Semigroupal[F]): SemigroupalSyntax[A, F]
Inherited from:
SemigroupalSyntax
final implicit def TaggedOps[A](taggedA: Tagged[A]): TaggedOps[A]
Inherited from:
JsonSchemas
Inherited from:
JsonSchemas

A JSON schema for type String

A JSON schema for type String

Inherited from:
JsonSchemas
implicit lazy val doubleJsonSchema: JsonSchema[Double]
Inherited from:
JsonSchemas
implicit lazy val floatJsonSchema: JsonSchema[Float]
Inherited from:
JsonSchemas
implicit lazy val intJsonSchema: JsonSchema[Int]
Inherited from:
JsonSchemas
implicit lazy val longJsonSchema: JsonSchema[Long]
Inherited from:
JsonSchemas
Inherited from:
Urls
implicit def repeatedQueryStringParam[A, CC <: (Iterable)](implicit param: DocumentedQueryStringParam[A], factory: Factory[A, CC[A]]): DocumentedQueryStringParam[CC[A]]
Inherited from:
Urls
implicit def tuple10JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)]
Inherited from:
TuplesSchemas
implicit def tuple11JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)]
Inherited from:
TuplesSchemas
implicit def tuple12JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)]
Inherited from:
TuplesSchemas
implicit def tuple13JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)]
Inherited from:
TuplesSchemas
implicit def tuple14JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)]
Inherited from:
TuplesSchemas
implicit def tuple15JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)]
Inherited from:
TuplesSchemas
implicit def tuple16JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)]
Inherited from:
TuplesSchemas
implicit def tuple17JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17)]
Inherited from:
TuplesSchemas
implicit def tuple18JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18)]
Inherited from:
TuplesSchemas
implicit def tuple19JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19)]
Inherited from:
TuplesSchemas
implicit def tuple20JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19], schema20: JsonSchema[T20]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20)]
Inherited from:
TuplesSchemas
implicit def tuple21JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19], schema20: JsonSchema[T20], schema21: JsonSchema[T21]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21)]
Inherited from:
TuplesSchemas
implicit def tuple22JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9], schema10: JsonSchema[T10], schema11: JsonSchema[T11], schema12: JsonSchema[T12], schema13: JsonSchema[T13], schema14: JsonSchema[T14], schema15: JsonSchema[T15], schema16: JsonSchema[T16], schema17: JsonSchema[T17], schema18: JsonSchema[T18], schema19: JsonSchema[T19], schema20: JsonSchema[T20], schema21: JsonSchema[T21], schema22: JsonSchema[T22]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22)]
Inherited from:
TuplesSchemas
implicit def tuple2JsonSchema[T1, T2](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2]): JsonSchema[(T1, T2)]
Inherited from:
TuplesSchemas
implicit def tuple3JsonSchema[T1, T2, T3](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3]): JsonSchema[(T1, T2, T3)]
Inherited from:
TuplesSchemas
implicit def tuple4JsonSchema[T1, T2, T3, T4](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4]): JsonSchema[(T1, T2, T3, T4)]
Inherited from:
TuplesSchemas
implicit def tuple5JsonSchema[T1, T2, T3, T4, T5](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5]): JsonSchema[(T1, T2, T3, T4, T5)]
Inherited from:
TuplesSchemas
implicit def tuple6JsonSchema[T1, T2, T3, T4, T5, T6](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6]): JsonSchema[(T1, T2, T3, T4, T5, T6)]
Inherited from:
TuplesSchemas
implicit def tuple7JsonSchema[T1, T2, T3, T4, T5, T6, T7](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7)]
Inherited from:
TuplesSchemas
implicit def tuple8JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8)]
Inherited from:
TuplesSchemas
implicit def tuple9JsonSchema[T1, T2, T3, T4, T5, T6, T7, T8, T9](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3], schema4: JsonSchema[T4], schema5: JsonSchema[T5], schema6: JsonSchema[T6], schema7: JsonSchema[T7], schema8: JsonSchema[T8], schema9: JsonSchema[T9]): JsonSchema[(T1, T2, T3, T4, T5, T6, T7, T8, T9)]
Inherited from:
TuplesSchemas