restate
restate copied to clipboard
Consider replacing the admin rest interface with rpc
We should consider replacing the admin rest interface with gRPC/Connect.
Reasons:
- The OpenAPI code generation tooling for our admin rest api is currently broken, and so far we couldn't find good mantained libraries for doing that with axum. If we replace axum, there are some better alternatives out there with openapi codegen out of the box, although it's still quite some work
- Writing the OpenAPI manually it's cumbersome, and at the speed we're moving now, it's going to get easily outdated soon.
- We're moving towards having cli and ui and tools for managing restate, so the "curl" experience is gonna be less relevant.
- Neverthless, by implementing the rpc interface using gRPC/Connect layer as we do for the ingress, users will still be able to "curl" the API without any gRPC tools. The UI will also be able to connect to that, either using fetch Connect or even generating the client using the buf tools.