SlideShare une entreprise Scribd logo
1  sur  13
API Experience Sean O Sullivan, CTO  [email_address] one number to get things done, hands-free
 
 
 
Dial One Number to … Currently 40+ services Interactive, Two-Way service  (not just voice to text) Integrates with existing web applications “ sandy” “ Evernote” “ Mosio” “ RTM” “ text” jaiku “ jajah” “ twitter” “ NYT” “ Huff Post” “ tumblr” “ Blogger”
One number, many services
Technical Overview
APIs Lots of API usage in our projects Mobile and Telephony (SMS, on-device APIs, Ribbit …) Classic Web APIs (Google, Facebook, twitter, ping.fm, Jajah…) Also provide our own APIs (not public yet)
Good news Good Examples Broadly speaking, many APIs Facebook API Last.fm Google Are well-documented Are well-structured Have associated documentation and code samples
Issues Security Each service tends to have a different approach to authentication OpenID, OAuth, Token-based (by user or by service), or worst case username/password Often multiple forms of security supported (Google, Yahoo) Architecture and Design Dependencies on third parties - outages outside your control Is twitter down for everyone or just me? :-) Defensive design and coding (async, failure cases) Other Some services not well documented (Bebo)
Authentication Token based, per service Usernames and Passwords don’t need to be stored User control to revoke individual services Your service looks/feels better Oauth or OpenID  based Standard with some widespread adoption Google, Yahoo, others… Good documentation, good tools Token based, per user Usernames and Passwords don’t need to be stored Token is at user account level  Revoke the token, revoke all services Username / Password Least desirable - YOU have to store username/password
Authorisation OpenID Has not as yet seen wide adoption - but will most likely get there (URLs, more complex to grasp for end user) More features than OAuth Cool Off Period Have to protect against brute force auth attacks Need cool-off periods after multiple auth fails e.g. dictionary attack on twitter  OAuth We are a Consumer but not yet a provider
Sean O Sullivan, CTO  [email_address] one number to get things done, hands-free

Contenu connexe

Similaire à Dial2Do : API Experience

The Ball Launch on 2013 Microsoft TechDays Part 1/2
The Ball Launch on 2013 Microsoft TechDays Part 1/2The Ball Launch on 2013 Microsoft TechDays Part 1/2
The Ball Launch on 2013 Microsoft TechDays Part 1/2Kallex
 
OWF14 - Project & Community Driving : Community management of a free software...
OWF14 - Project & Community Driving : Community management of a free software...OWF14 - Project & Community Driving : Community management of a free software...
OWF14 - Project & Community Driving : Community management of a free software...Paris Open Source Summit
 
Launching a Successful and Secure API
Launching a Successful and Secure APILaunching a Successful and Secure API
Launching a Successful and Secure APINordic APIs
 
Shibboleth Guided Tour Webinar
Shibboleth Guided Tour WebinarShibboleth Guided Tour Webinar
Shibboleth Guided Tour WebinarJohn Lewis
 
Getting started in app sec
Getting started in app secGetting started in app sec
Getting started in app secAmit Dubey
 
UserCentric Identity based Service Invocation
UserCentric Identity based Service InvocationUserCentric Identity based Service Invocation
UserCentric Identity based Service Invocationguestd5dde6
 
Rest API Security - A quick understanding of Rest API Security
Rest API Security - A quick understanding of Rest API SecurityRest API Security - A quick understanding of Rest API Security
Rest API Security - A quick understanding of Rest API SecurityMohammed Fazuluddin
 
Delray chamber re google apps
Delray chamber re google appsDelray chamber re google apps
Delray chamber re google appsTerra Spero
 
Protecting Your APIs Against Attack & Hijack
Protecting Your APIs Against Attack & Hijack Protecting Your APIs Against Attack & Hijack
Protecting Your APIs Against Attack & Hijack CA API Management
 
OAuth in the Real World featuring Webshell
OAuth in the Real World featuring WebshellOAuth in the Real World featuring Webshell
OAuth in the Real World featuring WebshellCA API Management
 
Single sign on (SSO) How does your company apply?
Single sign on (SSO) How does your company apply?Single sign on (SSO) How does your company apply?
Single sign on (SSO) How does your company apply?Đỗ Duy Trung
 
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech ServerTulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech ServerJason Townsend, MBA
 
OWASP Secure Coding
OWASP Secure CodingOWASP Secure Coding
OWASP Secure Codingbilcorry
 
BSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingBSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingAndrew McNicol
 
Global Azure2021 Verona.pptx
Global Azure2021 Verona.pptxGlobal Azure2021 Verona.pptx
Global Azure2021 Verona.pptxLuis Beltran
 
DataSploit - Tool Demo at Null Bangalore - March Meet.
DataSploit - Tool Demo at Null Bangalore - March Meet. DataSploit - Tool Demo at Null Bangalore - March Meet.
DataSploit - Tool Demo at Null Bangalore - March Meet. Shubham Mittal
 
Openid & Oauth: An Introduction
Openid & Oauth: An IntroductionOpenid & Oauth: An Introduction
Openid & Oauth: An IntroductionSteve Ivy
 

Similaire à Dial2Do : API Experience (20)

A A A
A A AA A A
A A A
 
The Ball Launch on 2013 Microsoft TechDays Part 1/2
The Ball Launch on 2013 Microsoft TechDays Part 1/2The Ball Launch on 2013 Microsoft TechDays Part 1/2
The Ball Launch on 2013 Microsoft TechDays Part 1/2
 
OWF14 - Project & Community Driving : Community management of a free software...
OWF14 - Project & Community Driving : Community management of a free software...OWF14 - Project & Community Driving : Community management of a free software...
OWF14 - Project & Community Driving : Community management of a free software...
 
Launching a Successful and Secure API
Launching a Successful and Secure APILaunching a Successful and Secure API
Launching a Successful and Secure API
 
Shibboleth Guided Tour Webinar
Shibboleth Guided Tour WebinarShibboleth Guided Tour Webinar
Shibboleth Guided Tour Webinar
 
Getting started in app sec
Getting started in app secGetting started in app sec
Getting started in app sec
 
UserCentric Identity based Service Invocation
UserCentric Identity based Service InvocationUserCentric Identity based Service Invocation
UserCentric Identity based Service Invocation
 
Rest API Security - A quick understanding of Rest API Security
Rest API Security - A quick understanding of Rest API SecurityRest API Security - A quick understanding of Rest API Security
Rest API Security - A quick understanding of Rest API Security
 
Delray chamber re google apps
Delray chamber re google appsDelray chamber re google apps
Delray chamber re google apps
 
Protecting Your APIs Against Attack & Hijack
Protecting Your APIs Against Attack & Hijack Protecting Your APIs Against Attack & Hijack
Protecting Your APIs Against Attack & Hijack
 
OAuth in the Real World featuring Webshell
OAuth in the Real World featuring WebshellOAuth in the Real World featuring Webshell
OAuth in the Real World featuring Webshell
 
Single sign on (SSO) How does your company apply?
Single sign on (SSO) How does your company apply?Single sign on (SSO) How does your company apply?
Single sign on (SSO) How does your company apply?
 
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech ServerTulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
Tulsa Techfest 2008 - Creating A Voice User Interface With Speech Server
 
OWASP Secure Coding
OWASP Secure CodingOWASP Secure Coding
OWASP Secure Coding
 
BSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated TestingBSidesDC 2016 Beyond Automated Testing
BSidesDC 2016 Beyond Automated Testing
 
Auth experience - vol 1.0
Auth experience  - vol 1.0Auth experience  - vol 1.0
Auth experience - vol 1.0
 
Global Azure2021 Verona.pptx
Global Azure2021 Verona.pptxGlobal Azure2021 Verona.pptx
Global Azure2021 Verona.pptx
 
Moving To The Cloud
Moving To The CloudMoving To The Cloud
Moving To The Cloud
 
DataSploit - Tool Demo at Null Bangalore - March Meet.
DataSploit - Tool Demo at Null Bangalore - March Meet. DataSploit - Tool Demo at Null Bangalore - March Meet.
DataSploit - Tool Demo at Null Bangalore - March Meet.
 
Openid & Oauth: An Introduction
Openid & Oauth: An IntroductionOpenid & Oauth: An Introduction
Openid & Oauth: An Introduction
 

Plus de Sean O'Sullivan

Effective Software : Distributed Engineering Team in Europe
Effective Software : Distributed Engineering Team in EuropeEffective Software : Distributed Engineering Team in Europe
Effective Software : Distributed Engineering Team in EuropeSean O'Sullivan
 
Beacosystem Talk @ MongoDB User Group Dublin @sos100
Beacosystem Talk @ MongoDB User Group Dublin @sos100Beacosystem Talk @ MongoDB User Group Dublin @sos100
Beacosystem Talk @ MongoDB User Group Dublin @sos100Sean O'Sullivan
 
Hardware is Cool (again)
Hardware is Cool (again)Hardware is Cool (again)
Hardware is Cool (again)Sean O'Sullivan
 
LocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
LocalSocial O Reilly Webcast Slides - A Tour of the BeacosystemLocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
LocalSocial O Reilly Webcast Slides - A Tour of the BeacosystemSean O'Sullivan
 
LocalSocial Getting Started Guide
LocalSocial Getting Started GuideLocalSocial Getting Started Guide
LocalSocial Getting Started GuideSean O'Sullivan
 
Real Estate, Property and iBeacon
Real Estate, Property and iBeaconReal Estate, Property and iBeacon
Real Estate, Property and iBeaconSean O'Sullivan
 
Indoor Location / iBeacon @ Digital Summit Ireland by LocalSocial
Indoor Location / iBeacon @ Digital Summit Ireland by LocalSocialIndoor Location / iBeacon @ Digital Summit Ireland by LocalSocial
Indoor Location / iBeacon @ Digital Summit Ireland by LocalSocialSean O'Sullivan
 
LocalSocial Bluetooth Webinar
LocalSocial Bluetooth WebinarLocalSocial Bluetooth Webinar
LocalSocial Bluetooth WebinarSean O'Sullivan
 
LocalSocial - Indoor Location Positioning Overview
LocalSocial - Indoor Location Positioning OverviewLocalSocial - Indoor Location Positioning Overview
LocalSocial - Indoor Location Positioning OverviewSean O'Sullivan
 
LocalSocial : In-store engagement platform
LocalSocial : In-store engagement platformLocalSocial : In-store engagement platform
LocalSocial : In-store engagement platformSean O'Sullivan
 
LocalSocial Smart Mobile Marketing
LocalSocial Smart Mobile MarketingLocalSocial Smart Mobile Marketing
LocalSocial Smart Mobile MarketingSean O'Sullivan
 
Wireless Systems Congress LocalSocial
Wireless Systems Congress LocalSocialWireless Systems Congress LocalSocial
Wireless Systems Congress LocalSocialSean O'Sullivan
 
Software Development Engineers Ireland
Software Development Engineers IrelandSoftware Development Engineers Ireland
Software Development Engineers IrelandSean O'Sullivan
 
LocalSocial Overview Q2 2011
LocalSocial Overview Q2 2011 LocalSocial Overview Q2 2011
LocalSocial Overview Q2 2011 Sean O'Sullivan
 
LocalSocial Overview Q22011
LocalSocial Overview Q22011LocalSocial Overview Q22011
LocalSocial Overview Q22011Sean O'Sullivan
 

Plus de Sean O'Sullivan (20)

Effective Software : Distributed Engineering Team in Europe
Effective Software : Distributed Engineering Team in EuropeEffective Software : Distributed Engineering Team in Europe
Effective Software : Distributed Engineering Team in Europe
 
Beacosystem Talk @ MongoDB User Group Dublin @sos100
Beacosystem Talk @ MongoDB User Group Dublin @sos100Beacosystem Talk @ MongoDB User Group Dublin @sos100
Beacosystem Talk @ MongoDB User Group Dublin @sos100
 
Hardware is cool again
Hardware is cool againHardware is cool again
Hardware is cool again
 
Hardware is Cool (again)
Hardware is Cool (again)Hardware is Cool (again)
Hardware is Cool (again)
 
LocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
LocalSocial O Reilly Webcast Slides - A Tour of the BeacosystemLocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
LocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
 
LocalSocial Getting Started Guide
LocalSocial Getting Started GuideLocalSocial Getting Started Guide
LocalSocial Getting Started Guide
 
Beacosystem V3
Beacosystem V3Beacosystem V3
Beacosystem V3
 
LocalSocial @ AppsWorld
LocalSocial @ AppsWorldLocalSocial @ AppsWorld
LocalSocial @ AppsWorld
 
Real Estate, Property and iBeacon
Real Estate, Property and iBeaconReal Estate, Property and iBeacon
Real Estate, Property and iBeacon
 
Indoor Location / iBeacon @ Digital Summit Ireland by LocalSocial
Indoor Location / iBeacon @ Digital Summit Ireland by LocalSocialIndoor Location / iBeacon @ Digital Summit Ireland by LocalSocial
Indoor Location / iBeacon @ Digital Summit Ireland by LocalSocial
 
LocalSocial Bluetooth Webinar
LocalSocial Bluetooth WebinarLocalSocial Bluetooth Webinar
LocalSocial Bluetooth Webinar
 
LocalSocial - Indoor Location Positioning Overview
LocalSocial - Indoor Location Positioning OverviewLocalSocial - Indoor Location Positioning Overview
LocalSocial - Indoor Location Positioning Overview
 
LocalSocial : In-store engagement platform
LocalSocial : In-store engagement platformLocalSocial : In-store engagement platform
LocalSocial : In-store engagement platform
 
Beyond The Check-In
Beyond The Check-InBeyond The Check-In
Beyond The Check-In
 
LocalSocial Smart Mobile Marketing
LocalSocial Smart Mobile MarketingLocalSocial Smart Mobile Marketing
LocalSocial Smart Mobile Marketing
 
Wireless Systems Congress LocalSocial
Wireless Systems Congress LocalSocialWireless Systems Congress LocalSocial
Wireless Systems Congress LocalSocial
 
Software Development Engineers Ireland
Software Development Engineers IrelandSoftware Development Engineers Ireland
Software Development Engineers Ireland
 
LocalSocial Overview Q2 2011
LocalSocial Overview Q2 2011 LocalSocial Overview Q2 2011
LocalSocial Overview Q2 2011
 
LocalSocial Overview Q22011
LocalSocial Overview Q22011LocalSocial Overview Q22011
LocalSocial Overview Q22011
 
LocalSocial @ MoMoLo
LocalSocial @ MoMoLoLocalSocial @ MoMoLo
LocalSocial @ MoMoLo
 

Dernier

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Dernier (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

Dial2Do : API Experience

  • 1. API Experience Sean O Sullivan, CTO [email_address] one number to get things done, hands-free
  • 2.  
  • 3.  
  • 4.  
  • 5. Dial One Number to … Currently 40+ services Interactive, Two-Way service (not just voice to text) Integrates with existing web applications “ sandy” “ Evernote” “ Mosio” “ RTM” “ text” jaiku “ jajah” “ twitter” “ NYT” “ Huff Post” “ tumblr” “ Blogger”
  • 6. One number, many services
  • 8. APIs Lots of API usage in our projects Mobile and Telephony (SMS, on-device APIs, Ribbit …) Classic Web APIs (Google, Facebook, twitter, ping.fm, Jajah…) Also provide our own APIs (not public yet)
  • 9. Good news Good Examples Broadly speaking, many APIs Facebook API Last.fm Google Are well-documented Are well-structured Have associated documentation and code samples
  • 10. Issues Security Each service tends to have a different approach to authentication OpenID, OAuth, Token-based (by user or by service), or worst case username/password Often multiple forms of security supported (Google, Yahoo) Architecture and Design Dependencies on third parties - outages outside your control Is twitter down for everyone or just me? :-) Defensive design and coding (async, failure cases) Other Some services not well documented (Bebo)
  • 11. Authentication Token based, per service Usernames and Passwords don’t need to be stored User control to revoke individual services Your service looks/feels better Oauth or OpenID based Standard with some widespread adoption Google, Yahoo, others… Good documentation, good tools Token based, per user Usernames and Passwords don’t need to be stored Token is at user account level Revoke the token, revoke all services Username / Password Least desirable - YOU have to store username/password
  • 12. Authorisation OpenID Has not as yet seen wide adoption - but will most likely get there (URLs, more complex to grasp for end user) More features than OAuth Cool Off Period Have to protect against brute force auth attacks Need cool-off periods after multiple auth fails e.g. dictionary attack on twitter OAuth We are a Consumer but not yet a provider
  • 13. Sean O Sullivan, CTO [email_address] one number to get things done, hands-free

Notes de l'éditeur

  1. Dial2Do is focused on enabling drivers to do things while they drive. The service was launched to public in August 2008.