Are your APIs becoming too complicated and ad hoc? Feeling the need to set up policies for your API? This presentation will give you strategy options for designing and developing your APIs.
4. Inspired Software Services. Measurable Results.
What is an API and a Service?
• Many complex and not always agreed upon definitions for a Service
• A Service is a set of functionality that can be reused by multiple consumers.
• An Application Programming Interface (API) provides a programmatic interface to a Service
• APIs have been used since the early days of programming to define how one part of a
system talks to another part
• A Service has one or more Consumers: Web Applications, Mobile Apps, other Services.
Consumer 1
Service
Consumer 2
API
5. Inspired Software Services. Measurable Results.
Consumers Services and Data
What is a Web API / Service?
Data
Web Application
Mobile App
IOT Device
External Program
6. Inspired Software Services. Measurable Results.
What is a Web API and Service?
• Provides secure access to a Business’s Offerings and Data
• Via standard Web Protocols
• REST: HTTP, JSON
• Web Services: SOAP, XML
• And can be consumed by any Application or Program that can make
an internet request
• Modern architecture is moving toward MicroServices.
• “API” has evolved to mean the Service itself
In the modern internet, API and Service have specific meanings …
7. Inspired Software Services. Measurable Results.
Microservices
• Monolithic Services
• Access to each entity’s
internals and data
• Ball of Mud Maintenance
Problem
• Must deploy and scale as
a single large unit
• Microservices
• Smaller services that
work together
• Separately deployable
and scalable
• Much simpler to maintainMicroservices is the latest term for good service design.
Monolithic Web Service
Orders
Order
Details
Customers
Inventory
Product
Catalog
Self Help
Help
Desk
Shopping
Cart
Users
etc.
etc.
Shipping
Warranty
API
ShippingShopping
Cart
Order
Orders
Order
Details
Shopping
Cart
Shipping
API API API
Inventory
API
Inventory
8. Inspired Software Services. Measurable Results.
Home Security Example
• Visitor comes up to a door at a home while the home owner is at work
• Security Camera detects Visitor and notifies the home owner via text
message on her Smartphone
• Before querying the home owner, the security system checks to see if this is
a person the home owner has recognized before
• The home owner reads the text message, opens the Web Application on her
desktop, and looks at the image of the visitor.
• The home owner then …
• Doesn’t recognize the visitor, uses the uses the application to request security be
alerted
• Recognizes the visitor and selects to unlock the door.
• The door lock gets notified and unlocks the door.
9. Inspired Software Services. Measurable Results.
API /
Services
Home Security Example – API Calls
Facial
Recognition
Send Text to
Home Owner
Detect
Visitor
Gets
Notification
Review
Visitor Image
Unlock the
Door
Sends security
alert
Get Unlock
Door Cmd Data
Read Texts
Alert
Security
Notify
Home
Owner
Send
Unlock
Command
Save
Video
Media
Data
10. Inspired Software Services. Measurable Results.
API / Service Summary
• The terms API and Services have become synonymous.
• Web Services provide common functionality to multiple
consumers, including other services
• Standards based Web APIs are used by modern user interfaces
to access Web Services and their associated Data
• Customer demand is increasing for a business’ Services and data
outside the applications supplied by the business
11. At some point a company realizes it needs to develop
a cohesive strategy regarding it’s APIs
API / Service Strategy
12. Inspired Software Services. Measurable Results.
Drivers for creating an API Strategy
• API Growing Pains
• Specific problems with APIs
• Maintenance costs rise significantly
• Security issues
• New Applications
• Desire to build a modern application using well designed, shareable
API architecture
• Join the API Economy
• Monetize Services or Data by providing to customers, third parties,
suppliers, etc.
13. Inspired Software Services. Measurable Results.
API Security - “All” APIs are public facing
Data
Data
Data
Web Application
Mobile App
IOT Device
Perceived Public Facing Actual “Public” Facing
14. Inspired Software Services. Measurable Results.
API Security – Tips
• Remember, an API also exposes any back end system it accesses
(e.g., Salesforce, Financial Systems)
• Authorize an authenticated user to only access data and take actions
the are entitled to perform
• Consider what needs to be protected
• Be sure to consider multi-tenancy in your API
• Use Open, Cross Platform standards such as OpenID and OAuth 2.0
• Use third party providers wherever economically possible
All public facing APIs need to be secured like any public facing application
15. Inspired Software Services. Measurable Results.
API Growing Pains
APIs built for individual applications can
experience growing pains as the number of
APIs increases
16. Inspired Software Services. Measurable Results.
Organically-grown, separate APIs can eventually become a problem
Data
Data
Data
Web Application
Mobile App
IOT Device
External Program
17. Inspired Software Services. Measurable Results.
Consolidating APIs
• Create an API Roadmap
• Implement a common set of APIs using a Microservices Design
• Subject based (Customer, User, Order, etc.)
• Make the common API a first class citizen peer of the
consuming applications
• Migrate applications to the common API over time
• $$ - Consider the ROI carefully
• Starting a new application is an opportunity to design and
implement a common API
18. Inspired Software Services. Measurable Results.
Application Specific APIs
API Gateway Architecture combined with MicroServices can help expose a
business’ services and data to the API Economy
Data
Company Applications
Web Application Mobile App Internet Device
Internal MicroServices
19. Inspired Software Services. Measurable Results.
API Best Practices
• API as a First Class Citizen – The API/Service provides reusable business logic
and data. The User Interface just provides access to that the API/Services
business logic.
• Use or Move to a Microservices Architecture – Use a single service for a given
subject area (Customer, Order, etc.)
• Honor Service Boundaries. Access to a service is via the API. Don’t directly
access a Service’s internals or data.
• Use consistent, REST based-conventions for defining APIs. If developers don’t like
your API they won’t use it.
• Low trust model – Validate everything coming from an external application
• Test APIs Independently - Have QA focus heavily on API validation using
automated tests
• Organize for API Development - Consider a separate API team, but know this is not
always the best option as it may introduce project delays
• Create a version release strategy to enable backward compatibility
21. Inspired Software Services. Measurable Results.
API Monetization
Businesses are learning that their Data and
Services have intrinsic value beyond the
applications they provide to use it.
APIs offer an opportunity to open new Sales
Channels
22. Inspired Software Services. Measurable Results.
API Growth Trends
As of 2017,
ProgrammableWeb.com
has over 18,000 APIs in its
catalog.
23. Inspired Software Services. Measurable Results.
The API Economy
“The API economy is an enabler for turning a
business or organization into a platform”
“We live in an API economy, a set of business models and channels based on secure access
to functionality and exchange of data. APIs make it easier to integrate and connect
people, places, systems, data, things and algorithms, create new user experiences, share
data and information, authenticate people and things, enable transactions and
algorithms, leverage third-party algorithms, and create new product/services and
business models.”
-- “Welcome to the API Economy”, Gartner Group
24. Inspired Software Services. Measurable Results.
Business Drivers
• New Channel for selling Services and Data
• New Offerings
• Major changes to existing Offerings
• Major changes to Back Office systems
• Streamlining the purchase and delivery processes
• Cost Containment – reduce maintenance, enhancement costs
26. Inspired Software Services. Measurable Results.
Internal MicroServicesInternal MicroServices
External Consumers
API Gateway Architecture combined with MicroServices can help expose a
business’ services and data to the API Economy
API Gateway
External Program
Data
Company Applications
Web Application Mobile App Mobile AppWeb Application Internet Device
27. Inspired Software Services. Measurable Results.
API Gateways Provide
• Service Level Agreement management
• Quota and Rate Limits, Thresholds, etc.
• API Consolidation
• Security using open protocols
• Cloud Scalability
• Deployment / Versioning
• Discovery
28. Inspired Software Services. Measurable Results.
Take Aways
• APIs and Services have become first class citizens in the IT
World
• When starting new applications or major enhancements, consider
using or migrating to well designed API/Service using
MicroServices principles
• Perform security risk assessments on you current APIs
• Consider both the revenue and cost management benefits of
joining the API Economy as part of your Digital Strategy
29. Inspired Software Services. Measurable Results.
Contact Us
Tony Timbol
Vice President, Sales, SPC4, CSM
t.timbol@premiosgroup.com
Mobile: 904-614-0931
Office: 610-644-2856
Shandi P. Fischer
Regional Sales Director
s.fischer@premiosgroup.com
Mobile: 970-690-4982
Office: 303-485-1880
Premiosgroup.com