SlideShare a Scribd company logo
1 of 21
Effective API Design 
Bansi Haudakari
API’s Are 
For the Developers, 
By The Developers 
And 
Of the Developers 
- Bansi Haudakari
Who Am I? 
• An API Developer 
• An API Consumer 
• An API Designer 
• A Seasoned JAVA Programmer 
who has been consuming JAVA 
API’s since JDK 1.0 And Other 
Open Source APIs For Software 
Development
Agenda 
• What is an API? 
• Driving factors Of an API 
• Principles of Effective API Design 
• Value Of Great APIs 
• Pitfalls of mediocre APIs 
• Craft APIs that Developers Love
What is an API? 
Application Programming Interface provides a 
way for developers to interact with and consume a 
service.
Analogy: Electrical Sockets 
• APIs are gateways between Services and Consumers, providing 
consumers access to services through various interfaces 
Example: Service : Electricity AND Consumer : Plug 
• Our laptops, consumes electricity through a socket. Through its own 
“API,” a USB socket, it can provide that same electricity service to 
charge other devices.
Driving Factors 
• Business Agility : Business Logic is exposed thru 
APIs thereby enabling customers to focus on 
innovations 
• API Economy : Businesses are developing “API 
products” as new sources of revenue. Expedia 
generates over $2 billion thru data made 
available through their API 
• Internet of things: The number of things that 
can be connected is growing fast; everything 
from your coffee pot to your thermostat to 
your car can now be accessed thru APIs
Principle 1 : Design First API 
• With Design-First approach, focus is on 
well-defined API spec’s instead of 
implementation concerns.
• With an Design-First API approach, rather 
than implementing an application and then 
building API on top of it, first create the 
interface and then put the back-end logic 
into place - whether it be cloud-based or 
on-premise. 
• An optimal API design enables applications 
developers to easily understand the 
purpose and functionality of the API. 
• It also allows organizations to focus on 
getting API design right before investing in 
back-end implementation,
• The best way to design an API that developers 
want to use is to iteratively define the 
structure of the API in an expressive manner 
and get feedback from developers on its 
usability and functionality 
• As the API is designed, application developers 
can interact with it and test its behavior, 
thanks to an integrated mocking service that 
returns the values a call to the live API would 
produce.
• There is no such thing as a one-size-fits-all API 
• An API should be optimized to fulfill a specific 
business request in a specific context. 
• Optimize API for a specific use case e.g. 
– coarse or fine-grained 
– constraints e.g. network trips, latency and data 
size so API should be designed to limit backend 
calls and minimize the size of data returned
Principle 2 – Runtime API 
• Once an API is designed, created and its back-end 
implemented, it’s time to find the right 
run-time as it affects How successful your API 
strategy will be in terms of service, liability, 
scale and ability to meet future needs. 
• Hybrid support: As more and more businesses 
are moving to the cloud, so it is important to 
find runtime that allows to deploy applications 
both in the cloud as well as on-premise without 
having to modify anything.
• Scalability, reliability, availability: These “-ilities”, 
along with performance, are crucial when 
searching for a solid API runtime. The last thing 
you want is an unstable runtime that crashes or 
experiences outages. Choosing the right 
enterprise grade technology for your API runtime 
is crucial to the success of your API. 
• Strong Orchestration: A successful runtime should 
provide strong orchestration and orchestration 
capabilities. The ability to carry out complex back-end 
orchestration plays a key role in translation 
between the API layer and back-end 
implementation.
Principle 3 – API Design Contract 
• API publishers should offer a way to easily 
create well-defined policies and contracts and 
associate them with the right APIs and 
consumers. 
• API Contracts are crucial for enforcing security 
and managing SLAs with API consumers. 
• In addition, publish API version which helps in 
lifecycle management and allows API publishers 
to assess the impact of retiring a version. 
Example REST API’s
Principle 4 - Monitor API Usage 
• The ability to monitor API usage over a period of 
time and understand usage patterns from both 
technical and business perspectives is valuable as 
it helps business owners and technical teams 
better understand their users and ultimately 
create a better service. 
• You need to see how consumers are using it i.e. 
which parts of your service are being used. 
• With metrics for both overall usage and per 
consumer usage, businesses can closely monitor 
API activity and engagement.
Principle 5 - Continuous Improvement 
• The ability to re-factor your APIs by iterating 
through habits 1-6 multiple times allows you to 
optimize your API over time to improve 
consumer experience and productivity. 
• API is not a static entity – as new use cases are 
identified and use of your API expands, 
enhancements and fixes are inevitable.
Principle 6 -Socialize Your APIs 
• Create a developer portal to establish a 
community around your API is important to its 
success. By making it easy for users to follow 
your API, download documentation and ask 
questions, API publishers can engage with API 
consumers on an ongoing basis. 
• Example create a developer portal for company-wide 
REST services and document it using 
Swagger
• APIs delivers an end-to-end solution to design 
APIs that developers will love; easily connect 
them with backend services; run them in a 
secure, scalable environment; and manage 
them throughout their lifecycle.
APIs Are Everywhere
Value of Great API’s 
• Is a Product 
• Help Grow a Eco-System of employees, customers 
and Partners 
• Evolve in a way that are mutually beneficial 
• Encourage Adoption 
• Ease Of Use 
• Great APIs aren’t difficult to develop 
– if you design for your users and the business processes 
– if you make it easy for developers to find and consume 
your API, and 
– you actively manage your API developer community as 
an extension of your business.
Pitfalls of a mediocre APIs 
• Doesn’t engage Stake-holders 
• limited adoption by developers and ultimately, a 
failure to meet business objectives 
• Starts with implementation first 
• Design of API is dictated by the constraints of 
internal systems or processes. 
• Too often APIs are modeled after the design of the 
backend services or applications they expose 
instead of the use case they fulfill. This results in 
poor performance of the client application, poor 
user experience, and ultimately, poor adoption.

More Related Content

What's hot

KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...John Musser
 
Api-First service design
Api-First service designApi-First service design
Api-First service designStefaan Ponnet
 
APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...
APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...
APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...apidays
 
APIs as a Product Strategy
APIs as a Product StrategyAPIs as a Product Strategy
APIs as a Product StrategyRavi Kumar
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?LunchBadger
 
API Management - Why it matters!
API Management - Why it matters!API Management - Why it matters!
API Management - Why it matters!Sven Bernhardt
 
API Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway PatternAPI Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway PatternVMware Tanzu
 
The Architecture of an API Platform
The Architecture of an API PlatformThe Architecture of an API Platform
The Architecture of an API PlatformJohannes Ridderstedt
 
API Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesAPI Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesSlideTeam
 
API-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approachAPI-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approachSven Bernhardt
 
Building Business Platforms Using an API Driven Marketplace
Building Business Platforms Using an  API Driven MarketplaceBuilding Business Platforms Using an  API Driven Marketplace
Building Business Platforms Using an API Driven MarketplaceWSO2
 
Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface) Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface) Vibhawa Nirmal
 
How to Execute a Successful API Strategy
How to Execute a Successful API StrategyHow to Execute a Successful API Strategy
How to Execute a Successful API StrategyMatt McLarty
 

What's hot (20)

KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
 
Api-First service design
Api-First service designApi-First service design
Api-First service design
 
APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...
APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...
APIsecure 2023 - Security Considerations for API Gateway Aggregation, Yoshiyu...
 
APIs as a Product Strategy
APIs as a Product StrategyAPIs as a Product Strategy
APIs as a Product Strategy
 
What is an API Gateway?
What is an API Gateway?What is an API Gateway?
What is an API Gateway?
 
API Management - Why it matters!
API Management - Why it matters!API Management - Why it matters!
API Management - Why it matters!
 
API Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway PatternAPI Gateway How-To: The Many Ways to Apply the Gateway Pattern
API Gateway How-To: The Many Ways to Apply the Gateway Pattern
 
Amazon API Gateway
Amazon API GatewayAmazon API Gateway
Amazon API Gateway
 
The Architecture of an API Platform
The Architecture of an API PlatformThe Architecture of an API Platform
The Architecture of an API Platform
 
API Governance
API Governance API Governance
API Governance
 
API Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesAPI Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation Slides
 
API Management in Azure
API Management in AzureAPI Management in Azure
API Management in Azure
 
API strategy with IBM API connect
API strategy with IBM API connectAPI strategy with IBM API connect
API strategy with IBM API connect
 
How Secure Are Your APIs?
How Secure Are Your APIs?How Secure Are Your APIs?
How Secure Are Your APIs?
 
API-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approachAPI-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approach
 
Apigee Demo: API Platform Overview
Apigee Demo: API Platform OverviewApigee Demo: API Platform Overview
Apigee Demo: API Platform Overview
 
Building Business Platforms Using an API Driven Marketplace
Building Business Platforms Using an  API Driven MarketplaceBuilding Business Platforms Using an  API Driven Marketplace
Building Business Platforms Using an API Driven Marketplace
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface) Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface)
 
How to Execute a Successful API Strategy
How to Execute a Successful API StrategyHow to Execute a Successful API Strategy
How to Execute a Successful API Strategy
 

Similar to Effective API Design

API Management Building Blocks and Business value
API Management   Building Blocks and Business valueAPI Management   Building Blocks and Business value
API Management Building Blocks and Business valueWSO2
 
API-Consumption compressed (1)
API-Consumption compressed (1)API-Consumption compressed (1)
API-Consumption compressed (1)Rahul Ghai
 
Dependency Down, Flexibility Up – The Benefits of API-First Development
Dependency Down, Flexibility Up – The Benefits of API-First DevelopmentDependency Down, Flexibility Up – The Benefits of API-First Development
Dependency Down, Flexibility Up – The Benefits of API-First DevelopmentNordic APIs
 
Meetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdfMeetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdfRed Hat
 
Driving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design ApproachDriving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design ApproachAkana
 
10 steps to design and build the perfect
10 steps to design and build the perfect10 steps to design and build the perfect
10 steps to design and build the perfectSon Nguyen
 
Manage your ap is securely and easily ibm apim 4.0
Manage your ap is securely and easily ibm apim 4.0Manage your ap is securely and easily ibm apim 4.0
Manage your ap is securely and easily ibm apim 4.0sflynn073
 
Extend soa with api management Sangam18
Extend soa with api management Sangam18Extend soa with api management Sangam18
Extend soa with api management Sangam18Vinay Kumar
 
Api management introduction and product overview v1.0 2014.08.28
Api management introduction and product overview v1.0 2014.08.28Api management introduction and product overview v1.0 2014.08.28
Api management introduction and product overview v1.0 2014.08.28floridawusergroup
 
APIs in the Enterprise - Lessons Learned
APIs in the Enterprise - Lessons Learned APIs in the Enterprise - Lessons Learned
APIs in the Enterprise - Lessons Learned Apigee | Google Cloud
 
Open / Public APIs - From Implementation to Digital Business Model
Open / Public APIs - From Implementation to Digital Business ModelOpen / Public APIs - From Implementation to Digital Business Model
Open / Public APIs - From Implementation to Digital Business ModelBastian Migge
 
API Economy - Cuomo
API Economy - Cuomo API Economy - Cuomo
API Economy - Cuomo Prolifics
 
Recipes for API Ninjas
Recipes for API NinjasRecipes for API Ninjas
Recipes for API NinjasNordic APIs
 
Lessons in Transforming the Enterprise to an API Platform
Lessons in Transforming the Enterprise to an API PlatformLessons in Transforming the Enterprise to an API Platform
Lessons in Transforming the Enterprise to an API PlatformLaunchAny
 

Similar to Effective API Design (20)

Web API Management
Web API ManagementWeb API Management
Web API Management
 
SlideShare Test-1
SlideShare Test-1SlideShare Test-1
SlideShare Test-1
 
How to design effective APIs
How to design effective APIsHow to design effective APIs
How to design effective APIs
 
API Management Building Blocks and Business value
API Management   Building Blocks and Business valueAPI Management   Building Blocks and Business value
API Management Building Blocks and Business value
 
API-Consumption compressed (1)
API-Consumption compressed (1)API-Consumption compressed (1)
API-Consumption compressed (1)
 
Dependency Down, Flexibility Up – The Benefits of API-First Development
Dependency Down, Flexibility Up – The Benefits of API-First DevelopmentDependency Down, Flexibility Up – The Benefits of API-First Development
Dependency Down, Flexibility Up – The Benefits of API-First Development
 
Meetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdfMeetup 2022 - API Gateway landscape.pdf
Meetup 2022 - API Gateway landscape.pdf
 
Driving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design ApproachDriving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design Approach
 
10 steps to design and build the perfect
10 steps to design and build the perfect10 steps to design and build the perfect
10 steps to design and build the perfect
 
Manage your ap is securely and easily ibm apim 4.0
Manage your ap is securely and easily ibm apim 4.0Manage your ap is securely and easily ibm apim 4.0
Manage your ap is securely and easily ibm apim 4.0
 
Smartone v1.0
Smartone v1.0Smartone v1.0
Smartone v1.0
 
Api manager
Api managerApi manager
Api manager
 
Extend soa with api management Sangam18
Extend soa with api management Sangam18Extend soa with api management Sangam18
Extend soa with api management Sangam18
 
Api management introduction and product overview v1.0 2014.08.28
Api management introduction and product overview v1.0 2014.08.28Api management introduction and product overview v1.0 2014.08.28
Api management introduction and product overview v1.0 2014.08.28
 
APIs in the Enterprise - Lessons Learned
APIs in the Enterprise - Lessons Learned APIs in the Enterprise - Lessons Learned
APIs in the Enterprise - Lessons Learned
 
Open / Public APIs - From Implementation to Digital Business Model
Open / Public APIs - From Implementation to Digital Business ModelOpen / Public APIs - From Implementation to Digital Business Model
Open / Public APIs - From Implementation to Digital Business Model
 
API Economy - Cuomo
API Economy - Cuomo API Economy - Cuomo
API Economy - Cuomo
 
Recipes for API Ninjas
Recipes for API NinjasRecipes for API Ninjas
Recipes for API Ninjas
 
Lessons in Transforming the Enterprise to an API Platform
Lessons in Transforming the Enterprise to an API PlatformLessons in Transforming the Enterprise to an API Platform
Lessons in Transforming the Enterprise to an API Platform
 
Api design part 1
Api design part 1Api design part 1
Api design part 1
 

Recently uploaded

%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile EnvironmentVictorSzoltysek
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 

Recently uploaded (20)

%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 

Effective API Design

  • 1. Effective API Design Bansi Haudakari
  • 2. API’s Are For the Developers, By The Developers And Of the Developers - Bansi Haudakari
  • 3. Who Am I? • An API Developer • An API Consumer • An API Designer • A Seasoned JAVA Programmer who has been consuming JAVA API’s since JDK 1.0 And Other Open Source APIs For Software Development
  • 4. Agenda • What is an API? • Driving factors Of an API • Principles of Effective API Design • Value Of Great APIs • Pitfalls of mediocre APIs • Craft APIs that Developers Love
  • 5. What is an API? Application Programming Interface provides a way for developers to interact with and consume a service.
  • 6. Analogy: Electrical Sockets • APIs are gateways between Services and Consumers, providing consumers access to services through various interfaces Example: Service : Electricity AND Consumer : Plug • Our laptops, consumes electricity through a socket. Through its own “API,” a USB socket, it can provide that same electricity service to charge other devices.
  • 7. Driving Factors • Business Agility : Business Logic is exposed thru APIs thereby enabling customers to focus on innovations • API Economy : Businesses are developing “API products” as new sources of revenue. Expedia generates over $2 billion thru data made available through their API • Internet of things: The number of things that can be connected is growing fast; everything from your coffee pot to your thermostat to your car can now be accessed thru APIs
  • 8. Principle 1 : Design First API • With Design-First approach, focus is on well-defined API spec’s instead of implementation concerns.
  • 9. • With an Design-First API approach, rather than implementing an application and then building API on top of it, first create the interface and then put the back-end logic into place - whether it be cloud-based or on-premise. • An optimal API design enables applications developers to easily understand the purpose and functionality of the API. • It also allows organizations to focus on getting API design right before investing in back-end implementation,
  • 10. • The best way to design an API that developers want to use is to iteratively define the structure of the API in an expressive manner and get feedback from developers on its usability and functionality • As the API is designed, application developers can interact with it and test its behavior, thanks to an integrated mocking service that returns the values a call to the live API would produce.
  • 11. • There is no such thing as a one-size-fits-all API • An API should be optimized to fulfill a specific business request in a specific context. • Optimize API for a specific use case e.g. – coarse or fine-grained – constraints e.g. network trips, latency and data size so API should be designed to limit backend calls and minimize the size of data returned
  • 12. Principle 2 – Runtime API • Once an API is designed, created and its back-end implemented, it’s time to find the right run-time as it affects How successful your API strategy will be in terms of service, liability, scale and ability to meet future needs. • Hybrid support: As more and more businesses are moving to the cloud, so it is important to find runtime that allows to deploy applications both in the cloud as well as on-premise without having to modify anything.
  • 13. • Scalability, reliability, availability: These “-ilities”, along with performance, are crucial when searching for a solid API runtime. The last thing you want is an unstable runtime that crashes or experiences outages. Choosing the right enterprise grade technology for your API runtime is crucial to the success of your API. • Strong Orchestration: A successful runtime should provide strong orchestration and orchestration capabilities. The ability to carry out complex back-end orchestration plays a key role in translation between the API layer and back-end implementation.
  • 14. Principle 3 – API Design Contract • API publishers should offer a way to easily create well-defined policies and contracts and associate them with the right APIs and consumers. • API Contracts are crucial for enforcing security and managing SLAs with API consumers. • In addition, publish API version which helps in lifecycle management and allows API publishers to assess the impact of retiring a version. Example REST API’s
  • 15. Principle 4 - Monitor API Usage • The ability to monitor API usage over a period of time and understand usage patterns from both technical and business perspectives is valuable as it helps business owners and technical teams better understand their users and ultimately create a better service. • You need to see how consumers are using it i.e. which parts of your service are being used. • With metrics for both overall usage and per consumer usage, businesses can closely monitor API activity and engagement.
  • 16. Principle 5 - Continuous Improvement • The ability to re-factor your APIs by iterating through habits 1-6 multiple times allows you to optimize your API over time to improve consumer experience and productivity. • API is not a static entity – as new use cases are identified and use of your API expands, enhancements and fixes are inevitable.
  • 17. Principle 6 -Socialize Your APIs • Create a developer portal to establish a community around your API is important to its success. By making it easy for users to follow your API, download documentation and ask questions, API publishers can engage with API consumers on an ongoing basis. • Example create a developer portal for company-wide REST services and document it using Swagger
  • 18. • APIs delivers an end-to-end solution to design APIs that developers will love; easily connect them with backend services; run them in a secure, scalable environment; and manage them throughout their lifecycle.
  • 20. Value of Great API’s • Is a Product • Help Grow a Eco-System of employees, customers and Partners • Evolve in a way that are mutually beneficial • Encourage Adoption • Ease Of Use • Great APIs aren’t difficult to develop – if you design for your users and the business processes – if you make it easy for developers to find and consume your API, and – you actively manage your API developer community as an extension of your business.
  • 21. Pitfalls of a mediocre APIs • Doesn’t engage Stake-holders • limited adoption by developers and ultimately, a failure to meet business objectives • Starts with implementation first • Design of API is dictated by the constraints of internal systems or processes. • Too often APIs are modeled after the design of the backend services or applications they expose instead of the use case they fulfill. This results in poor performance of the client application, poor user experience, and ultimately, poor adoption.

Editor's Notes

  1. The ability to develop applications once and deploy them in the cloud or on-premise provides a host of possibilities without complexity