liveBook · Manning

Client

As explained in Automating API Delivery

Client code is software that calls an API according to its defined interface.

Client code is the application or service code that makes requests to an API through its published interface. The people building that integration are API consumers. For an API product, a usable interface is only part of the package: documentation and support help consumers integrate and keep using it. section 1.4 section 1.3

In a microservices setup, an API gateway can expose the product interface to clients and route requests to backend services. An OpenAPI definition describes the operations and resources available at that interface; a developer portal publishes the reference and guides clients need to use it. section 1.4

The definition supports several parts of a client integration workflow:

  • Generate client code from the API definition rather than starting every integration by hand. section 1.6
  • Mock the OpenAPI definition so integration code and acceptance tests can be developed in parallel with implementation. section 1.6
  • Check provider responses against the published schema. A passing schema test establishes schema conformance, not that response values are correct or that the client behaves correctly. section 7.1

A response the client consumes

Suppose a client requests a product. The published response schema requires an `id` formatted as a UUID and permits a `name` string of 1–50 characters. A schema test can fail if the provider returns a response that violates those constraints; it does not test what the client does with a valid response. section 7.1

Figure 1.3 In a microservices architecture, API gateways define API products and route requests to backend microservices that implement the business capabilities.
figure

The gateway diagram locates the client-facing API product interface between API consumers and backend microservices. section 1.4

How Automating API Delivery covers it

How deep it goes
Defines the client as requester and identifies code generation and provider schema checks, without detailing client implementation.
Examples
Uses a product response schema with a UUID `id` and length-constrained `name` to illustrate what a client receives.
What it assumes
Assumes familiarity with software applications while defining API consumers, gateways, OpenAPI definitions, and providers.
What you can do after
Evaluate/understand it: distinguish client requests from provider responses and place generated clients and schema tests in an integration workflow.
How it connects
Links API gateways, OpenAPI definitions, developer portals, and schema tests to consumer–provider interaction.

Also explained in

Compare how 15 books explain client →

Related concepts

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