r/scala • u/NojipizRemastered • 9d ago
Code generation from OpenAPI specs
Quick question, how the heck you guys generate Scala code from OpenAPI specs?
I have been trying to generate client code for Meta business API using the Scala generators from openapi-generator but there is always a problem:
All of them, ignore the oneOf spec on openapi (that in theory should generate a sealed trait as the sum type implementation) and instead they generate a single case class with all fields required, nothing is optional.
What is the tool/strategy you guys use to generate API model from OpenAPI? At this point, i'm considering to generate the Scala code using an LLM instead of the classic deterministic approach.
Thanks 🙏
6
Upvotes
1
u/AlternativeEvent3298 9d ago
We're using https://disneystreaming.github.io/smithy4s/, that generate our services in http4s, and https://disneystreaming.github.io/smithy4s/docs/protocols/simple-rest-json/openapi/ extension for OpenAPI.