tapir icon indicating copy to clipboard operation
tapir copied to clipboard

Rapid development of self-documenting APIs

Results 292 tapir issues
Sort by recently updated
recently updated
newest added

Tapir version: 1.10.5 Scala version: 2.12.12 **Describe the bug** The `TapirCodecEnumeratum` contains two methods ```scala def plainCodecEnumEntryDecodeCaseInsensitive[E

Resolves #2518 Currently tests fail because the incoming ServerRequest contains the multiple parts, but when calling zio.http.Request.body.[asMultipartFormStream|asMultiPartForm] they only ever return the single, first part. Seems to be a bug...

We encountered an issue recognizing our endpoint named 'import-jobs' after updating to the latest Tapir version. As a result, all tests for this endpoint consistently fail and return a 405...

let's say my api is supposed to return two "happy" path scenarios: - 200 - 204 I don't want to complicate my service logic with handling the 204 case. instead...

Tapir version: 1.9.9 ZIO-Http version: 3.0.0-RC4 Scala version: 3.3.3 **Describe the bug** ```scala def websocketBroken(_u: Unit): ZIO[Any, Unit, ZioStream[Throwable, String] => ZioStream[Throwable, String]] = ZIO.succeed(_ => ZStream.succeed("Answer")) val socketApp =...

## About this PR šŸ“¦ Updates * [com.tethys-json:tethys-core](https://github.com/tethys-json/tethys) * [com.tethys-json:tethys-derivation](https://github.com/tethys-json/tethys) from `0.26.0` to `0.28.3` ## Usage āœ… **Please merge!** I'll automatically update this PR to resolve conflicts as long as...

dependency
automerge

Tapir version: 1.20.0 Scala version: 3.4.0 **Describe the bug** Hi! šŸ––šŸ» Preflight requests are not processed by the server: 405 Method Not Allowed is returned instead of 204 No Content...

Currently, `Codec#json()`, used by `TapirJsonCirce`, will interpret an output type of `Option[*]` as designating an optional body: If the value is `None`, the response will override the underlying JSON codec's...

Given this code I have some doubts ```scala // user/{id} val getUser = endpoint .securityIn(sttp.tapir.auth.bearer[AuthEncodedToken]()) .in("user") .in(path[UserId]("id")) val ep = getUser .serverSecurityLogic(token => decodeAndValidateToken(token)) .serverLogic(token => userId => canAccessOrForbidden(token, userId)...

As reported in https://softwaremill.community/t/hiding-input-body-in-openapi-generation/380 > I have custom security authenticating, which require many fields from (original) request. The problem I’m now facing is that security part is affecting OpenAPI schema....

bug
openapi