Effect CommunityEC
Effect Community13mo ago
5 replies
Gary

Generating OpenAPI Schema from HttpGroup in Effect Typescript Library

How can I generate an OpenAPI schema from a HttpGroup?
export const usersApiSchema = HttpApiGroup.make("users")
  .add(
    HttpApiEndpoint.post("create", "/api/users")
      .addSuccess(User)
      .setPayload(
        Schema.Struct({
          username: Schema.String,
          email: Schema.String,
          password: Schema.String,
        })
      )
      .addError(UserAlreadyExists)
  )
  .add(
    HttpApiEndpoint.get("get")`/api/users/${UserIdParam}`
      .addSuccess(User)
      .addError(NotFound)
      .middleware(AuthorizationMiddleware)
  )
  .addError(Unauthorized)
  .addError(InternalError)
  .annotateContext(
    OpenApi.annotations({
      title: "Users API",
      description: "API for managing users",
}],
      version: "1.0.0",
    })
  )


I added the annotations for OpenApi, I but I didn't find any docs in platform on how to create this API which I defined above.
Was this page helpful?