A consumer constraint is a limitation imposed by an API consumer’s capabilities, requirements, habits, or operating conditions. Identifying these constraints keeps an API usable for its intended consumers and implementable by its providers. section 14.1.1 section 14.1.2
Legacy banking consumer
A banking system that supports only POST and XML cannot use a REST API requiring multiple HTTP methods and JSON. Supporting that consumer may require design trade-offs rather than an idealized interface. section 14.1.1
Check for consumer constraints throughout API design:
- Ask whether consumers differ from the capabilities assumed by usual API practices. section 14.1.2
- Examine whether data, operations, communication patterns, infrastructure, or business conditions require another design. section 14.1.2
- Prefer a practical trade-off when consumer limitations make an otherwise elegant design unusable. section 14.1.1
