As much as REST and HTTP1.1 go hand in hand, technically REST is independent of HTTP (and its GET, POST, PUT... methods).
So I think it is possible to apply REST architectural style/constraints using GRPC.
I think a lot of the "GRPC vs REST" comparisons I've seen are wrong in this regard.
Is there a REST architectural style constraint that we cannot apply using GRPC?
REST
stands for "Representational State Transfer", whilegRPC
stands for "gRPC Remote Procedure Calls" (yes, it's a recursive acronym).From the name alone, you can see that those are not meant to do the same thing:
REST
is meant to transfer state (POST the state of a new resource, GET to fetch the state, ...)gRPC
is meant to send commands (or, as it were, calling procedures)You can absolutely build a set of procedures in
gRPC
to fetch and update the state of resources, but it would be difficult to call thatREST