Packages

t

endpoints.akkahttp.server

JsonEntitiesFromSchemas

trait JsonEntitiesFromSchemas extends algebra.JsonEntitiesFromSchemas with JsonEntitiesFromCodecs with JsonSchemas

Interpreter for algebra.JsonEntitiesFromSchemas that decodes JSON requests and encodes JSON responses using Akka HTTP.

Source
JsonEntities.scala
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. JsonEntitiesFromSchemas
  2. JsonSchemas
  3. TuplesSchemas
  4. JsonEntitiesFromCodecs
  5. EndpointsWithCustomErrors
  6. Methods
  7. Urls
  8. StatusCodes
  9. JsonEntitiesFromCodecs
  10. JsonEntitiesFromSchemas
  11. JsonSchemas
  12. TuplesSchemas
  13. JsonCodecs
  14. JsonEntities
  15. EndpointsWithCustomErrors
  16. Errors
  17. Responses
  18. StatusCodes
  19. Requests
  20. SemigroupalSyntax
  21. Methods
  22. Urls
  23. PartialInvariantFunctorSyntax
  24. InvariantFunctorSyntax
  25. AnyRef
  26. Any
Implicitly
  1. by StringFormat
  2. by Ensuring
  3. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. implicit class InvariantFunctorSyntax[A, F[_]] extends AnyRef

    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.

    Definition Classes
    InvariantFunctorSyntax
  2. implicit class PartialInvariantFunctorSyntax[A, F[_]] extends AnyRef
  3. implicit class SemigroupalSyntax[A, F[_]] extends AnyRef
    Definition Classes
    SemigroupalSyntax
  4. case class Endpoint[A, B](request: Request[A], response: Response[B]) extends Product with Serializable
    Definition Classes
    EndpointsWithCustomErrors
  5. type CallbacksDocs = Map[String, CallbackDocs]

    Callbacks indexed by URL pattern

    Callbacks indexed by URL pattern

    Definition Classes
    EndpointsWithCustomErrors
    See also

    Swagger Documentation at https://swagger.io/docs/specification/callbacks/

  6. abstract type ClientErrors

    Errors in a request built by a client

    Errors in a request built by a client

    Definition Classes
    Errors
  7. type Enum[A] = JsonSchema[A]

    A JSON schema for enumerations, i.e.

    A JSON schema for enumerations, i.e. types that have a restricted set of values.

    Definition Classes
    JsonSchemasJsonSchemas
    Note

    This type has implicit methods provided by the EnumOps class.

  8. type JsonCodec[A] = JsonSchema[A]

    A JSON codec type class

    A JSON codec type class

    Definition Classes
    JsonEntitiesFromSchemasJsonCodecs
  9. type JsonRequest[A] = JsonCodec[A]

    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

    Definition Classes
    JsonCodecsJsonEntities
  10. type JsonResponse[A] = JsonCodec[A]

    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

    Definition Classes
    JsonCodecsJsonEntities
  11. type Method = HttpMethod

    HTTP Method

    HTTP Method

    Definition Classes
    MethodsMethods
  12. type QueryStringParam[T] = (String, Map[String, Seq[String]]) => Validated[T]

    Given a parameter name and a query string content, returns a decoded parameter value of type T, or Invalid if decoding failed

    Given a parameter name and a query string content, returns a decoded parameter value of type T, or Invalid if decoding failed

    Definition Classes
    UrlsUrls
  13. type Request[A] = Directive[(A)]

    Information carried by a whole request (headers and entity)

    Information carried by a whole request (headers and entity)

    Definition Classes
    EndpointsWithCustomErrorsRequests
    Note

    This type has implicit methods provided by the PartialInvariantFunctorSyntax class.

  14. type RequestEntity[A] = Directive[(A)]

    Information carried by request entity

    Information carried by request entity

    Definition Classes
    EndpointsWithCustomErrorsRequests
    Note

    This type has implicit methods provided by the PartialInvariantFunctorSyntax class.

  15. type RequestHeaders[A] = Directive[(A)]

    Information carried by requests’ headers.

    Information carried by requests’ headers.

    You can construct values of type RequestHeaders by using the operations requestHeader, optRequestHeader, or emptyRequestHeaders.

    Definition Classes
    EndpointsWithCustomErrorsRequests
    Note

    This type has implicit methods provided by the SemigroupalSyntax and PartialInvariantFunctorSyntax classes.

  16. type Response[A] = (A) => Route

    An HTTP response (status, headers, and entity) carrying an information of type A

    An HTTP response (status, headers, and entity) carrying an information of type A

    Definition Classes
    EndpointsWithCustomErrorsResponses
    Note

    This type has implicit methods provided by the InvariantFunctorSyntax and ResponseSyntax classes

  17. type ResponseEntity[A] = Marshaller[A, MessageEntity]

    An HTTP response entity carrying an information of type A

    An HTTP response entity carrying an information of type A

    Definition Classes
    EndpointsWithCustomErrorsResponses
    Note

    This type has implicit methods provided by the InvariantFunctorSyntax class

  18. type ResponseHeaders[A] = (A) => Seq[HttpHeader]

    Information carried by responses’ headers.

    Information carried by responses’ headers.

    You can construct values of type ResponseHeaders by using the operations responseHeader, optResponseHeader, or emptyResponseHeaders.

    Definition Classes
    EndpointsWithCustomErrorsResponses
    Note

    This type has implicit methods provided by the SemigroupalSyntax and InvariantFunctorSyntax classes.

  19. abstract type ServerError

    Error raised by the business logic of a server

    Error raised by the business logic of a server

    Definition Classes
    Errors
  20. type StatusCode = akka.http.scaladsl.model.StatusCode

    HTTP Status Code

    HTTP Status Code

    Definition Classes
    StatusCodesStatusCodes
  21. trait Path[A] extends EndpointsWithCustomErrors.Url[A]
    Definition Classes
    Urls
  22. trait QueryString[T] extends AnyRef
    Definition Classes
    Urls
  23. trait Segment[A] extends AnyRef
    Definition Classes
    Urls
  24. trait Url[A] extends AnyRef
    Definition Classes
    Urls
  25. case class CallbackDocs(method: EndpointsWithCustomErrors.Method, entity: EndpointsWithCustomErrors.RequestEntity[_], response: EndpointsWithCustomErrors.Response[_], requestDocs: Documentation = None) extends Product with Serializable

    method

    HTTP method used for the callback

    entity

    Contents of the callback message

    response

    Expected response

    Definition Classes
    EndpointsWithCustomErrors
  26. case class EndpointDocs(summary: Documentation = None, description: Documentation = None, tags: List[String] = Nil, callbacks: Map[String, CallbacksDocs] = Map.empty, deprecated: Boolean = false) extends Product with Serializable

    summary

    Short description

    description

    Detailed description

    tags

    OpenAPI tags

    callbacks

    Callbacks indexed by event name

    deprecated

    Indicates whether this endpoint is deprecated or not

    Definition Classes
    EndpointsWithCustomErrors
  27. implicit final class EnumOps[A] extends JsonSchemaDocumentationOps[A]

    Definition Classes
    JsonSchemas
  28. sealed trait JsonSchemaDocumentationOps[A] extends AnyRef

    Documentation related methods for annotating schemas.

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

    Definition Classes
    JsonSchemas
  29. implicit final class JsonSchemaOps[A] extends JsonSchemaDocumentationOps[A]

    Implicit methods for values of type JsonSchema

    Implicit methods for values of type JsonSchema

    Definition Classes
    JsonSchemas
  30. implicit final class RecordOps[A] extends JsonSchemaDocumentationOps[A]

    Implicit methods for values of type Record

    Implicit methods for values of type Record

    Definition Classes
    JsonSchemas
  31. implicit final class TaggedOps[A] extends JsonSchemaDocumentationOps[A]

    Definition Classes
    JsonSchemas
  32. implicit class ResponseSyntax[A] extends AnyRef

    Extension methods for Response.

    Extension methods for Response.

    Definition Classes
    Responses
  33. implicit class PathOps[A] extends AnyRef

    Convenient methods for Paths.

    Convenient methods for Paths.

    Definition Classes
    Urls
  34. implicit class QueryStringSyntax[A] extends AnyRef

    Extension methods on QueryString.

    Extension methods on QueryString.

    Definition Classes
    Urls
  35. trait JsonSchema[A] extends AnyRef
    Definition Classes
    JsonSchemas
  36. trait Record[A] extends JsonSchema[A]
    Definition Classes
    JsonSchemas
  37. abstract class Tagged[A] extends Record[A]
    Definition Classes
    JsonSchemas

Abstract Value Members

  1. abstract def clientErrorsResponseEntity: ResponseEntity[ClientErrors]

    Format of the response entity carrying the client errors.

    Format of the response entity carrying the client errors.

    Definition Classes
    Errors
  2. abstract def clientErrorsToInvalid(clientErrors: ClientErrors): Invalid

    Convert the ClientErrors type into the endpoints internal client error type

    Convert the ClientErrors type into the endpoints internal client error type

    Definition Classes
    Errors
  3. abstract def invalidToClientErrors(invalid: Invalid): ClientErrors

    Convert the endpoints internal client error type into the ClientErrors type

    Convert the endpoints internal client error type into the ClientErrors type

    Definition Classes
    Errors
  4. abstract def serverErrorResponseEntity: ResponseEntity[ServerError]

    Format of the response entity carrying the server error.

    Format of the response entity carrying the server error.

    Definition Classes
    Errors
  5. abstract def serverErrorToThrowable(serverError: ServerError): Throwable

    Convert the ServerError type into the endpoints internal server error type

    Convert the ServerError type into the endpoints internal server error type

    Definition Classes
    Errors
  6. abstract def throwableToServerError(throwable: Throwable): ServerError

    Convert the endpoints internal server error type into the ServerError type

    Convert the endpoints internal server error type into the ServerError type

    Definition Classes
    Errors

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def ->[B](y: B): (JsonEntitiesFromSchemas, B)
    Implicit
    This member is added by an implicit conversion from JsonEntitiesFromSchemas toArrowAssoc[JsonEntitiesFromSchemas] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. def Accepted: Success

    Definition Classes
    StatusCodesStatusCodes
  6. def BadRequest: ClientError

    Definition Classes
    StatusCodesStatusCodes
    Note

    You should use the badRequest constructor provided by the endpoints.algebra.Responses trait to ensure that errors produced by endpoints are consistently handled by interpreters.

  7. def Created: Success

    Definition Classes
    StatusCodesStatusCodes
  8. def Delete: HttpMethod

    Definition Classes
    MethodsMethods
  9. def Forbidden: ClientError

    Definition Classes
    StatusCodesStatusCodes
  10. def Get: HttpMethod

    Definition Classes
    MethodsMethods
  11. def InternalServerError: akka.http.scaladsl.model.StatusCodes.ServerError

    Definition Classes
    StatusCodesStatusCodes
    Note

    You should use the internalServerError constructor provided by the endpoints.algebra.Responses trait to ensure that errors produced by endpoints are consistently handled by interpreters.

  12. def NoContent: Success

    Definition Classes
    StatusCodesStatusCodes
  13. def NotFound: ClientError

    Definition Classes
    StatusCodesStatusCodes
  14. def NotImplemented: akka.http.scaladsl.model.StatusCodes.ServerError

    Definition Classes
    StatusCodesStatusCodes
  15. def OK: Success

    Definition Classes
    StatusCodesStatusCodes
  16. def Options: HttpMethod

    Definition Classes
    MethodsMethods
  17. def Patch: HttpMethod

    Definition Classes
    MethodsMethods
  18. def Post: HttpMethod

    Definition Classes
    MethodsMethods
  19. def Put: HttpMethod

    Definition Classes
    MethodsMethods
  20. def Unauthorized: ClientError

    Definition Classes
    StatusCodesStatusCodes
  21. implicit def arrayJsonSchema[C[X] <: Seq[X], A](implicit jsonSchema: JsonSchema[A], factory: Factory[A, C[A]]): JsonSchema[C[A]]

    A JSON schema for sequences

    A JSON schema for sequences

    Definition Classes
    JsonSchemasJsonSchemas
  22. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  23. final def badRequest[A, R](docs: Documentation = None, headers: ResponseHeaders[A] = emptyResponseHeaders)(implicit tupler: 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.

    Definition Classes
    Responses
    See also

    endpoints.algebra.Errors and endpoints.algebra.BuiltInErrors

  24. implicit def bigdecimalJsonSchema: JsonSchema[BigDecimal]

    A JSON schema for type BigDecimal

    A JSON schema for type BigDecimal

    Definition Classes
    JsonSchemasJsonSchemas
  25. implicit def booleanJsonSchema: JsonSchema[Boolean]

    A JSON schema for type Boolean

    A JSON schema for type Boolean

    Definition Classes
    JsonSchemasJsonSchemas
  26. implicit def booleanQueryString: QueryStringParam[Boolean]

    Query string parameter containing a Boolean value

    Query string parameter containing a Boolean value

    Definition Classes
    Urls
  27. implicit def byteJsonSchema: JsonSchema[Byte]

    A JSON schema for type Byte

    A JSON schema for type Byte

    Definition Classes
    JsonSchemasJsonSchemas
  28. def chainPaths[A, B](first: Path[A], second: Path[B])(implicit tupler: Tupler[A, B]): Path[Out]

    Chains the two paths

    Chains the two paths

    Definition Classes
    UrlsUrls
  29. def choiceResponse[A, B](responseA: Response[A], responseB: Response[B]): Response[Either[A, B]]

    Alternative between two possible choices of responses.

    Alternative between two possible choices of responses.

    Server interpreters construct either one or the other response. Client interpreters accept either one or the other response. Documentation interpreters list all the possible responses.

    Definition Classes
    EndpointsWithCustomErrorsResponses
  30. def choiceTagged[A, B](taggedA: Tagged[A], taggedB: Tagged[B]): Tagged[Either[A, B]]

    The JSON schema of a coproduct made of the given alternative tagged records

    The JSON schema of a coproduct made of the given alternative tagged records

    Definition Classes
    JsonSchemasJsonSchemas
  31. lazy val clientErrorsResponse: Response[ClientErrors]

    Response used by the endpoints library when decoding a request fails.

    Response used by the endpoints library when decoding a request fails.

    The provided implementation forwards to badRequest.

    Definition Classes
    Errors
  32. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  33. def combineQueryStrings[A, B](first: QueryString[A], second: QueryString[B])(implicit tupler: Tupler[A, B]): QueryString[Out]

    Concatenates two QueryStrings

    Concatenates two QueryStrings

    Definition Classes
    UrlsUrls
  34. def convToDirective1(directive: Directive0): Directive1[Unit]
    Attributes
    protected
    Definition Classes
    Urls
  35. def defaultDiscriminatorName: String

    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

    Definition Classes
    JsonSchemas
  36. implicit final def defaultStringJsonSchema: JsonSchema[String]

    A JSON schema for type String

    A JSON schema for type String

    Definition Classes
    JsonSchemas
  37. final def delete[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]

    Helper method to perform DELETE request

    Helper method to perform DELETE request

    UrlP

    Payload carried by url

    HeadersP

    Payload carried by headers

    Definition Classes
    Requests
  38. lazy val directive1InvFunctor: PartialInvariantFunctor[Directive1]
    Definition Classes
    EndpointsWithCustomErrors
  39. implicit def doubleJsonSchema: JsonSchema[Double]

    A JSON schema for type Double

    A JSON schema for type Double

    Definition Classes
    JsonSchemasJsonSchemas
  40. implicit def doubleQueryString: QueryStringParam[Double]

    Codec for query string parameters of type Double

    Codec for query string parameters of type Double

    Definition Classes
    Urls
  41. implicit def doubleSegment: Segment[Double]

    Segment codec for type Double

    Segment codec for type Double

    Definition Classes
    Urls
  42. implicit def dummyPathToUrl[A](p: Path[A]): Url[A]

    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.

    Definition Classes
    Urls
    See also

    https://youtrack.jetbrains.com/issue/SCL-16284

  43. lazy val emptyRecord: Record[Unit]

    The JSON schema of a record with no fields

    The JSON schema of a record with no fields

    Definition Classes
    JsonSchemasJsonSchemas
  44. def emptyRequest: RequestEntity[Unit]

    Empty request -- request without a body.

    Empty request -- request without a body. Use description of endpoints.algebra.Endpoints#endpoint to document an empty body.

    Definition Classes
    EndpointsWithCustomErrorsRequests
  45. def emptyRequestHeaders: RequestHeaders[Unit]

    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.

    Definition Classes
    EndpointsWithCustomErrorsRequests
  46. def emptyResponse: ResponseEntity[Unit]

    Empty response entity

    Empty response entity

    Definition Classes
    EndpointsWithCustomErrorsResponses
  47. def emptyResponseHeaders: ResponseHeaders[Unit]

    No particular response header.

    No particular response header. Client interpreters should ignore information carried by response headers.

    Definition Classes
    EndpointsWithCustomErrorsResponses
  48. def endpoint[A, B](request: Request[A], response: Response[B], docs: EndpointDocs = EndpointDocs()): Endpoint[A, B]

    HTTP endpoint.

    HTTP endpoint.

    request

    Request

    response

    Response

    docs

    Documentation (used by documentation interpreters)

    Definition Classes
    EndpointsWithCustomErrorsEndpointsWithCustomErrors
  49. def ensuring(cond: (JsonEntitiesFromSchemas) => Boolean, msg: => Any): JsonEntitiesFromSchemas
    Implicit
    This member is added by an implicit conversion from JsonEntitiesFromSchemas toEnsuring[JsonEntitiesFromSchemas] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  50. def ensuring(cond: (JsonEntitiesFromSchemas) => Boolean): JsonEntitiesFromSchemas
    Implicit
    This member is added by an implicit conversion from JsonEntitiesFromSchemas toEnsuring[JsonEntitiesFromSchemas] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  51. def ensuring(cond: Boolean, msg: => Any): JsonEntitiesFromSchemas
    Implicit
    This member is added by an implicit conversion from JsonEntitiesFromSchemas toEnsuring[JsonEntitiesFromSchemas] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  52. def ensuring(cond: Boolean): JsonEntitiesFromSchemas
    Implicit
    This member is added by an implicit conversion from JsonEntitiesFromSchemas toEnsuring[JsonEntitiesFromSchemas] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  53. def enumeration[A](values: Seq[A])(tpe: JsonSchema[A]): Enum[A]

    Promotes a schema to an enumeration.

    Promotes a schema to an enumeration. Decoding fails if the input string does not match the encoded values of any of the possible values. Encoding does never fail, even if the value is not contained in the set of possible values.

    Definition Classes
    JsonSchemasJsonSchemas
  54. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  55. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  56. def field[A](name: String, documentation: Option[String] = None)(implicit tpe: JsonSchema[A]): Record[A]

    The JSON schema of a record with a single field name of type A

    The JSON schema of a record with a single field name of type A

    Definition Classes
    JsonSchemasJsonSchemas
  57. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  58. implicit def floatJsonSchema: JsonSchema[Float]

    A JSON schema for type Float

    A JSON schema for type Float

    Definition Classes
    JsonSchemasJsonSchemas
  59. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from JsonEntitiesFromSchemas toStringFormat[JsonEntitiesFromSchemas] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  60. final def get[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]

    Helper method to perform GET request

    Helper method to perform GET request

    UrlP

    Payload carried by url

    HeadersP

    Payload carried by headers

    Definition Classes
    Requests
  61. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  62. def handleClientErrors(invalid: Invalid): StandardRoute

    This method is called by endpoints when decoding a request failed.

    This method is called by endpoints when decoding a request failed.

    The provided implementation calls clientErrorsResponse to complete with a response containing the errors.

    This method can be overridden to customize the error reporting logic.

    Definition Classes
    Urls
  63. def handleServerError(throwable: Throwable): StandardRoute

    This method is called by endpoints when an exception is thrown during request processing.

    This method is called by endpoints when an exception is thrown during request processing.

    The provided implementation uses serverErrorResponse to complete with a response containing the error message.

    This method can be overridden to customize the error reporting logic.

    Definition Classes
    EndpointsWithCustomErrors
  64. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  65. implicit def intJsonSchema: JsonSchema[Int]

    A JSON schema for type Int

    A JSON schema for type Int

    Definition Classes
    JsonSchemasJsonSchemas
  66. implicit def intQueryString: QueryStringParam[Int]

    Ability to define Int query string parameters

    Ability to define Int query string parameters

    Definition Classes
    Urls
  67. implicit def intSegment: Segment[Int]

    Ability to define Int path segments

    Ability to define Int path segments

    Definition Classes
    Urls
  68. final def internalServerError[A, R](docs: Documentation = None, headers: ResponseHeaders[A] = emptyResponseHeaders)(implicit tupler: 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.

    Definition Classes
    Responses
    See also

    endpoints.algebra.Errors and endpoints.algebra.BuiltInErrors

  69. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  70. def joinDirectives[T1, T2](dir1: Directive1[T1], dir2: Directive1[T2])(implicit tupler: Tupler[T1, T2]): Directive1[Out]

    Simpler alternative to Directive.&() method

    Simpler alternative to Directive.&() method

    Attributes
    protected
    Definition Classes
    Urls
  71. def jsonRequest[A](implicit codec: JsonCodec[A]): RequestEntity[A]

    Defines a RequestEntity[A] given an implicit JsonRequest[A]

    Defines a RequestEntity[A] given an implicit JsonRequest[A]

    Definition Classes
    JsonEntitiesFromCodecsJsonEntities
  72. def jsonResponse[A](implicit codec: JsonCodec[A]): ResponseEntity[A]

    Defines a Response[A] given an implicit JsonResponse[A]

    Defines a Response[A] given an implicit JsonResponse[A]

    Definition Classes
    JsonEntitiesFromCodecsJsonEntities
  73. implicit def jsonSchemaPartialInvFunctor: PartialInvariantFunctor[JsonSchema]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    JsonSchemasJsonSchemas
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  74. def lazyRecord[A](schema: => Record[A], name: String): JsonSchema[A]

    Captures a lazy reference to a JSON schema currently being defined:

    Captures a lazy reference to a JSON schema currently being defined:

    case class Recursive(next: Option[Recursive])
    val recursiveSchema: Record[Recursive] = (
      optField("next")(lazyRecord(recursiveSchema, "Rec"))
    ).xmap(Recursive)(_.next)

    Interpreters should return a JsonSchema value that does not evaluate the given schema unless it is effectively used.

    schema

    The record JSON schema whose evaluation should be delayed

    name

    A unique name identifying the schema

    Definition Classes
    JsonSchemasJsonSchemas
  75. def lazyTagged[A](schema: => Tagged[A], name: String): JsonSchema[A]

    Captures a lazy reference to a JSON schema currently being defined.

    Captures a lazy reference to a JSON schema currently being defined.

    Interpreters should return a JsonSchema value that does not evaluate the given schema unless it is effectively used.

    schema

    The tagged JSON schema whose evaluation should be delayed

    name

    A unique name identifying the schema

    Definition Classes
    JsonSchemasJsonSchemas
  76. 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.

    Encoders always produce the given value, encoded according to tpe. Decoders first try to decode incoming values with the given tpe schema, and then check that it is equal to the given value.

    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))
    Definition Classes
    JsonSchemas
  77. implicit def longJsonSchema: JsonSchema[Long]

    A JSON schema for type Long

    A JSON schema for type Long

    Definition Classes
    JsonSchemasJsonSchemas
  78. implicit def longQueryString: QueryStringParam[Long]

    Query string parameter containing a Long value

    Query string parameter containing a Long value

    Definition Classes
    Urls
  79. implicit def longSegment: Segment[Long]

    Segment containing a Long value

    Segment containing a Long value

    Definition Classes
    Urls
  80. implicit def mapJsonSchema[A](implicit jsonSchema: JsonSchema[A]): JsonSchema[Map[String, A]]

    A JSON schema for maps with string keys

    A JSON schema for maps with string keys

    Definition Classes
    JsonSchemasJsonSchemas
  81. def namedEnum[A](schema: Enum[A], name: String): Enum[A]

    Annotates the enum JSON schema with a name

    Annotates the enum JSON schema with a name

    Definition Classes
    JsonSchemasJsonSchemas
  82. def namedRecord[A](schema: Record[A], name: String): Record[A]

    Annotates the record JSON schema with a name

    Annotates the record JSON schema with a name

    Definition Classes
    JsonSchemasJsonSchemas
  83. def namedTagged[A](schema: Tagged[A], name: String): Tagged[A]

    Annotates the tagged JSON schema with a name

    Annotates the tagged JSON schema with a name

    Definition Classes
    JsonSchemasJsonSchemas
  84. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  85. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  86. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  87. final def ok[A, B, R](entity: ResponseEntity[A], docs: Documentation = None, headers: ResponseHeaders[B] = emptyResponseHeaders)(implicit tupler: Tupler.Aux[A, B, R]): Response[R]

    OK (200) Response with the given entity

    OK (200) Response with the given entity

    Definition Classes
    Responses
  88. def optField[A](name: String, documentation: Option[String] = None)(implicit tpe: JsonSchema[A]): Record[Option[A]]

    The JSON schema of a record with a single optional field name of type A

    The JSON schema of a record with a single optional field name of type A

    Decoder interpreters successfully decode None if the field is absent or if it is present but has the value null. Decoder interpreters fail if the field is present but contains an invalid value. Encoder interpreters can omit the field or emit a field with a null value. Documentation interpreters must mark the field as optional.

    Definition Classes
    JsonSchemasJsonSchemas
  89. def optRequestHeader(name: String, docs: Documentation): RequestHeaders[Option[String]]

    An optional request header

    An optional request header

    name

    Header name (e.g., “Authorization”)

    Definition Classes
    EndpointsWithCustomErrorsRequests
  90. def optResponseHeader(name: String, docs: Documentation = None): ResponseHeaders[Option[String]]

    Response headers optionally containing a header with the given name.

    Response headers optionally containing a header with the given name. Client interpreters should model the header value as Some[String], or None if the response header is missing. Server interpreters should produce such a response header. Documentation interpreters should document this header.

    Definition Classes
    EndpointsWithCustomErrorsResponses
  91. implicit def optionalQueryStringParam[A](implicit param: QueryStringParam[A]): QueryStringParam[Option[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.

    Definition Classes
    UrlsUrls
  92. def orFallbackToJsonSchema[A, B](schemaA: JsonSchema[A], schemaB: JsonSchema[B]): JsonSchema[Either[A, B]]

    A schema that can be either schemaA or schemaB.

    A schema that can be either schemaA or schemaB.

    Documentation interpreter produce a oneOf JSON schema. Encoder interpreters forward to either schemaA or schemaB. Decoder interpreters first try to decode with schemaA, and fallback to schemaB in case of failure.

    The difference between this operation and the operation orElse on “tagged” schemas is that this operation does not rely on a discriminator field between the alternative schemas. As a consequence, decoding is slower than with “tagged” schemas and provides less precise error messages.

    Definition Classes
    JsonSchemasJsonSchemas
    Note

    Be careful to use disjoint schemas for A and B (none must be a subtype of the other), otherwise, a value of type B might also be successfully decoded as a value of type A, and this could have surprising consequences.

  93. val path: Path[Unit]

    An empty path.

    An empty path.

    Useful to begin a path definition:

    path / "foo" / segment[Int] /? qs[String]("bar")
    Definition Classes
    Urls
  94. implicit lazy val pathPartialInvariantFunctor: PartialInvariantFunctor[Path]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  95. final def post[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

    Helper method to perform POST request

    Helper method to perform POST request

    UrlP

    Payload carried by url

    BodyP

    Payload carried by body

    HeadersP

    Payload carried by headers

    UrlAndBodyPTupled

    Payloads of Url and Body tupled together by Tupler

    docs

    Request documentation

    Definition Classes
    Requests
  96. final def put[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

    Helper method to perform PUT request

    Helper method to perform PUT request

    UrlP

    Payload carried by url

    BodyP

    Payload carried by body

    HeadersP

    Payload carried by headers

    UrlAndBodyPTupled

    Payloads of Url and Body tupled together by Tupler

    Definition Classes
    Requests
  97. def qs[A](name: String, docs: Documentation)(implicit param: QueryStringParam[A]): QueryString[A]

    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
    A

    Type of the value carried by the parameter

    name

    Parameter’s name

    Definition Classes
    UrlsUrls
  98. implicit lazy val queryStringParamPartialInvariantFunctor: PartialInvariantFunctor[QueryStringParam]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  99. implicit lazy val queryStringPartialInvariantFunctor: PartialInvariantFunctor[QueryString]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  100. implicit def recordPartialInvFunctor: PartialInvariantFunctor[Record]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    JsonSchemasJsonSchemas
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  101. def remainingSegments(name: String, docs: Documentation): Path[String]

    The remaining segments of the path.

    The remaining segments of the path. The String value carried by this Path is still URL-encoded.

    Definition Classes
    UrlsUrls
  102. implicit def repeatedQueryStringParam[A, CC[X] <: Iterable[X]](implicit param: QueryStringParam[A], factory: Factory[A, CC[A]]): QueryStringParam[CC[A]]

    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.

    Definition Classes
    UrlsUrls
  103. def request[A, B, C, AB, Out](method: Method, url: Url[A], entity: RequestEntity[B] = emptyRequest, docs: Documentation = None, headers: RequestHeaders[C] = emptyRequestHeaders)(implicit tuplerAB: Tupler.Aux[A, B, AB], tuplerABC: Tupler.Aux[AB, C, Out]): Request[Out]

    Request for given parameters

    Request for given parameters

    method

    Request method

    url

    Request URL

    entity

    Request entity

    docs

    Request documentation

    headers

    Request headers

    Definition Classes
    EndpointsWithCustomErrorsRequests
  104. implicit lazy val requestEntityPartialInvariantFunctor: PartialInvariantFunctor[RequestEntity]

    Provides the operations xmap and xmapPartial.

    Provides the operations xmap and xmapPartial.

    Definition Classes
    EndpointsWithCustomErrorsRequests
    See also

    PartialInvariantFunctorSyntax

  105. def requestHeader(name: String, docs: Documentation): RequestHeaders[String]

    A required request header

    A required request header

    name

    Header name (e.g., “Authorization”)

    Definition Classes
    EndpointsWithCustomErrorsRequests
  106. implicit lazy val requestHeadersPartialInvariantFunctor: PartialInvariantFunctor[RequestHeaders]

    Provides the operations xmap and xmapPartial.

    Provides the operations xmap and xmapPartial.

    Definition Classes
    EndpointsWithCustomErrorsRequests
    See also

    PartialInvariantFunctorSyntax

  107. implicit lazy val requestHeadersSemigroupal: Semigroupal[RequestHeaders]

    Provides ++ operation.

    Provides ++ operation.

    Definition Classes
    EndpointsWithCustomErrorsRequests
    See also

    SemigroupalSyntax

  108. implicit def requestPartialInvariantFunctor: PartialInvariantFunctor[Request]

    Provides the operations xmap and xmapPartial.

    Provides the operations xmap and xmapPartial.

    Definition Classes
    EndpointsWithCustomErrorsRequests
    See also

    PartialInvariantFunctorSyntax

  109. def response[A, B, R](statusCode: StatusCode, entity: ResponseEntity[A], docs: Documentation = None, headers: ResponseHeaders[B] = emptyResponseHeaders)(implicit tupler: Tupler.Aux[A, B, R]): Response[R]

    Server interpreters construct a response with the given status and entity.

    Server interpreters construct a response with the given status and entity. Client interpreters accept a response only if it has a corresponding status code.

    statusCode

    Response status code

    entity

    Response entity

    docs

    Response documentation

    headers

    Response headers

    Definition Classes
    EndpointsWithCustomErrorsResponses
  110. implicit lazy val responseEntityInvariantFunctor: InvariantFunctor[ResponseEntity]
    Definition Classes
    EndpointsWithCustomErrorsResponses
  111. def responseHeader(name: String, docs: Documentation = None): ResponseHeaders[String]

    Response headers containing a header with the given name.

    Response headers containing a header with the given name. Client interpreters should model the header value as String, or fail if the response header is missing. Server interpreters should produce such a response header. Documentation interpreters should document this header.

    Example:

    val versionedResource: Endpoint[Unit, (SomeResource, String)] =
      endpoint(
        get(path / "versioned-resource"),
        ok(
          jsonResponse[SomeResource],
          headers = responseHeader("ETag")
        )
      )
    Definition Classes
    EndpointsWithCustomErrorsResponses
  112. implicit def responseHeadersInvariantFunctor: InvariantFunctor[ResponseHeaders]

    Provides xmap operation.

    Provides xmap operation.

    Definition Classes
    EndpointsWithCustomErrorsResponses
    See also

    InvariantFunctorSyntax

  113. implicit def responseHeadersSemigroupal: Semigroupal[ResponseHeaders]

    Provides ++ operation.

    Provides ++ operation.

    Definition Classes
    EndpointsWithCustomErrorsResponses
    See also

    SemigroupalSyntax

  114. implicit lazy val responseInvariantFunctor: InvariantFunctor[Response]

    Provides the operation xmap to the type Response

    Provides the operation xmap to the type Response

    Definition Classes
    EndpointsWithCustomErrorsResponses
    See also

    InvariantFunctorSyntax

  115. def segment[A](name: String, docs: Documentation)(implicit s: Segment[A]): Path[A]

    A path segment carrying an A information

    A path segment carrying an A information

    Definition Classes
    UrlsUrls
  116. implicit lazy val segmentPartialInvariantFunctor: PartialInvariantFunctor[Segment]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  117. lazy val serverErrorResponse: Response[ServerError]

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

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

    The provided implementation forwards to internalServerError

    Definition Classes
    Errors
  118. def staticPathSegment(segment: String): Path[Unit]

    A path segment whose value is the given segment

    A path segment whose value is the given segment

    Definition Classes
    UrlsUrls
  119. def stringCodec[A](implicit codec: JsonCodec[A]): Codec[String, A]

    Turns a JsonCodec[A] into a Codec[String, A]

    Turns a JsonCodec[A] into a Codec[String, A]

    Definition Classes
    JsonEntitiesFromSchemasJsonEntitiesFromCodecs
  120. 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.

    Definition Classes
    JsonSchemas
  121. def stringJsonSchema(format: Option[String]): JsonSchema[String]

    A JSON schema for type String.

    A JSON schema for type String.

    format

    An additional semantic information about the underlying format of the string

    Definition Classes
    JsonSchemasJsonSchemas
    See also

    https://json-schema.org/understanding-json-schema/reference/string.html#format

  122. implicit lazy val stringQueryString: QueryStringParam[String]

    Ability to define String query string parameters

    Ability to define String query string parameters

    Definition Classes
    UrlsUrls
  123. implicit def stringSegment: Segment[String]

    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.

    Definition Classes
    UrlsUrls
  124. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  125. implicit def taggedPartialInvFunctor: PartialInvariantFunctor[Tagged]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    JsonSchemasJsonSchemas
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  126. def taggedRecord[A](recordA: Record[A], tag: String): Tagged[A]

    Tags a schema for type A with the given tag name

    Tags a schema for type A with the given tag name

    Definition Classes
    JsonSchemasJsonSchemas
  127. def textRequest: RequestEntity[String]

    Request with a String body.

    Request with a String body.

    Definition Classes
    EndpointsWithCustomErrorsRequests
  128. def textResponse: ResponseEntity[String]

    Text response entity

    Text response entity

    Definition Classes
    EndpointsWithCustomErrorsResponses
  129. def toString(): String
    Definition Classes
    AnyRef → Any
  130. def tryParseString[A](type: String)(parse: (String) => A): (String) => Validated[A]
    Definition Classes
    Urls
  131. 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)]

    A JSON schema for a tuple of 10 elements.

    A JSON schema for a tuple of 10 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  132. 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)]

    A JSON schema for a tuple of 11 elements.

    A JSON schema for a tuple of 11 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  133. 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)]

    A JSON schema for a tuple of 12 elements.

    A JSON schema for a tuple of 12 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  134. 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)]

    A JSON schema for a tuple of 13 elements.

    A JSON schema for a tuple of 13 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  135. 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)]

    A JSON schema for a tuple of 14 elements.

    A JSON schema for a tuple of 14 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  136. 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)]

    A JSON schema for a tuple of 15 elements.

    A JSON schema for a tuple of 15 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  137. 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)]

    A JSON schema for a tuple of 16 elements.

    A JSON schema for a tuple of 16 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  138. 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)]

    A JSON schema for a tuple of 17 elements.

    A JSON schema for a tuple of 17 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  139. 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)]

    A JSON schema for a tuple of 18 elements.

    A JSON schema for a tuple of 18 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  140. 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)]

    A JSON schema for a tuple of 19 elements.

    A JSON schema for a tuple of 19 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  141. 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)]

    A JSON schema for a tuple of 20 elements.

    A JSON schema for a tuple of 20 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  142. 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)]

    A JSON schema for a tuple of 21 elements.

    A JSON schema for a tuple of 21 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  143. 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)]

    A JSON schema for a tuple of 22 elements.

    A JSON schema for a tuple of 22 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  144. implicit def tuple2JsonSchema[T1, T2](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2]): JsonSchema[(T1, T2)]

    A JSON schema for a tuple of 2 elements.

    A JSON schema for a tuple of 2 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  145. implicit def tuple3JsonSchema[T1, T2, T3](implicit schema1: JsonSchema[T1], schema2: JsonSchema[T2], schema3: JsonSchema[T3]): JsonSchema[(T1, T2, T3)]

    A JSON schema for a tuple of 3 elements.

    A JSON schema for a tuple of 3 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  146. 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)]

    A JSON schema for a tuple of 4 elements.

    A JSON schema for a tuple of 4 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  147. 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)]

    A JSON schema for a tuple of 5 elements.

    A JSON schema for a tuple of 5 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  148. 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)]

    A JSON schema for a tuple of 6 elements.

    A JSON schema for a tuple of 6 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  149. 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)]

    A JSON schema for a tuple of 7 elements.

    A JSON schema for a tuple of 7 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  150. 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)]

    A JSON schema for a tuple of 8 elements.

    A JSON schema for a tuple of 8 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  151. 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)]

    A JSON schema for a tuple of 9 elements.

    A JSON schema for a tuple of 9 elements.

    Tuples are represented with JSON arrays, as documented in https://json-schema.org/understanding-json-schema/reference/array.html#tuple-validation.

    Definition Classes
    TuplesSchemasTuplesSchemas
  152. implicit lazy val urlPartialInvariantFunctor: PartialInvariantFunctor[Url]

    Provides xmap and xmapPartial operations

    Provides xmap and xmapPartial operations

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  153. def urlWithQueryString[A, B](path: Path[A], qs: QueryString[B])(implicit tupler: Tupler[A, B]): Url[Out]

    Builds an URL from the given path and query string

    Builds an URL from the given path and query string

    Definition Classes
    UrlsUrls
  154. implicit final lazy val uuidJsonSchema: JsonSchema[UUID]

    A JSON schema for type UUID

    A JSON schema for type UUID

    Definition Classes
    JsonSchemas
  155. implicit def uuidQueryString: QueryStringParam[UUID]

    Ability to define UUID query string parameters

    Ability to define UUID query string parameters

    Definition Classes
    Urls
  156. implicit def uuidSegment: Segment[UUID]

    Ability to define UUID path segments

    Ability to define UUID path segments

    Definition Classes
    Urls
  157. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  158. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  159. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  160. final def wheneverFound[A](responseA: Response[A], notFoundDocs: Documentation = None): 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).

    Definition Classes
    Responses
  161. def withDescriptionEnum[A](schema: Enum[A], description: String): Enum[A]

    Add a description to the given enum JSON schema

    Add a description to the given enum JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  162. def withDescriptionJsonSchema[A](schema: JsonSchema[A], description: String): JsonSchema[A]

    Add a description to the given JSON schema

    Add a description to the given JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  163. def withDescriptionRecord[A](schema: Record[A], description: String): Record[A]

    Add a description to the given record JSON schema

    Add a description to the given record JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  164. def withDescriptionTagged[A](schema: Tagged[A], description: String): Tagged[A]

    Add a description to the given tagged JSON schema

    Add a description to the given tagged JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  165. def withDiscriminatorTagged[A](tagged: Tagged[A], discriminatorName: String): Tagged[A]

    Allows to specify name of discriminator field for sum type

    Allows to specify name of discriminator field for sum type

    Definition Classes
    JsonSchemasJsonSchemas
  166. def withExampleEnum[A](schema: Enum[A], example: A): Enum[A]

    Include an example value within the given enum JSON schema

    Include an example value within the given enum JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  167. def withExampleJsonSchema[A](schema: JsonSchema[A], example: A): JsonSchema[A]

    Include an example value within the given JSON schema

    Include an example value within the given JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  168. def withExampleRecord[A](schema: Record[A], example: A): Record[A]

    Include an example value within the given record JSON schema

    Include an example value within the given record JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  169. def withExampleTagged[A](schema: Tagged[A], example: A): Tagged[A]

    Include an example value within the given tagged JSON schema

    Include an example value within the given tagged JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  170. def withTitleEnum[A](schema: Enum[A], title: String): Enum[A]

    Add a title to the given enum JSON schema

    Add a title to the given enum JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  171. def withTitleJsonSchema[A](schema: JsonSchema[A], title: String): JsonSchema[A]

    Add a title to the given schema

    Add a title to the given schema

    Definition Classes
    JsonSchemasJsonSchemas
  172. def withTitleRecord[A](schema: Record[A], title: String): Record[A]

    Add a title to the given record JSON schema

    Add a title to the given record JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  173. def withTitleTagged[A](schema: Tagged[A], title: String): Tagged[A]

    Add a title to the given tagged JSON schema

    Add a title to the given tagged JSON schema

    Definition Classes
    JsonSchemasJsonSchemas
  174. def zipRecords[A, B](recordA: Record[A], recordB: Record[B])(implicit t: Tupler[A, B]): Record[Out]

    The JSON schema of a record merging the fields of the two given records

    The JSON schema of a record merging the fields of the two given records

    Definition Classes
    JsonSchemasJsonSchemas

Deprecated Value Members

  1. def [B](y: B): (JsonEntitiesFromSchemas, B)
    Implicit
    This member is added by an implicit conversion from JsonEntitiesFromSchemas toArrowAssoc[JsonEntitiesFromSchemas] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from JsonSchemas

Inherited from TuplesSchemas

Inherited from JsonEntitiesFromCodecs

Inherited from Methods

Inherited from Urls

Inherited from StatusCodes

Inherited from JsonSchemas

Inherited from TuplesSchemas

Inherited from JsonCodecs

Inherited from algebra.JsonEntities

Inherited from Errors

Inherited from Responses

Inherited from algebra.StatusCodes

Inherited from Requests

Inherited from algebra.Methods

Inherited from algebra.Urls

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion StringFormat fromJsonEntitiesFromSchemas to StringFormat[JsonEntitiesFromSchemas]

Inherited by implicit conversion Ensuring fromJsonEntitiesFromSchemas to Ensuring[JsonEntitiesFromSchemas]

Inherited by implicit conversion ArrowAssoc fromJsonEntitiesFromSchemas to ArrowAssoc[JsonEntitiesFromSchemas]

Types

Types introduced by the algebra

Operations

Operations creating and transforming values

Ungrouped