REST is the proven, widely adopted approach to clear, resource-oriented interfaces over familiar HTTP. Each resource gets its own URL, and the HTTP method says what should happen, so read, create, update or delete. Because the calls follow the standard this way, they are understood out of the box by browsers, caches and intermediaries. A well-designed REST API is predictable, pleasant to document and straightforward to integrate into other systems.
More in the documentationWe choose REST whenever an interface is meant to be used by third-party systems or external teams. The conventions are familiar to everyone, so the integration needs little explanation and works with standard tooling. Alongside it we ship an OpenAPI description from which docs and clients can be generated directly.
curl https://api.example.com/users/42
curl -X POST https://api.example.com/users \
-H "content-type: application/json" \
-d '{"name": "Mia"}'Good to know
The HTTP methods carry meaning you should put to use: PUT and DELETE are idempotent, so the same call twice changes no more than once. That is what makes safe retries after network errors possible in the first place, which is why we map mutating actions accordingly.
More tools we work with in the same area.
Node.js
A JavaScript runtime for performant, event-driven servers.
NestJS
A structured Node framework for clean, testable backend architectures.
Express
A lean, flexible framework for APIs and web services.
Socket.IO
Bidirectional realtime communication for chats, live data and more.
GraphQL
Flexible APIs that deliver exactly the data your client needs.
tRPC
Type-safe APIs without schema duplication, end-to-end in TypeScript.
You don't have to decide that, it's our job. Tell us about your plans.