gRPC-Gateway is a protoc plugin that generates a reverse-proxy server translating RESTful HTTP APIs into gRPC calls.
The tool solves the problem of serving both gRPC and RESTful JSON interfaces from a single service definition. It reads protobuf service definitions annotated with google.api.http directives and generates a reverse-proxy server that converts incoming HTTP requests into gRPC calls, then translates the responses back to JSON. This approach lets you maintain a single backend service while exposing it through both gRPC and REST protocols without duplicating business logic.
Teams should adopt this tool when they need to support REST clients alongside gRPC clients, whether for backward compatibility with existing REST consumers, supporting languages with limited gRPC tooling, or meeting organizational standards around RESTful APIs. It suits projects already using protocol buffers and gRPC where adding HTTP+JSON support is a requirement. The tool requires only minimal configuration—adding HTTP annotations to your existing protobuf definitions—making it a low-friction addition to established gRPC services.
The project maintains active continuous integration with automated builds. Development activity shows consistent engagement with the codebase through regular updates and maintenance of the core proxy generation and routing logic.