SlideShare a Scribd company logo
THE WHAT & WHY OF APIS
TODAY’S SCHEDULE
Introductions

WHAT is an API?

HOW to develop with APIs?

WHY should I provide APIs?
JOHN I. MCSWAIN, III
john.i.mcswain@gmail.com @johnmcswain
vodka advocate. internet aficionado. gamer.
mobile practitioner. thinker. musician.
WHAT IS AN API?
• APPLICATION PROGRAMMING INTERFACE

• APIs are ROUTINES, PROTOCOLS, AND INSTRUMENTS needed
for computer APPLICATIONS TO COMMUNICATE with each other

• API PROVIDERS give tools to application DEVELOPERS to ease any
work efforts. Tools include:

• Software Development Kits (SDK)

• Libraries

• Documentation (i.e. instructions, guidelines)

• Data feedback: JSON, XML, Callbacks

• Types: PUBLIC, PRIVATE | WEB, SOFTWARE, HARDWARE
Jacobson, Daniel, Dan Woods, and Gregory Brail. "What Is an API?” APIs: A Strategy
Guide. Sebastopol, CA: O'Reilly, 2012. Print.
WHAT IS AN API PROVIDER?
• API PROVIDERS typically require developers to REGISTER APPS
and ACCEPT TERMS & CONDITIONS

• PROVIDERS control WHO uses data, PURPOSE/INTENT of data,
& data FREQUENCY (requests / unit of time)

• Offenders may have access temporarily REVOKED, and/or can
also be PERMANENTLY BANNED
PROVIDERS REGISTER APPS
DEVELOPERS CONSUME APIS
Character Request URL: http://gateway.marvel.com:80/v1/public/characters?
apikey=xxxxxxxxxxxxxxxxxx
Event Request URL: http://gateway.marvel.com:80/v1/public/events?
apikey=xxxxxxxxxxxxxxxxxx
Web API Request over HTTP
WEB API RESPONSE: JSON?
{
"code": 200,
"status": "Ok",
"copyright": "© 2015 MARVEL",
"attributionText": "Data provided by Marvel. © 2015 MARVEL",
"attributionHTML": "<a href="http://marvel.com">Data provided by Marvel. © 2015
MARVEL</a>",
"etag": "d9e1099583b90f03adf5ed4c20c537b80d2ecd04",
"data": {
"offset": 0,
"limit": 20,
"total": 1485,
"count": 20,
"results": [
{
"id": 1011334,
"name": "3-D Man",
"description": "",
"modified": "2014-04-29T14:18:17-0400",
"thumbnail": {
"path": "http://i.annihil.us/u/prod/marvel/i/mg/c/e0/535fecbbb9784",
"extension": "jpg"
},
"resourceURI": "http://gateway.marvel.com/v1/public/characters/1011334",
"comics": {
"available": 11,
"collectionURI": "http://gateway.marvel.com/v1/public/characters/1011334/comics",
"items": [
JSON (JAVASCRIPT OBJECT NOTATION) is a lightweight data-
interchange format. Easy for humans to read and write. Easy for
machines to parse and generate.
EXAMPLES OF WEB APIS
API DEMO
API DEMO
API DEMO
API DEMO
HARDWARE APIS
HARDWARE API DEMO
Apple provides Hardware API access to components such as
accelerometer, gyroscope, GPS, network radios and front/rear camera
WHY PROVIDE APIS?
• CAPTURE INTRINSIC VALUE THROUGH ACCESS
• Unique data can push sales of core products/services

• Brands can create valuable content and distribute it via platforms that
extend beyond proprietary channels

• IMPORTANT CUSTOMERS AND/OR PARTNERS ASK

FOR AN API
• Companies can offer their API for free or choose from

various revenue-sharing and direct-usage payment

models

• LURE POTENTIAL CUSTOMERS WITH APIS
• Prospects can experiment with your API, which can

be converted to a formal relationship when traffic/revenue are mutually
beneficial. APIs reduce barriers/excuses to entry
Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
WHY PROVIDE APIS?
• APIS CAN IMPROVE A COMPANY’S TECHNICAL ARCHITECTURE
• Forces management and engineers to find ways to lower maintenance
costs, specifically effort time, while increasing future flexibility

• YOU NEED A 2ND MOBILE APP
• Do you remember when you launched your company’s 1st mobile
app? What if it was just dumb luck?
Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
WHY PROVIDE APIS?
• YOU HAVE DATA AVAILABLE, BUT NO TIME TO USE
• If a department has an important database it does not have time to
use, a private API can allow other departments to benefit from the
data. Don’t hoard data!!!

• YOU PREFER TO BE WORSHIPPED… EVEN IF IT’S BY DEVELOPERS
• Developers want to save time, build their skills & resume, and get paid!
In exchange, developer’s software can/will drive adoption
APIs
Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
API GROWTH
WEB API CATEGORIES
API VALUE CHAIN
Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
WHEN DEVS USE APIS
WHEN COS PROVIDE APIS
WHEN USERS GET APIS
NOW YOU KNOW YOUR APIS
API RESOURCES
www.programmableweb.com
www.mashery.com
www.mashape.com
developers.google.com/products
brackets.io
developer.apple.com/xcode
developer.marvel.com
shopsense.shopstyle.com
instagram.com/developer
map.ipviking.com
http://shop.oreilly.com/product/
0636920021223.do
CHOOSE YOUR API ROLE!
DEVELOPER PROVIDER
THANK YOU FOR YOUR ATTENTION!
Presentation slides are here: http://bit.do/wwapi

More Related Content

Similar to APIs v2

Ankur Bajad
Ankur BajadAnkur Bajad
Ankur Bajad
ankur bajad
 
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
Bastian Migge
 
Designing and Implementing a Multiuser Apps Platform
Designing and Implementing a Multiuser Apps PlatformDesigning and Implementing a Multiuser Apps Platform
Designing and Implementing a Multiuser Apps Platform
Apigee | Google Cloud
 
Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08
Ari Leichtberg
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for Longevity
MuleSoft
 
Pre-Aggregated Analytics And Social Feeds Using MongoDB
Pre-Aggregated Analytics And Social Feeds Using MongoDBPre-Aggregated Analytics And Social Feeds Using MongoDB
Pre-Aggregated Analytics And Social Feeds Using MongoDB
Rackspace
 
Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018
Bill Doerrfeld
 
Ajaxworld Opensocial Presentation
Ajaxworld Opensocial PresentationAjaxworld Opensocial Presentation
Ajaxworld Opensocial Presentation
Chris Schalk
 
Yet Another Fog Simulator (YAFS) - user guide
Yet Another Fog Simulator (YAFS) - user guideYet Another Fog Simulator (YAFS) - user guide
Yet Another Fog Simulator (YAFS) - user guide
wisaaco
 
DSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps MashupsDSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps Mashups
aliraza786
 
Developing Apps: Exposing Your Data Through Araport
Developing Apps: Exposing Your Data Through AraportDeveloping Apps: Exposing Your Data Through Araport
Developing Apps: Exposing Your Data Through Araport
Matthew Vaughn
 
ICAR 2015 Workshop - Matt Vaughn
ICAR 2015 Workshop - Matt VaughnICAR 2015 Workshop - Matt Vaughn
ICAR 2015 Workshop - Matt Vaughn
Araport
 
Introduction to (web) APIs - definitions, examples, concepts and trends
Introduction to (web) APIs - definitions, examples, concepts and trendsIntroduction to (web) APIs - definitions, examples, concepts and trends
Introduction to (web) APIs - definitions, examples, concepts and trends
Olaf Janssen
 
Stop making tools! Nobody likes them anyway...
Stop making tools! Nobody likes them anyway...Stop making tools! Nobody likes them anyway...
Stop making tools! Nobody likes them anyway...
Christophe Guéret
 
Google Opening up to Developers - From 2 to 55 APIs in 3 years
Google Opening up to Developers - From 2 to 55 APIs in 3 yearsGoogle Opening up to Developers - From 2 to 55 APIs in 3 years
Google Opening up to Developers - From 2 to 55 APIs in 3 years
Patrick Chanezon
 
How to Design and Build a Great Web API
How to Design and Build a Great Web APIHow to Design and Build a Great Web API
How to Design and Build a Great Web API
LaunchAny
 
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIsFrom Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
Apigee | Google Cloud
 
APIs are for People Too
APIs are for People TooAPIs are for People Too
APIs are for People Too
Lisa Dusseault
 
Pivorak.javascript.global domination
Pivorak.javascript.global dominationPivorak.javascript.global domination
Pivorak.javascript.global domination
Андрей Вандакуров
 
Andriy Vandakurov about "Frontend. Global domination"
Andriy Vandakurov about  "Frontend. Global domination" Andriy Vandakurov about  "Frontend. Global domination"
Andriy Vandakurov about "Frontend. Global domination"
Pivorak MeetUp
 

Similar to APIs v2 (20)

Ankur Bajad
Ankur BajadAnkur Bajad
Ankur Bajad
 
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
 
Designing and Implementing a Multiuser Apps Platform
Designing and Implementing a Multiuser Apps PlatformDesigning and Implementing a Multiuser Apps Platform
Designing and Implementing a Multiuser Apps Platform
 
Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08Opensocial Haifa Seminar - 2008.04.08
Opensocial Haifa Seminar - 2008.04.08
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for Longevity
 
Pre-Aggregated Analytics And Social Feeds Using MongoDB
Pre-Aggregated Analytics And Social Feeds Using MongoDBPre-Aggregated Analytics And Social Feeds Using MongoDB
Pre-Aggregated Analytics And Social Feeds Using MongoDB
 
Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018Always Mind Your [Developer] Surroundings - API City 2018
Always Mind Your [Developer] Surroundings - API City 2018
 
Ajaxworld Opensocial Presentation
Ajaxworld Opensocial PresentationAjaxworld Opensocial Presentation
Ajaxworld Opensocial Presentation
 
Yet Another Fog Simulator (YAFS) - user guide
Yet Another Fog Simulator (YAFS) - user guideYet Another Fog Simulator (YAFS) - user guide
Yet Another Fog Simulator (YAFS) - user guide
 
DSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps MashupsDSL (Domain Specific Language) for Maps Mashups
DSL (Domain Specific Language) for Maps Mashups
 
Developing Apps: Exposing Your Data Through Araport
Developing Apps: Exposing Your Data Through AraportDeveloping Apps: Exposing Your Data Through Araport
Developing Apps: Exposing Your Data Through Araport
 
ICAR 2015 Workshop - Matt Vaughn
ICAR 2015 Workshop - Matt VaughnICAR 2015 Workshop - Matt Vaughn
ICAR 2015 Workshop - Matt Vaughn
 
Introduction to (web) APIs - definitions, examples, concepts and trends
Introduction to (web) APIs - definitions, examples, concepts and trendsIntroduction to (web) APIs - definitions, examples, concepts and trends
Introduction to (web) APIs - definitions, examples, concepts and trends
 
Stop making tools! Nobody likes them anyway...
Stop making tools! Nobody likes them anyway...Stop making tools! Nobody likes them anyway...
Stop making tools! Nobody likes them anyway...
 
Google Opening up to Developers - From 2 to 55 APIs in 3 years
Google Opening up to Developers - From 2 to 55 APIs in 3 yearsGoogle Opening up to Developers - From 2 to 55 APIs in 3 years
Google Opening up to Developers - From 2 to 55 APIs in 3 years
 
How to Design and Build a Great Web API
How to Design and Build a Great Web APIHow to Design and Build a Great Web API
How to Design and Build a Great Web API
 
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIsFrom Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
 
APIs are for People Too
APIs are for People TooAPIs are for People Too
APIs are for People Too
 
Pivorak.javascript.global domination
Pivorak.javascript.global dominationPivorak.javascript.global domination
Pivorak.javascript.global domination
 
Andriy Vandakurov about "Frontend. Global domination"
Andriy Vandakurov about  "Frontend. Global domination" Andriy Vandakurov about  "Frontend. Global domination"
Andriy Vandakurov about "Frontend. Global domination"
 

APIs v2

  • 1. THE WHAT & WHY OF APIS
  • 2. TODAY’S SCHEDULE Introductions WHAT is an API? HOW to develop with APIs? WHY should I provide APIs?
  • 3. JOHN I. MCSWAIN, III john.i.mcswain@gmail.com @johnmcswain vodka advocate. internet aficionado. gamer. mobile practitioner. thinker. musician.
  • 4. WHAT IS AN API? • APPLICATION PROGRAMMING INTERFACE • APIs are ROUTINES, PROTOCOLS, AND INSTRUMENTS needed for computer APPLICATIONS TO COMMUNICATE with each other • API PROVIDERS give tools to application DEVELOPERS to ease any work efforts. Tools include: • Software Development Kits (SDK) • Libraries • Documentation (i.e. instructions, guidelines) • Data feedback: JSON, XML, Callbacks • Types: PUBLIC, PRIVATE | WEB, SOFTWARE, HARDWARE Jacobson, Daniel, Dan Woods, and Gregory Brail. "What Is an API?” APIs: A Strategy Guide. Sebastopol, CA: O'Reilly, 2012. Print.
  • 5. WHAT IS AN API PROVIDER? • API PROVIDERS typically require developers to REGISTER APPS and ACCEPT TERMS & CONDITIONS • PROVIDERS control WHO uses data, PURPOSE/INTENT of data, & data FREQUENCY (requests / unit of time) • Offenders may have access temporarily REVOKED, and/or can also be PERMANENTLY BANNED
  • 7. DEVELOPERS CONSUME APIS Character Request URL: http://gateway.marvel.com:80/v1/public/characters? apikey=xxxxxxxxxxxxxxxxxx Event Request URL: http://gateway.marvel.com:80/v1/public/events? apikey=xxxxxxxxxxxxxxxxxx Web API Request over HTTP
  • 8. WEB API RESPONSE: JSON? { "code": 200, "status": "Ok", "copyright": "© 2015 MARVEL", "attributionText": "Data provided by Marvel. © 2015 MARVEL", "attributionHTML": "<a href="http://marvel.com">Data provided by Marvel. © 2015 MARVEL</a>", "etag": "d9e1099583b90f03adf5ed4c20c537b80d2ecd04", "data": { "offset": 0, "limit": 20, "total": 1485, "count": 20, "results": [ { "id": 1011334, "name": "3-D Man", "description": "", "modified": "2014-04-29T14:18:17-0400", "thumbnail": { "path": "http://i.annihil.us/u/prod/marvel/i/mg/c/e0/535fecbbb9784", "extension": "jpg" }, "resourceURI": "http://gateway.marvel.com/v1/public/characters/1011334", "comics": { "available": 11, "collectionURI": "http://gateway.marvel.com/v1/public/characters/1011334/comics", "items": [ JSON (JAVASCRIPT OBJECT NOTATION) is a lightweight data- interchange format. Easy for humans to read and write. Easy for machines to parse and generate.
  • 15. HARDWARE API DEMO Apple provides Hardware API access to components such as accelerometer, gyroscope, GPS, network radios and front/rear camera
  • 16. WHY PROVIDE APIS? • CAPTURE INTRINSIC VALUE THROUGH ACCESS • Unique data can push sales of core products/services • Brands can create valuable content and distribute it via platforms that extend beyond proprietary channels • IMPORTANT CUSTOMERS AND/OR PARTNERS ASK
 FOR AN API • Companies can offer their API for free or choose from
 various revenue-sharing and direct-usage payment
 models • LURE POTENTIAL CUSTOMERS WITH APIS • Prospects can experiment with your API, which can
 be converted to a formal relationship when traffic/revenue are mutually beneficial. APIs reduce barriers/excuses to entry Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
  • 17. WHY PROVIDE APIS? • APIS CAN IMPROVE A COMPANY’S TECHNICAL ARCHITECTURE • Forces management and engineers to find ways to lower maintenance costs, specifically effort time, while increasing future flexibility • YOU NEED A 2ND MOBILE APP • Do you remember when you launched your company’s 1st mobile app? What if it was just dumb luck? Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
  • 18. WHY PROVIDE APIS? • YOU HAVE DATA AVAILABLE, BUT NO TIME TO USE • If a department has an important database it does not have time to use, a private API can allow other departments to benefit from the data. Don’t hoard data!!! • YOU PREFER TO BE WORSHIPPED… EVEN IF IT’S BY DEVELOPERS • Developers want to save time, build their skills & resume, and get paid! In exchange, developer’s software can/will drive adoption APIs Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
  • 21. API VALUE CHAIN Jacobson, D., & Woods, D. (2012). APIs: A strategy guide. Sebastopol, CA: O'Reilly.
  • 25. NOW YOU KNOW YOUR APIS
  • 27. CHOOSE YOUR API ROLE! DEVELOPER PROVIDER THANK YOU FOR YOUR ATTENTION! Presentation slides are here: http://bit.do/wwapi