liveBook · Manning

Api-first architecture

As explained in Platform Engineering on Kubernetes

A software development approach in which an API is designed as the primary interface for accessing a service before client implementations are built.

API-first architecture makes an API the primary interface for accessing a service. The API exposes available resources, configuration parameters, deployment regions, and service functionality before client implementations are built. section 1.1.3

Effective API-first platforms make the interface an operational contract:

  • Assign a team to define, own, evolve, and limit the API’s responsibilities. section 1.1.3
  • Support dashboards, CLIs, and SDKs as client layers over the API, while recognizing that SDKs can create language and provider dependencies. section 1.1.3
  • Use early API-only releases to let users experiment, test, and provide feedback before official service announcements. section 1.1.3
  • Treat APIs as platform contracts that support automated production workflows and resource provisioning. section 1.1.5
Figure 1.4 Cloud providers’ SDKs, CLIs, and Dashboard clients

Compare SDKs, CLIs, and dashboard clients as different ways to consume the same cloud-provider capabilities. section 1.1.3

How Platform Engineering on Kubernetes covers it

How deep it goes
Defines exposed capabilities, ownership, lifecycle, and client tradeoffs, but stops short of prescribing cross-provider API standards.
Examples
Uses cloud-provider resources, configuration parameters, deployment regions, beta APIs, SDKs, CLIs, and dashboards as examples.
What you can do after
Evaluate/understand cloud platforms by inspecting their APIs, client layers, ownership model, and automation capabilities.
How it connects
Connects APIs with SDKs, CLIs, dashboards, platform engineering, production workflows, and Kubernetes.

Also explained in

Compare how 3 books explain api-first architecture →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Platform Engineering on Kubernetes. The section links point to the parts of the book it draws on.