gRPC
gRPC is a high-performance protocol for calls between services. Messages are defined in a schema, transmitted in a compact binary format rather than as text, and carried over a connection that stays open — which makes it markedly faster and lighter than an equivalent REST call.
It is at home in service-to-service traffic inside your own infrastructure, particularly where volume is high or the latency budget is tight. It is a poor fit for a public API consumed by third parties, who expect something they can call from a browser or a terminal without generating a client first.
A common and sensible arrangement is gRPC between internal services and REST at the edge, so the outside world gets the interface it expects and the inside gets the efficiency.