Packages

t

endpoints.openapi

JsonSchemaEntities

trait JsonSchemaEntities extends algebra.JsonSchemaEntities with Endpoints with JsonSchemas

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JsonSchemaEntities
  2. JsonSchemas
  3. Endpoints
  4. Responses
  5. Requests
  6. Methods
  7. Urls
  8. JsonSchemaEntities
  9. JsonSchemas
  10. JsonEntities
  11. Endpoints
  12. Responses
  13. Requests
  14. SemigroupalSyntax
  15. InvariantFunctorSyntax
  16. Methods
  17. Urls
  18. AnyRef
  19. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class DocumentedEndpoint(path: String, item: PathItem) extends Product with Serializable

    path

    Path template (e.g. “/user/{id}”)

    item

    Item documentation

    Definition Classes
    Endpoints
  2. type Endpoint[A, B] = DocumentedEndpoint
    Definition Classes
    Endpoints → Endpoints
  3. type Enum[+A] = DocumentedEnum
    Definition Classes
    JsonSchemas → JsonSchemas
  4. implicit class InvariantFunctorSyntax[A, F[_]] extends AnyRef
    Definition Classes
    InvariantFunctorSyntax
  5. type JsonRequest[A] = JsonSchema[A]
    Definition Classes
    JsonSchemaEntities → JsonEntities
  6. type JsonResponse[A] = JsonSchema[A]
    Definition Classes
    JsonSchemaEntities → JsonEntities
  7. type JsonSchema[+A] = DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  8. implicit final class JsonSchemaOps[A] extends AnyRef
    Definition Classes
    JsonSchemas
  9. type Path[A] = DocumentedUrl
    Definition Classes
    Urls → Urls
  10. implicit class PathOps[A] extends AnyRef
    Definition Classes
    Urls
  11. type QueryString[A] = DocumentedQueryString
    Definition Classes
    Urls → Urls
  12. implicit class QueryStringOps[A] extends AnyRef
    Definition Classes
    Urls
  13. type QueryStringParam[A] = DocumentedQueryStringParam
    Definition Classes
    Urls → Urls
  14. type Record[+A] = DocumentedRecord
    Definition Classes
    JsonSchemas → JsonSchemas
  15. implicit final class RecordOps[A] extends AnyRef
    Definition Classes
    JsonSchemas
  16. type Request[A] = DocumentedRequest
    Definition Classes
    Requests → Requests
  17. type RequestEntity[A] = Option[DocumentedRequestEntity]
    Definition Classes
    Requests → Requests
  18. type RequestHeaders[A] = DocumentedHeaders
    Definition Classes
    Requests → Requests
  19. type Response[A] = List[DocumentedResponse]
    Definition Classes
    Responses → Responses
  20. implicit class ResponseExtensions[A] extends AnyRef
    Definition Classes
    Responses
  21. type Segment[A] = Schema
    Definition Classes
    Urls → Urls
  22. implicit class SemigroupalSyntax[A, F[_]] extends AnyRef
    Definition Classes
    SemigroupalSyntax
  23. type Tagged[+A] = DocumentedCoProd
    Definition Classes
    JsonSchemas → JsonSchemas
  24. implicit final class TaggedOps[A] extends AnyRef
    Definition Classes
    JsonSchemas
  25. type Url[A] = DocumentedUrl
    Definition Classes
    Urls → Urls
  26. sealed trait DocumentedJsonSchema extends AnyRef
    Definition Classes
    JsonSchemas
  27. sealed trait Method extends AnyRef
    Definition Classes
    Methods
  28. case class DocumentedHeader(name: String, description: Option[String], required: Boolean, schema: Schema) extends Product with Serializable
    Definition Classes
    Requests
  29. case class DocumentedHeaders(value: List[DocumentedHeader]) extends Product with Serializable

    value

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

    Definition Classes
    Requests
  30. case class DocumentedRequest(method: Requests.Method, url: Requests.DocumentedUrl, headers: DocumentedHeaders, entity: Option[DocumentedRequestEntity]) extends Product with Serializable
    Definition Classes
    Requests
  31. case class DocumentedRequestEntity(documentation: Option[String], content: Map[String, MediaType]) extends Product with Serializable

    documentation

    Human readable documentation of the request entity

    content

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

    Definition Classes
    Requests
  32. case class DocumentedResponse(status: Int, documentation: String, content: Map[String, MediaType]) extends Product with Serializable

    status

    Response status code (e.g. 200)

    documentation

    Human readable documentation. Not optional because its required by openapi

    content

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

    Definition Classes
    Responses
  33. case class DocumentedParameter(name: String, required: Boolean, description: Option[String], schema: Schema) extends Product with Serializable

    name

    Name of the parameter

    required

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

    Definition Classes
    Urls
  34. case class DocumentedQueryString(parameters: List[DocumentedParameter]) extends Product with Serializable

    parameters

    List of query string parameters

    Definition Classes
    Urls
  35. case class DocumentedQueryStringParam(schema: Schema, isRequired: Boolean) extends Product with Serializable
    Definition Classes
    Urls
  36. case class DocumentedUrl(path: List[Either[String, DocumentedParameter]], queryParameters: List[DocumentedParameter]) extends Product with Serializable

    path

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

    queryParameters

    Query string parameters

    Definition Classes
    Urls

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def arrayJsonSchema[C[X] <: Seq[X], A](implicit jsonSchema: JsonSchema[A], factory: scala.collection.compat.Factory[A, C[A]]): JsonSchema[C[A]]
    Definition Classes
    JsonSchemas → JsonSchemas
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. lazy val bigdecimalJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  7. lazy val booleanJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  8. def booleanQueryString: QueryStringParam[Boolean]
    Definition Classes
    Urls → Urls
  9. def chainPaths[A, B](first: Path[A], second: Path[B])(implicit tupler: Tupler[A, B]): Path[Out]
    Definition Classes
    Urls → Urls
  10. def choiceTagged[A, B](taggedA: DocumentedCoProd, taggedB: DocumentedCoProd): DocumentedCoProd
    Definition Classes
    JsonSchemas → JsonSchemas
  11. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  12. def combineQueryStrings[A, B](first: QueryString[A], second: QueryString[B])(implicit tupler: Tupler[A, B]): QueryString[Out]
    Definition Classes
    Urls → Urls
  13. def defaultDiscriminatorName: String
    Definition Classes
    JsonSchemas
  14. final def delete[UrlP, HeadersP, Out](url: Url[UrlP], headers: RequestHeaders[HeadersP])(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  15. lazy val doubleJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  16. def doubleQueryString: QueryStringParam[Double]
    Definition Classes
    Urls → Urls
  17. implicit def dummyPathToUrl[A](p: Path[A]): Url[A]
    Definition Classes
    Urls
  18. def emptyHeaders: DocumentedHeaders
    Definition Classes
    Requests → Requests
  19. def emptyRecord: DocumentedRecord
    Definition Classes
    JsonSchemas → JsonSchemas
  20. def emptyRequest: None.type
    Definition Classes
    Requests → Requests
  21. def emptyResponse(docs: Documentation): Response[Unit]
    Definition Classes
    Responses → Responses
  22. def endpoint[A, B](request: Request[A], response: Response[B], summary: Documentation = None, description: Documentation = None, tags: List[String] = Nil): Endpoint[A, B]
    Definition Classes
    Endpoints → Endpoints
  23. def enumeration[A](values: Seq[A])(encode: (A) ⇒ String)(implicit tpe: JsonSchema[String]): DocumentedEnum
    Definition Classes
    JsonSchemas → JsonSchemas
  24. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  26. def field[A](name: String, docs: Documentation)(implicit tpe: DocumentedJsonSchema): DocumentedRecord
    Definition Classes
    JsonSchemas → JsonSchemas
  27. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  28. lazy val floatJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  29. final def get[UrlP, HeadersP, Out](url: Url[UrlP], headers: RequestHeaders[HeadersP])(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  30. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  31. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  32. def header(name: String, docs: Documentation): RequestHeaders[String]
    Definition Classes
    Requests → Requests
  33. lazy val intJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  34. def intQueryString: QueryStringParam[Int]
    Definition Classes
    Urls → Urls
  35. def intSegment: Segment[Int]
    Definition Classes
    Urls → Urls
  36. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  37. def jsonRequest[A](docs: Documentation)(implicit codec: JsonSchema[A]): Option[DocumentedRequestEntity]
    Definition Classes
    JsonSchemaEntities → JsonEntities
  38. def jsonResponse[A](docs: Documentation)(implicit codec: JsonSchema[A]): List[DocumentedResponse]
    Definition Classes
    JsonSchemaEntities → JsonEntities
  39. def lazySchema[A](schema: ⇒ DocumentedJsonSchema, name: String): DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  40. lazy val longJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  41. def longQueryString: QueryStringParam[Long]
    Definition Classes
    Urls → Urls
  42. def longSegment: Segment[Long]
    Definition Classes
    Urls → Urls
  43. def mapJsonSchema[A](implicit jsonSchema: DocumentedJsonSchema): DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  44. def named[A, S[_] <: DocumentedJsonSchema](schema: S[A], name: String): S[A]
    Definition Classes
    JsonSchemas → JsonSchemas
  45. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  46. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  47. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  48. def openApi(info: Info)(endpoints: DocumentedEndpoint*): OpenApi

    info

    General information about the documentation to generate

    endpoints

    The endpoints to generate the documentation for

    returns

    An OpenApi instance for the given endpoint descriptions

    Definition Classes
    Endpoints
  49. def optField[A](name: String, docs: Documentation)(implicit tpe: DocumentedJsonSchema): DocumentedRecord
    Definition Classes
    JsonSchemas → JsonSchemas
  50. def optHeader(name: String, docs: Documentation): RequestHeaders[Option[String]]
    Definition Classes
    Requests → Requests
  51. implicit def optionalQueryStringParam[A](implicit param: QueryStringParam[A]): QueryStringParam[Option[A]]
    Definition Classes
    Urls → Urls
  52. val path: Path[Unit]
    Definition Classes
    Urls
  53. final def post[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], headers: RequestHeaders[HeadersP])(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  54. final def put[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], headers: RequestHeaders[HeadersP])(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  55. def qs[A](name: String, docs: Documentation)(implicit value: QueryStringParam[A]): QueryString[A]
    Definition Classes
    Urls → Urls
  56. def refineQueryStringParam[A, B](pa: QueryStringParam[A])(f: (A) ⇒ Option[B])(g: (B) ⇒ A): QueryStringParam[B]
    Definition Classes
    Urls → Urls
  57. def refineSegment[A, B](sa: Segment[A])(f: (A) ⇒ Option[B])(g: (B) ⇒ A): Segment[B]
    Definition Classes
    Urls → Urls
  58. implicit def repeatedQueryStringParam[A, CC[X] <: Iterable[X]](implicit param: QueryStringParam[A], factory: scala.collection.compat.Factory[A, CC[A]]): QueryStringParam[CC[A]]
    Definition Classes
    Urls → Urls
  59. implicit lazy val reqEntityInvFunctor: InvariantFunctor[RequestEntity]
    Definition Classes
    Requests → Requests
  60. implicit lazy val reqHeadersInvFunctor: InvariantFunctor[RequestHeaders]
    Definition Classes
    Requests → Requests
  61. implicit lazy val reqHeadersSemigroupal: Semigroupal[RequestHeaders]
    Definition Classes
    Requests → Requests
  62. def request[A, B, C, AB, Out](method: Method, url: Url[A], entity: RequestEntity[B] = emptyRequest, headers: RequestHeaders[C] = emptyHeaders)(implicit tuplerAB: Tupler.Aux[A, B, AB], tuplerABC: Tupler.Aux[AB, C, Out]): Request[Out]
    Definition Classes
    Requests → Requests
  63. def segment[A](name: String, docs: Documentation)(implicit A: Segment[A]): Path[A]
    Definition Classes
    Urls → Urls
  64. def staticPathSegment(segment: String): Path[Unit]
    Definition Classes
    Urls → Urls
  65. lazy val stringJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  66. def stringQueryString: QueryStringParam[String]
    Definition Classes
    Urls → Urls
  67. def stringSegment: Segment[String]
    Definition Classes
    Urls → Urls
  68. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  69. def taggedRecord[A](recordA: DocumentedRecord, tag: String): DocumentedCoProd
    Definition Classes
    JsonSchemas → JsonSchemas
  70. def textRequest(docs: Documentation): Option[DocumentedRequestEntity]
    Definition Classes
    Requests → Requests
  71. def textResponse(docs: Documentation): Response[String]
    Definition Classes
    Responses → Responses
  72. def toSchema(jsonSchema: DocumentedJsonSchema): Schema
  73. def toString(): String
    Definition Classes
    AnyRef → Any
  74. implicit lazy val urlInvFunctor: InvariantFunctor[Url]
    Definition Classes
    Urls → Urls
  75. def urlWithQueryString[A, B](path: Path[A], qs: QueryString[B])(implicit tupler: Tupler[A, B]): Url[Out]
    Definition Classes
    Urls → Urls
  76. lazy val uuidJsonSchema: DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  77. def uuidQueryString: QueryStringParam[UUID]
    Definition Classes
    Urls → Urls
  78. def uuidSegment: Segment[UUID]
    Definition Classes
    Urls → Urls
  79. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  80. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  81. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  82. def wheneverFound[A](response: Response[A], notFoundDocs: Documentation): Response[Option[A]]
    Definition Classes
    Responses → Responses
  83. def withDiscriminator[A](tagged: DocumentedCoProd, discriminatorName: String): DocumentedCoProd
    Definition Classes
    JsonSchemas → JsonSchemas
  84. def xmapJsonSchema[A, B](jsonSchema: DocumentedJsonSchema, f: (A) ⇒ B, g: (B) ⇒ A): DocumentedJsonSchema
    Definition Classes
    JsonSchemas → JsonSchemas
  85. def xmapRecord[A, B](record: DocumentedRecord, f: (A) ⇒ B, g: (B) ⇒ A): DocumentedRecord
    Definition Classes
    JsonSchemas → JsonSchemas
  86. def xmapTagged[A, B](tagged: DocumentedCoProd, f: (A) ⇒ B, g: (B) ⇒ A): DocumentedCoProd
    Definition Classes
    JsonSchemas → JsonSchemas
  87. def zipRecords[A, B](recordA: DocumentedRecord, recordB: DocumentedRecord): DocumentedRecord
    Definition Classes
    JsonSchemas → JsonSchemas
  88. object DocumentedJsonSchema
    Definition Classes
    JsonSchemas
  89. object Delete extends Method with Product with Serializable
    Definition Classes
    Methods → Methods
  90. object Get extends Method with Product with Serializable
    Definition Classes
    Methods → Methods
  91. object Options extends Method with Product with Serializable
    Definition Classes
    Methods → Methods
  92. object Patch extends Method with Product with Serializable
    Definition Classes
    Methods → Methods
  93. object Post extends Method with Product with Serializable
    Definition Classes
    Methods → Methods
  94. object Put extends Method with Product with Serializable
    Definition Classes
    Methods → Methods

Inherited from JsonSchemas

Inherited from Endpoints

Inherited from Responses

Inherited from Requests

Inherited from Methods

Inherited from Urls

Inherited from algebra.JsonSchemas

Inherited from algebra.JsonEntities

Inherited from algebra.Endpoints

Inherited from algebra.Responses

Inherited from algebra.Requests

Inherited from algebra.Methods

Inherited from algebra.Urls

Inherited from AnyRef

Inherited from Any

Ungrouped