Web + mobile front ends
One back end feeds multiple clients.
A REST API is a web interface that exposes resources over HTTP using stable URLs, verbs (GET, POST, PUT, PATCH, DELETE), and representations—usually JSON. Inspired by Roy Fielding’s architectural style, it favors server-side statelessness and clear HTTP semantics. It is the most common contract between a front end, a mobile app, and a business back end.
In one sentence
A REST API lets clients and servers talk through HTTP and addressable resources.
Key points
Term at a glance
REST (Representational State Transfer) is a style—not a single ISO standard: resource identification, manipulation via representations, self-descriptive messages, and ideally hypermedia. In practice, “REST API” often means a well-structured HTTP JSON API, even when not every Fielding constraint is strict.
For an SME, the REST API is the hinge between the site, mobile app, ERP, or partner. Poor design (verbs in URLs, sticky sessions, opaque errors) slows every integration and raises support cost.
Security (TLS, OAuth 2.0 / JWT, rate limiting) and versioning (/v1) are as much the API product as business endpoints.
Name business entities (customers, orders, invoices) and relations instead of scattered RPC-style actions.
Request/response schemas, error codes, pagination, and filters—ideally described in OpenAPI.
AuthN/AuthZ, logs, latency metrics, and quotas.
Prefer backward-compatible changes; put breaking changes behind a new major version.
A Montreal manufacturer exposes GET /v1/orders/{id} and PATCH /v1/orders/{id}/status so the customer portal and drivers’ app share the same state. JSON responses include an ETag; the mobile client skips reloading the full order when nothing changed. Support tickets asking “where is my order?” drop.
One back end feeds multiple clients.
Exchange catalogs, stock, or leads with third-party systems.
Scripts and ops tools consume the same endpoints as the product.
Synchronous service-to-service calls over HTTP JSON.
| REST API | GraphQL | |
|---|---|---|
| Request shape | Multiple resource endpoints + HTTP verbs | One endpoint; client describes needed fields |
| HTTP caching | Natural on GET (URI, ETag) | Harder; often application-level cache |
| Learning curve | Low if you know HTTP | Schema, resolvers, dedicated tooling |
| Best fit | Stable contracts, classic integrations | Clients with highly variable data needs |
As soon as a site, app, or partner must read your stock, appointments, or customers, you need a stable contract. A clear REST API lowers every integration’s cost, speeds partnerships, and avoids rebuilding the same logic in each channel.
No. It is an architectural style on top of HTTP. We call it a REST API when those constraints are applied (more or less strictly).
JSON is the de facto default, but REST allows other representations (XML, etc.) via content negotiation.
Prefer backward-compatible additions; reserve /v2 for breaking changes and publish an end-of-support date.
No. REST fits synchronous request/response; queues (or events) remain useful for async decoupling.
Need to expose data to a site, app, or partner? We design documented, secure, evolvable REST APIs.
Talk about your API