SlideShare uma empresa Scribd logo
1 de 16
Three Flavours of APIs
aka API Design Patterns
Chris Phillips
IBM Master Inventor
2IBM Think 2020
Who I am
Chris Phillips
IBM Master Inventor
API Guru
Author of the API Connect White Paper for v10 and v2018
IBM Cloud Integration Architect for the WW SWAT Team
IBM 12.5 years
Nearly 11 years in Integration
Blog: http://chrisphillips-cminion.github.io
LinkedIn: https://www.linkedin.com/in/chrisjphillips
Twitter: @cminion
2
Africa
© FreePowerPointMaps.com
South
America
Europe
North
America
Asia
Middle
East
Oceania
World by FreeVectorMaps.com
What is an API?
The exposure of a function to disparate systems
What is an API?
Other terms I have heard
• Designed to simplify the consumption of functions (Pure-ism)
• Has a specification
• Designed to provide as much information as needed to
consume it
• Just another name for a service
• Designed to get someone promoted
What is an API?
• What is the objective?
• Simplify onboarding
• Tracking consumption
• Self Service
• Speed to market
• What is your budget?
• Money
• Personnel
• Time
Questions you need to ask yourself
Try not to ask yourself
• What are your KPIs?
System API /
Use Case API
Three Flavours of APIs
Resource API Consumer API
Three Flavours of APIs
Resource API
• 1 - 1 mapping between Service to API
• No interface change
• No data model change
• Requires knowledge of the data model before it can be consumed
IntegrationSystem
Resource API
ValidateSecurity
Rate Limiting Docs & Spec
👩
🏼
💻
👩
🏼
💻
👩
🏼
💻
Three Flavours of APIs
System or Use Case API
IntegrationSystem
• Many - Many mapping between APIs
• Designed around the services available
• APIs built around use cases and need
• Business need fulfilling and aggregation
• Minimal data model change
• Requires knowledge of the data model before it can be consumed
System API / Use Case API
Map
Interface Change
Validate
Security
Rate Limiting
Docs & Spec👩
🏼
💻
👩
🏼
💻
👩
🏼
💻
IntegrationSystem
Three Flavours of APIs
Consumer API
👩
🏼
Consumer API
Map
Interface Change
Validate
Security
Rate Limiting
Docs & Spec👩
🏼
👩
🏼
• Purist
• Consumer APIs are not for a single Consumer
• Consumer has no knowledge of the downstream system they are invoking
• Designed around easy completion of Use Cases
• Data Model is restricted to exactly what is needed
• Potentially complex data model changes
• Consumer does not know about interface changes or mapping in the API
Three Flavours of APIs
Summary
👩
👩
🏼
💻
👩
🏼
IntegrationSystem
System API / Use Case API
Map
Interface Change
Validate
Security
Rate Limiting
Docs & Spec
Consumer API
Map
Interface Change
Validate
Security
Resource API
ValidateSecurity
Rate Limiting Docs & Spec
Rate Limiting
Docs & Spec
Three Flavours of APIs
System API / Use Case APIResource API Consumer API
Cost to Provider Low
Complexity to Provider Low
Complexity to Consumer High
Cost to Provider Medium
Complexity to Provider Medium
Complexity to Consumer Medium
Cost to Provider High
Complexity to Provider High
Complexity to Consumer Low
Pros
• Quick
• Minimal Design
• Resource Focused
Cons
• Not really an API
• Assumes Prior Knowledge of
data models and integration
layer
Pros
• Some simplification for
consumers
Cons
• Assumes Prior Knowledge of
data models and integration
layer
Pros
• Designed around the consumer
need
• Quick to consume
• Purest
Cons
• Expensive
• Lots of Design
Examples
• Philips Hue
• Cloudant
Examples
• GraphQL
Examples
• PSD2
• Facebook
• Twitter
Three Flavours of APIs
System API / Use Case APIResource API Consumer API
Cost to Provider Low
Complexity to Provider Low
Complexity to Consumer High
Cost to Provider Medium
Complexity to Provider Medium
Complexity to Consumer Medium
Cost to Provider High
Complexity to Provider High
Complexity to Consumer Low
Pros
• Quick
• Minimal Design
• Resource Focused
Cons
• Not really an API
• Assumes Prior Knowledge of
data models and integration
layer
Pros
• Some simplification for
consumers
Cons
• Assumes Prior Knowledge of
data models and integration
layer
Pros
• Designed around the consumer
need
• Quick to consume
• Purest
Cons
• Expensive
• Lots of Design
Examples
• Philips Hue
• Cloudant
Examples
• GraphQL
Examples
• PSD2
• Facebook
• Twitter
How do I know which to
choose
• Who is your long-term target audience?
• How big is your long-term target audience?
• How skilled is your target audience?
• How many APIs need to be delivered to be considered
useful?
• How many APIs are going to be delivered?
Blog: http://chrisphillips-cminion.github.io
LinkedIn: https://www.linkedin.com/in/chrisjphillips
Twitter: @cminion

Mais conteúdo relacionado

Mais procurados

How to migrate an application in IBM APIc, and preserve its client credential
How to migrate an application in IBM APIc, and preserve its client credentialHow to migrate an application in IBM APIc, and preserve its client credential
How to migrate an application in IBM APIc, and preserve its client credentialShiu-Fun Poon
 
Overview of API Management Architectures
Overview of API Management ArchitecturesOverview of API Management Architectures
Overview of API Management ArchitecturesNordic APIs
 
INTERFACE, by apidays - Building contextualized API specifications by Boris ...
INTERFACE, by apidays  - Building contextualized API specifications by Boris ...INTERFACE, by apidays  - Building contextualized API specifications by Boris ...
INTERFACE, by apidays - Building contextualized API specifications by Boris ...apidays
 
Taming the FHIR of Healthcare with IBM's API Connect
Taming the FHIR of Healthcare with IBM's API ConnectTaming the FHIR of Healthcare with IBM's API Connect
Taming the FHIR of Healthcare with IBM's API ConnectNatalia Kataoka
 
HAM 1032 Combining the Power of IBM API Management and IBM Integration Bus
HAM 1032 Combining the Power of IBM API Management and IBM Integration BusHAM 1032 Combining the Power of IBM API Management and IBM Integration Bus
HAM 1032 Combining the Power of IBM API Management and IBM Integration BusKaren Broughton-Mabbitt
 
Achieving Microservices Maturity
Achieving Microservices MaturityAchieving Microservices Maturity
Achieving Microservices MaturityNordic APIs
 
API Design Best Practices & Tech Talk : API Craft Meetup @ Apigee
API Design Best Practices & Tech Talk : API Craft Meetup @ ApigeeAPI Design Best Practices & Tech Talk : API Craft Meetup @ Apigee
API Design Best Practices & Tech Talk : API Craft Meetup @ ApigeeAnil Sagar
 
Stream Processing in Action
Stream Processing in ActionStream Processing in Action
Stream Processing in ActionWSO2
 
API Management Demystified
API Management DemystifiedAPI Management Demystified
API Management DemystifiedManmohan Gupta
 
[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways Anywhere
[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways Anywhere[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways Anywhere
[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways AnywhereWSO2
 
Best Practices: The Role of API Management
Best Practices: The Role of API ManagementBest Practices: The Role of API Management
Best Practices: The Role of API ManagementAkana
 
Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...
Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...
Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...Nordic APIs
 
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)Lessons Learned from Building Enterprise APIs (Gustaf Nyman)
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)Nordic APIs
 
API Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsAPI Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsApigee | Google Cloud
 
ConnectorsForIntegration
ConnectorsForIntegrationConnectorsForIntegration
ConnectorsForIntegrationbthomps1979
 
API Management For Building Software Applications Powerpoint Presentation Slides
API Management For Building Software Applications Powerpoint Presentation SlidesAPI Management For Building Software Applications Powerpoint Presentation Slides
API Management For Building Software Applications Powerpoint Presentation SlidesSlideTeam
 
apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...
apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...
apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...apidays
 
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for EclipseCloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipsedmbtr3
 
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...Karen Broughton-Mabbitt
 

Mais procurados (20)

How to migrate an application in IBM APIc, and preserve its client credential
How to migrate an application in IBM APIc, and preserve its client credentialHow to migrate an application in IBM APIc, and preserve its client credential
How to migrate an application in IBM APIc, and preserve its client credential
 
Overview of API Management Architectures
Overview of API Management ArchitecturesOverview of API Management Architectures
Overview of API Management Architectures
 
How Secure Are Your APIs?
How Secure Are Your APIs?How Secure Are Your APIs?
How Secure Are Your APIs?
 
INTERFACE, by apidays - Building contextualized API specifications by Boris ...
INTERFACE, by apidays  - Building contextualized API specifications by Boris ...INTERFACE, by apidays  - Building contextualized API specifications by Boris ...
INTERFACE, by apidays - Building contextualized API specifications by Boris ...
 
Taming the FHIR of Healthcare with IBM's API Connect
Taming the FHIR of Healthcare with IBM's API ConnectTaming the FHIR of Healthcare with IBM's API Connect
Taming the FHIR of Healthcare with IBM's API Connect
 
HAM 1032 Combining the Power of IBM API Management and IBM Integration Bus
HAM 1032 Combining the Power of IBM API Management and IBM Integration BusHAM 1032 Combining the Power of IBM API Management and IBM Integration Bus
HAM 1032 Combining the Power of IBM API Management and IBM Integration Bus
 
Achieving Microservices Maturity
Achieving Microservices MaturityAchieving Microservices Maturity
Achieving Microservices Maturity
 
API Design Best Practices & Tech Talk : API Craft Meetup @ Apigee
API Design Best Practices & Tech Talk : API Craft Meetup @ ApigeeAPI Design Best Practices & Tech Talk : API Craft Meetup @ Apigee
API Design Best Practices & Tech Talk : API Craft Meetup @ Apigee
 
Stream Processing in Action
Stream Processing in ActionStream Processing in Action
Stream Processing in Action
 
API Management Demystified
API Management DemystifiedAPI Management Demystified
API Management Demystified
 
[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways Anywhere
[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways Anywhere[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways Anywhere
[WSO2Con EU 2018] Hybrid Cloud API Management - API Microgateways Anywhere
 
Best Practices: The Role of API Management
Best Practices: The Role of API ManagementBest Practices: The Role of API Management
Best Practices: The Role of API Management
 
Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...
Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...
Distributed Digital Manufacturing – How APIs are Powering the Next Industrial...
 
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)Lessons Learned from Building Enterprise APIs (Gustaf Nyman)
Lessons Learned from Building Enterprise APIs (Gustaf Nyman)
 
API Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIsAPI Services: Building State-of-the-Art APIs
API Services: Building State-of-the-Art APIs
 
ConnectorsForIntegration
ConnectorsForIntegrationConnectorsForIntegration
ConnectorsForIntegration
 
API Management For Building Software Applications Powerpoint Presentation Slides
API Management For Building Software Applications Powerpoint Presentation SlidesAPI Management For Building Software Applications Powerpoint Presentation Slides
API Management For Building Software Applications Powerpoint Presentation Slides
 
apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...
apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...
apidays LIVE New York 2021 - Building Contextualized API Specifications by Bo...
 
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for EclipseCloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
Cloud Foundry Summit 2014: Introducing Cloud Foundry Integration for Eclipse
 
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
 

Semelhante a Flavours of APIs

Oscon2014 Netflix API - Top 10 Lessons Learned
Oscon2014 Netflix API - Top 10 Lessons LearnedOscon2014 Netflix API - Top 10 Lessons Learned
Oscon2014 Netflix API - Top 10 Lessons LearnedSangeeta Narayanan
 
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Daniel Jacobson
 
Service api design validation & collaboration
Service api design validation & collaborationService api design validation & collaboration
Service api design validation & collaborationUchit Vyas ☁
 
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMG
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMGapidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMG
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMGapidays
 
2022 apidays LIVE Helsinki & North_How good are your APIs? Really?
2022 apidays LIVE Helsinki & North_How good are your APIs? Really?2022 apidays LIVE Helsinki & North_How good are your APIs? Really?
2022 apidays LIVE Helsinki & North_How good are your APIs? Really?apidays
 
Recipes for API Ninjas
Recipes for API NinjasRecipes for API Ninjas
Recipes for API NinjasNordic APIs
 
API Management in Digital Transformation
API Management in Digital TransformationAPI Management in Digital Transformation
API Management in Digital TransformationAditya Thatte
 
API Strategy Introduction
API Strategy IntroductionAPI Strategy Introduction
API Strategy IntroductionDoug Gregory
 
Maintaining the Front Door to Netflix
Maintaining the Front Door to NetflixMaintaining the Front Door to Netflix
Maintaining the Front Door to NetflixBenjamin Schmaus
 
API Documentation.pptx
API Documentation.pptxAPI Documentation.pptx
API Documentation.pptxRahulCR31
 
API Documentation.pptx
API Documentation.pptxAPI Documentation.pptx
API Documentation.pptxRahulCR31
 
Lessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxLessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxapidays
 
APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...
APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...
APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...apidays
 
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...Callon Campbell
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for LongevityMuleSoft
 
code talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating Systemcode talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating SystemAdelina Todeva
 

Semelhante a Flavours of APIs (20)

Oscon2014 Netflix API - Top 10 Lessons Learned
Oscon2014 Netflix API - Top 10 Lessons LearnedOscon2014 Netflix API - Top 10 Lessons Learned
Oscon2014 Netflix API - Top 10 Lessons Learned
 
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014
 
Service api design validation & collaboration
Service api design validation & collaborationService api design validation & collaboration
Service api design validation & collaboration
 
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMG
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMGapidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMG
apidays LIVE New York 2021 - Service API design validation by Uchit Vyas, KPMG
 
2022 apidays LIVE Helsinki & North_How good are your APIs? Really?
2022 apidays LIVE Helsinki & North_How good are your APIs? Really?2022 apidays LIVE Helsinki & North_How good are your APIs? Really?
2022 apidays LIVE Helsinki & North_How good are your APIs? Really?
 
Recipes for API Ninjas
Recipes for API NinjasRecipes for API Ninjas
Recipes for API Ninjas
 
API Management in Digital Transformation
API Management in Digital TransformationAPI Management in Digital Transformation
API Management in Digital Transformation
 
API Strategy Introduction
API Strategy IntroductionAPI Strategy Introduction
API Strategy Introduction
 
Maintaining the Front Door to Netflix
Maintaining the Front Door to NetflixMaintaining the Front Door to Netflix
Maintaining the Front Door to Netflix
 
Effective API Design
Effective API DesignEffective API Design
Effective API Design
 
API Documentation.pptx
API Documentation.pptxAPI Documentation.pptx
API Documentation.pptx
 
API Documentation.pptx
API Documentation.pptxAPI Documentation.pptx
API Documentation.pptx
 
Lessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxLessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptx
 
How to design effective APIs
How to design effective APIsHow to design effective APIs
How to design effective APIs
 
Smartone v1.0
Smartone v1.0Smartone v1.0
Smartone v1.0
 
APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...
APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...
APidays Paris 2019 - API-First vs Data Driven Architecture by Jerome Louvel, ...
 
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
Global Azure 2022 - Architecting Modern Serverless APIs with Azure Functions ...
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for Longevity
 
code talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating Systemcode talks Commerce: The API Economy as an E-Commerce Operating System
code talks Commerce: The API Economy as an E-Commerce Operating System
 
API Reuse
API ReuseAPI Reuse
API Reuse
 

Último

CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 

Último (20)

CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 

Flavours of APIs

  • 1. Three Flavours of APIs aka API Design Patterns Chris Phillips IBM Master Inventor
  • 2. 2IBM Think 2020 Who I am Chris Phillips IBM Master Inventor API Guru Author of the API Connect White Paper for v10 and v2018 IBM Cloud Integration Architect for the WW SWAT Team IBM 12.5 years Nearly 11 years in Integration Blog: http://chrisphillips-cminion.github.io LinkedIn: https://www.linkedin.com/in/chrisjphillips Twitter: @cminion 2
  • 4. What is an API?
  • 5. The exposure of a function to disparate systems What is an API?
  • 6. Other terms I have heard • Designed to simplify the consumption of functions (Pure-ism) • Has a specification • Designed to provide as much information as needed to consume it • Just another name for a service • Designed to get someone promoted What is an API?
  • 7. • What is the objective? • Simplify onboarding • Tracking consumption • Self Service • Speed to market • What is your budget? • Money • Personnel • Time Questions you need to ask yourself Try not to ask yourself • What are your KPIs?
  • 8. System API / Use Case API Three Flavours of APIs Resource API Consumer API
  • 9. Three Flavours of APIs Resource API • 1 - 1 mapping between Service to API • No interface change • No data model change • Requires knowledge of the data model before it can be consumed IntegrationSystem Resource API ValidateSecurity Rate Limiting Docs & Spec 👩 🏼 💻 👩 🏼 💻 👩 🏼 💻
  • 10. Three Flavours of APIs System or Use Case API IntegrationSystem • Many - Many mapping between APIs • Designed around the services available • APIs built around use cases and need • Business need fulfilling and aggregation • Minimal data model change • Requires knowledge of the data model before it can be consumed System API / Use Case API Map Interface Change Validate Security Rate Limiting Docs & Spec👩 🏼 💻 👩 🏼 💻 👩 🏼 💻
  • 11. IntegrationSystem Three Flavours of APIs Consumer API 👩 🏼 Consumer API Map Interface Change Validate Security Rate Limiting Docs & Spec👩 🏼 👩 🏼 • Purist • Consumer APIs are not for a single Consumer • Consumer has no knowledge of the downstream system they are invoking • Designed around easy completion of Use Cases • Data Model is restricted to exactly what is needed • Potentially complex data model changes • Consumer does not know about interface changes or mapping in the API
  • 12. Three Flavours of APIs Summary 👩 👩 🏼 💻 👩 🏼 IntegrationSystem System API / Use Case API Map Interface Change Validate Security Rate Limiting Docs & Spec Consumer API Map Interface Change Validate Security Resource API ValidateSecurity Rate Limiting Docs & Spec Rate Limiting Docs & Spec
  • 13. Three Flavours of APIs System API / Use Case APIResource API Consumer API Cost to Provider Low Complexity to Provider Low Complexity to Consumer High Cost to Provider Medium Complexity to Provider Medium Complexity to Consumer Medium Cost to Provider High Complexity to Provider High Complexity to Consumer Low Pros • Quick • Minimal Design • Resource Focused Cons • Not really an API • Assumes Prior Knowledge of data models and integration layer Pros • Some simplification for consumers Cons • Assumes Prior Knowledge of data models and integration layer Pros • Designed around the consumer need • Quick to consume • Purest Cons • Expensive • Lots of Design Examples • Philips Hue • Cloudant Examples • GraphQL Examples • PSD2 • Facebook • Twitter
  • 14. Three Flavours of APIs System API / Use Case APIResource API Consumer API Cost to Provider Low Complexity to Provider Low Complexity to Consumer High Cost to Provider Medium Complexity to Provider Medium Complexity to Consumer Medium Cost to Provider High Complexity to Provider High Complexity to Consumer Low Pros • Quick • Minimal Design • Resource Focused Cons • Not really an API • Assumes Prior Knowledge of data models and integration layer Pros • Some simplification for consumers Cons • Assumes Prior Knowledge of data models and integration layer Pros • Designed around the consumer need • Quick to consume • Purest Cons • Expensive • Lots of Design Examples • Philips Hue • Cloudant Examples • GraphQL Examples • PSD2 • Facebook • Twitter
  • 15. How do I know which to choose • Who is your long-term target audience? • How big is your long-term target audience? • How skilled is your target audience? • How many APIs need to be delivered to be considered useful? • How many APIs are going to be delivered?

Notas do Editor

  1. World by FreeVectorMaps.com