SlideShare a Scribd company logo
1 of 98
Download to read offline
APIs: The Good,
The Bad, The Ugly
Michele Titolo
Software Engineer, Square
@micheletitolo
Consulting
Mobile
Backend
@micheletitolo
What Do API
Consumers Care About?
@micheletitolo
• Documentation
• URLs
• Payloads
• Authentication
• Authorization
• Errors
• Caching
They Care About…
Documentation
@micheletitolo
The Good
@micheletitolo
It Exists
@micheletitolo
Bonus: It’s Interactive
@micheletitolo
Open Api Specification
@micheletitolo
ReDoc https://rebilly.github.io/ReDoc/
@micheletitolo
The Bad
@micheletitolo
Docs Aren’t Updated
@micheletitolo
The Ugly
@micheletitolo
Documentation?
Urls
@micheletitolo
The Good
@micheletitolo
Consistency
/users/22445
/products/3156
/movies/127/times
@micheletitolo
REST Conventions
@micheletitolo
The Bad
@micheletitolo
Inconsistency
/users/22445
/reviews/3156
/times/127
Not review or time id’s
@micheletitolo
The Ugly
@micheletitolo
“GET /remove to delete”
Payloads
@micheletitolo
The Good
@micheletitolo
Respect Content-Type
@micheletitolo
Versioning
@micheletitolo
The Bad
Endpoint “id” field
/products id
/products/:id productID
/cart product_id
@micheletitolo
Change
@micheletitolo
We Expect Certain Things
@micheletitolo
...like image urls having
http://
@micheletitolo
...Like Dates Sent In The
Same Format
@micheletitolo
We Expect Certain Things
To Not Change
@micheletitolo
The Ugly
@micheletitolo
Json Containing Html
@micheletitolo
Unstable
Authentication
@micheletitolo
The Good
@micheletitolo
SSL
@micheletitolo
...when SSL is secure
goto fail;
@micheletitolo
SSL Pinning
@micheletitolo
OAuth
@micheletitolo
The Bad
@micheletitolo
OAuth
@micheletitolo
The Ugly
Authorization
@micheletitolo
The Good
@micheletitolo
App Requests Permissions
@micheletitolo
The Bad
@micheletitolo
A Single Api Key
@micheletitolo
{"message":"API rate limit exceeded"}
@micheletitolo
The Ugly
@micheletitolo
Authorization?
Errors
@micheletitolo
The Good
@micheletitolo
Error Codes
@micheletitolo
Error Message In
Response
@micheletitolo
Human Readable Error
Message
@micheletitolo
The Bad
@micheletitolo
“There Was An Error”
@micheletitolo
The Ugly
Caching
@micheletitolo
The Good
@micheletitolo
Using One Of The
Standards
@micheletitolo
Cache-Control
@micheletitolo
If-Modified-Since
@micheletitolo
Etags
@micheletitolo
The Bad
@micheletitolo
Manually Processing Data
@micheletitolo
The Ugly
@micheletitolo
Caching
In Summary
@micheletitolo
Consistency
@micheletitolo
Conventions
@micheletitolo
Simple
Questions?
@MicheleTitolo
JSONSchema, Open Api Spec, RAML
Charles, Postman
http://runscope.com, also http://newrelic.com for backend analytics
Versioning: http://apiux.com/2013/05/14/api-versioning/
Resources
• https://unsplash.com/photos/slItfWbhijc
• https://unsplash.com/photos/D6uxeDSylxo
• https://unsplash.com/photos/fbDPzqOXwuY
• https://unsplash.com/photos/8yYAaguVDgY
• https://unsplash.com/photos/yVXUtrNzJBM
• https://unsplash.com/photos/BFRdqVAMAhU
• https://unsplash.com/photos/1eWaod96d3k
• https://unsplash.com/photos/IUY_3DvM__w

More Related Content

What's hot

Twitter APIs - the starter guide
Twitter APIs - the starter guideTwitter APIs - the starter guide
Twitter APIs - the starter guideAndy Piper
 
The Ever Changing Google: Gaining a Maximum Attention for Your SERP Listings
The Ever Changing Google: Gaining a Maximum Attention for Your SERP ListingsThe Ever Changing Google: Gaining a Maximum Attention for Your SERP Listings
The Ever Changing Google: Gaining a Maximum Attention for Your SERP ListingsSemrush
 
APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...
APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...
APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...apidays
 
INTERFACE, by apidays - Low code APIs that don't break by Zdenek Nemec, Supe...
INTERFACE, by apidays  - Low code APIs that don't break by Zdenek Nemec, Supe...INTERFACE, by apidays  - Low code APIs that don't break by Zdenek Nemec, Supe...
INTERFACE, by apidays - Low code APIs that don't break by Zdenek Nemec, Supe...apidays
 
apidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeonapidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeonapidays
 
Designing a Future-proof API Program
Designing a Future-proof API ProgramDesigning a Future-proof API Program
Designing a Future-proof API ProgramPronovix
 
Fast integrations for Fun and Profit
Fast integrations for Fun and ProfitFast integrations for Fun and Profit
Fast integrations for Fun and ProfitMarsh Gardiner
 
Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)3scale
 
iHale Milestone 2 Kickoff
iHale Milestone 2 KickoffiHale Milestone 2 Kickoff
iHale Milestone 2 KickoffPhilip Johnson
 

What's hot (11)

Twitter APIs - the starter guide
Twitter APIs - the starter guideTwitter APIs - the starter guide
Twitter APIs - the starter guide
 
The Ever Changing Google: Gaining a Maximum Attention for Your SERP Listings
The Ever Changing Google: Gaining a Maximum Attention for Your SERP ListingsThe Ever Changing Google: Gaining a Maximum Attention for Your SERP Listings
The Ever Changing Google: Gaining a Maximum Attention for Your SERP Listings
 
APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...
APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...
APIdays Helsinki 2019 - Balancing Between Internal and External Developer (AP...
 
INTERFACE, by apidays - Low code APIs that don't break by Zdenek Nemec, Supe...
INTERFACE, by apidays  - Low code APIs that don't break by Zdenek Nemec, Supe...INTERFACE, by apidays  - Low code APIs that don't break by Zdenek Nemec, Supe...
INTERFACE, by apidays - Low code APIs that don't break by Zdenek Nemec, Supe...
 
apidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeonapidays LIVE New York - API Code First vs Design First by Phil Sturgeon
apidays LIVE New York - API Code First vs Design First by Phil Sturgeon
 
Designing a Future-proof API Program
Designing a Future-proof API ProgramDesigning a Future-proof API Program
Designing a Future-proof API Program
 
Fast integrations for Fun and Profit
Fast integrations for Fun and ProfitFast integrations for Fun and Profit
Fast integrations for Fun and Profit
 
Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)
 
iHale Milestone 2 Kickoff
iHale Milestone 2 KickoffiHale Milestone 2 Kickoff
iHale Milestone 2 Kickoff
 
From keyboard to production
From keyboard to productionFrom keyboard to production
From keyboard to production
 
API First
API FirstAPI First
API First
 

Similar to APIs: The Good, The Bad, The Ugly

How To Make APIs That Don't Suck
How To Make APIs That Don't SuckHow To Make APIs That Don't Suck
How To Make APIs That Don't SuckMichele Titolo
 
APIs: The good, the bad, the ugly
APIs: The good, the bad, the uglyAPIs: The good, the bad, the ugly
APIs: The good, the bad, the uglyMichele Titolo
 
Jax London 2018: "Testing Microservices from Development to Production"
Jax London 2018: "Testing Microservices from Development to Production"Jax London 2018: "Testing Microservices from Development to Production"
Jax London 2018: "Testing Microservices from Development to Production"Daniel Bryant
 
deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"
deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"
deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"Daniel Bryant
 
Visualizing Visual Content - Digital Summit Phoenix 2014
Visualizing Visual Content - Digital Summit Phoenix 2014Visualizing Visual Content - Digital Summit Phoenix 2014
Visualizing Visual Content - Digital Summit Phoenix 2014Mike Corak
 
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene GotimerDevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene GotimerDevOpsDays Baltimore
 
Gaps in the Serverless Mesh: Deployment, Discovery, and Auth
Gaps in the Serverless Mesh: Deployment, Discovery, and AuthGaps in the Serverless Mesh: Deployment, Discovery, and Auth
Gaps in the Serverless Mesh: Deployment, Discovery, and AuthBen Kehoe
 
Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!
Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!
Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!Serdar Basegmez
 
Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019Marjukka Niinioja
 
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019Codemotion
 
AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!Mobile Web Italy Meetup
 
Trusting Your Ingredients - What Building Software And Cheesecake Have In Common
Trusting Your Ingredients - What Building Software And Cheesecake Have In CommonTrusting Your Ingredients - What Building Software And Cheesecake Have In Common
Trusting Your Ingredients - What Building Software And Cheesecake Have In CommonLeon Stigter
 
5 Misperceptions of the Electronics Supply Chain
5 Misperceptions of the Electronics Supply Chain5 Misperceptions of the Electronics Supply Chain
5 Misperceptions of the Electronics Supply ChainJoleen Ong
 
Adopting a security attitude in DevOps via DevOpsSec
Adopting a security attitude in DevOps via DevOpsSecAdopting a security attitude in DevOps via DevOpsSec
Adopting a security attitude in DevOps via DevOpsSecTapabrata Pal
 
Using APIs to Program Disparate IoT Devices
Using APIs to Program Disparate IoT DevicesUsing APIs to Program Disparate IoT Devices
Using APIs to Program Disparate IoT DevicesApigee | Google Cloud
 
A Definition of Done for DevSecOps
A Definition of Done for DevSecOpsA Definition of Done for DevSecOps
A Definition of Done for DevSecOpsGene Gotimer
 
IBM Index Conference - 10 steps to build token based API Security
IBM Index Conference - 10 steps to build token based API SecurityIBM Index Conference - 10 steps to build token based API Security
IBM Index Conference - 10 steps to build token based API SecuritySenthilkumar Gopal
 
Apigee centralite io t webinar july 2015 share (2)
Apigee centralite io t webinar july 2015 share (2)Apigee centralite io t webinar july 2015 share (2)
Apigee centralite io t webinar july 2015 share (2)Apigee | Google Cloud
 
Improve Communication Apps with Machine Learning
Improve Communication Apps with Machine LearningImprove Communication Apps with Machine Learning
Improve Communication Apps with Machine LearningElizabeth (Lizzie) Siegle
 

Similar to APIs: The Good, The Bad, The Ugly (20)

How To Make APIs That Don't Suck
How To Make APIs That Don't SuckHow To Make APIs That Don't Suck
How To Make APIs That Don't Suck
 
APIs: The good, the bad, the ugly
APIs: The good, the bad, the uglyAPIs: The good, the bad, the ugly
APIs: The good, the bad, the ugly
 
Jax London 2018: "Testing Microservices from Development to Production"
Jax London 2018: "Testing Microservices from Development to Production"Jax London 2018: "Testing Microservices from Development to Production"
Jax London 2018: "Testing Microservices from Development to Production"
 
deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"
deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"
deliver:Agile 2018 "Continuous Delivery Patterns for Modern Architectures"
 
Visualizing Visual Content - Digital Summit Phoenix 2014
Visualizing Visual Content - Digital Summit Phoenix 2014Visualizing Visual Content - Digital Summit Phoenix 2014
Visualizing Visual Content - Digital Summit Phoenix 2014
 
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene GotimerDevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
 
Gaps in the Serverless Mesh: Deployment, Discovery, and Auth
Gaps in the Serverless Mesh: Deployment, Discovery, and AuthGaps in the Serverless Mesh: Deployment, Discovery, and Auth
Gaps in the Serverless Mesh: Deployment, Discovery, and Auth
 
DevOps and Audit
DevOps and AuditDevOps and Audit
DevOps and Audit
 
Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!
Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!
Engage 2020: Six Polite Ways to Design a RESTful API for Your Application!
 
Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019
 
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
Horacio Gonzalez - Monitoring OVH - Codemotion Amsterdam 2019
 
AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!AppsFuel, il nuovo marketplace per mobile web app e mobile site!
AppsFuel, il nuovo marketplace per mobile web app e mobile site!
 
Trusting Your Ingredients - What Building Software And Cheesecake Have In Common
Trusting Your Ingredients - What Building Software And Cheesecake Have In CommonTrusting Your Ingredients - What Building Software And Cheesecake Have In Common
Trusting Your Ingredients - What Building Software And Cheesecake Have In Common
 
5 Misperceptions of the Electronics Supply Chain
5 Misperceptions of the Electronics Supply Chain5 Misperceptions of the Electronics Supply Chain
5 Misperceptions of the Electronics Supply Chain
 
Adopting a security attitude in DevOps via DevOpsSec
Adopting a security attitude in DevOps via DevOpsSecAdopting a security attitude in DevOps via DevOpsSec
Adopting a security attitude in DevOps via DevOpsSec
 
Using APIs to Program Disparate IoT Devices
Using APIs to Program Disparate IoT DevicesUsing APIs to Program Disparate IoT Devices
Using APIs to Program Disparate IoT Devices
 
A Definition of Done for DevSecOps
A Definition of Done for DevSecOpsA Definition of Done for DevSecOps
A Definition of Done for DevSecOps
 
IBM Index Conference - 10 steps to build token based API Security
IBM Index Conference - 10 steps to build token based API SecurityIBM Index Conference - 10 steps to build token based API Security
IBM Index Conference - 10 steps to build token based API Security
 
Apigee centralite io t webinar july 2015 share (2)
Apigee centralite io t webinar july 2015 share (2)Apigee centralite io t webinar july 2015 share (2)
Apigee centralite io t webinar july 2015 share (2)
 
Improve Communication Apps with Machine Learning
Improve Communication Apps with Machine LearningImprove Communication Apps with Machine Learning
Improve Communication Apps with Machine Learning
 

More from Michele Titolo

Writing Design Docs for Wide Audiences
Writing Design Docs for Wide AudiencesWriting Design Docs for Wide Audiences
Writing Design Docs for Wide AudiencesMichele Titolo
 
Beam Me Up: Voyaging into Big Data
Beam Me Up: Voyaging into Big DataBeam Me Up: Voyaging into Big Data
Beam Me Up: Voyaging into Big DataMichele Titolo
 
No Microservice is an Island
No Microservice is an IslandNo Microservice is an Island
No Microservice is an IslandMichele Titolo
 
From iOS to Distributed Systems
From iOS to Distributed SystemsFrom iOS to Distributed Systems
From iOS to Distributed SystemsMichele Titolo
 
More than po: Debugging in LLDB
More than po: Debugging in LLDBMore than po: Debugging in LLDB
More than po: Debugging in LLDBMichele Titolo
 
APIs for the Mobile World
APIs for the Mobile WorldAPIs for the Mobile World
APIs for the Mobile WorldMichele Titolo
 
Swift Generics in Theory and Practice
Swift Generics in Theory and PracticeSwift Generics in Theory and Practice
Swift Generics in Theory and PracticeMichele Titolo
 
Protocols promised-land-2
Protocols promised-land-2Protocols promised-land-2
Protocols promised-land-2Michele Titolo
 
Making friendly-microservices
Making friendly-microservicesMaking friendly-microservices
Making friendly-microservicesMichele Titolo
 
More Than po: Debugging in LLDB @ CocoaConf SJ 2015
More Than po: Debugging in LLDB @ CocoaConf SJ 2015More Than po: Debugging in LLDB @ CocoaConf SJ 2015
More Than po: Debugging in LLDB @ CocoaConf SJ 2015Michele Titolo
 
More than `po`: Debugging in lldb
More than `po`: Debugging in lldbMore than `po`: Debugging in lldb
More than `po`: Debugging in lldbMichele Titolo
 
Can't Handle My Scale v2
Can't Handle My Scale v2Can't Handle My Scale v2
Can't Handle My Scale v2Michele Titolo
 
Cocoa Design Patterns in Swift
Cocoa Design Patterns in SwiftCocoa Design Patterns in Swift
Cocoa Design Patterns in SwiftMichele Titolo
 
Mastering the Project File (AltConf)
Mastering the Project File (AltConf)Mastering the Project File (AltConf)
Mastering the Project File (AltConf)Michele Titolo
 

More from Michele Titolo (20)

Writing Design Docs for Wide Audiences
Writing Design Docs for Wide AudiencesWriting Design Docs for Wide Audiences
Writing Design Docs for Wide Audiences
 
Beam Me Up: Voyaging into Big Data
Beam Me Up: Voyaging into Big DataBeam Me Up: Voyaging into Big Data
Beam Me Up: Voyaging into Big Data
 
No Microservice is an Island
No Microservice is an IslandNo Microservice is an Island
No Microservice is an Island
 
From iOS to Distributed Systems
From iOS to Distributed SystemsFrom iOS to Distributed Systems
From iOS to Distributed Systems
 
More than po: Debugging in LLDB
More than po: Debugging in LLDBMore than po: Debugging in LLDB
More than po: Debugging in LLDB
 
APIs for the Mobile World
APIs for the Mobile WorldAPIs for the Mobile World
APIs for the Mobile World
 
Swift Generics in Theory and Practice
Swift Generics in Theory and PracticeSwift Generics in Theory and Practice
Swift Generics in Theory and Practice
 
Protocols promised-land-2
Protocols promised-land-2Protocols promised-land-2
Protocols promised-land-2
 
Multitasking
MultitaskingMultitasking
Multitasking
 
Making friendly-microservices
Making friendly-microservicesMaking friendly-microservices
Making friendly-microservices
 
More Than po: Debugging in LLDB @ CocoaConf SJ 2015
More Than po: Debugging in LLDB @ CocoaConf SJ 2015More Than po: Debugging in LLDB @ CocoaConf SJ 2015
More Than po: Debugging in LLDB @ CocoaConf SJ 2015
 
The Worst Code
The Worst CodeThe Worst Code
The Worst Code
 
More than `po`: Debugging in lldb
More than `po`: Debugging in lldbMore than `po`: Debugging in lldb
More than `po`: Debugging in lldb
 
Can't Handle My Scale v2
Can't Handle My Scale v2Can't Handle My Scale v2
Can't Handle My Scale v2
 
Can't Handle My Scale
Can't Handle My ScaleCan't Handle My Scale
Can't Handle My Scale
 
Cocoa Design Patterns in Swift
Cocoa Design Patterns in SwiftCocoa Design Patterns in Swift
Cocoa Design Patterns in Swift
 
Mastering the Project File (AltConf)
Mastering the Project File (AltConf)Mastering the Project File (AltConf)
Mastering the Project File (AltConf)
 
APIs: The Ugly
APIs: The UglyAPIs: The Ugly
APIs: The Ugly
 
That's Not My Code!
That's Not My Code!That's Not My Code!
That's Not My Code!
 
Mobile APIs
Mobile APIsMobile APIs
Mobile APIs
 

Recently uploaded

ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
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
 
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
 
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
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
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
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
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
 

Recently uploaded (20)

ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
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
 
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
 
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
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
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
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
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
 

APIs: The Good, The Bad, The Ugly