Building adaptive apis for mobile apps to consumer services. Practices and patterns for building abstractions between mobile apps and services that allow for best practices and release differential between mobile apps and service backends
5. Tightly coupled
Mobile consumers get
tightly bound to the data
and payload format served
by legacy systems. Legacy
services are often designed
for high bandwidth, low
latency. Tends to be chatty.
7. Existing multiple consumers
Multiple consumers already
exist in ecosystem. They are
often tightly bound to data
sources. Change at data
source will often have ripple
effects downstream.
8. No control over data source
Legacy systems are outside
the control of consumer
apps. Their evolution and
technology choices are
made independently and
needn’t always consider
consumer side benefits and
constraints.
12. Distill what is relevant
Adaptive API helps you
exclude extra bits of
information from verbose
services. This optimizes
payload over potentially
slow mobile networks
15. Bridge to new age paradigms
Help traditional web
services make a leap by
creating RESTful wrappers.
16. Independent evolution
Allow legacy source to evolve at a pace that is
different from that of consumers. Versioning
adaptive API allows decoupled releases between
both.
18. When is it an overkill?
■ When you own / control data sources
■ Limited or no other consumers
■ When existing services have considerations for mobile
networks
■ When response time is critical **