How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

What is the difference between REST and RPC?

architecture Design & Architecture Updated August 12, 2026

Short answer

REST thinks in resources and standard HTTP methods; RPC thinks in named actions with parameters. Neither is obsolete — RPC has come roaring back through gRPC.

RPC is the older idea by decades: call a named procedure on a remote machine as if it were local. You invoke an operation with parameters and get a result. POST /createInvoice. The mental model is actions.

REST inverts that. The mental model is resources with addresses, and a small fixed set of verbs that mean the same thing everywhere. POST /invoices. The uniformity is what makes REST governable at scale — a developer who has used one of your resource collections can predict the next one.

The industry told itself a story where REST replaced RPC and that was progress. The story is wrong. API styles are not a linear march; they are a toolbox of enduring models, each suited to different problems. RPC shaped the early web API era through XML-RPC and JSON-RPC, receded during the REST years, and came back at full strength as gRPC, which is CORBA’s direct intellectual descendant done properly.

Practically: use resource-oriented REST for public, broadly consumed, long-lived interfaces where predictability and cacheability matter. Reach for RPC-shaped operations when the thing you are exposing genuinely is an action rather than a resource — and accept that most real APIs have a few of those and are better for admitting it than for contorting them into fake resources.

Go deeper in the guidance

This answer is distilled from the API Evangelist guidance catalog — the long-form treatment of each topic, with its own citations back into sixteen years of writing.

Read the original writing

The posts on apievangelist.com this answer is built on.