SlideShare a Scribd company logo
1 of 24
Download to read offline
@twitterapi
       #annotations #hackcamp @hackcamp @themattharris




@hackcamp                                                TM



Jun 12, 2010
The   team
Our APIs
Our APIs
‣ REST   API
‣ Streaming      API
‣ Search   API
‣ Geo   API
‣ Trends   API
‣ Annotations
Libraries
ActionScript/Flash          Objective-C/Cocoa & iPhone Programming
C/C++                       Perl
C#/.NET                     PHP
Clojure                     Python
Erlang                      Qt
Java                        Ruby
JavaScript                  Scala

http://dev.twitter.com/pages/oauth_libraries
OAuthpocalypse
The day is 30th June
YES 30th JUNE 2010
What you need to know
‣   All applications must be using OAuth for the REST API
‣   Streaming API will still support Basic Auth
‣   Search API has no auth
‣   OAuth attributed open source auth is coming (#needsanewname)
‣   Replace curl with twurl


                 http://dev.twitter.com/pages/auth_overview
                       http://github.com/marcel/twurl
OAuth Methods
‣   Web must use three legged OAuth
‣   Desktop and mobile apps can also use out-of-band OAuth
‣   Some desktop and mobile apps will be considered for xAuth
xAuth not XAuth



       xAuth is OAuth
Check your host!



        api.twitter.com

           twitter.com
Annotations?
AFT
DR
What do annotations look like?
‣   Every annotation has
    ‣   a “type”
                                         [{type1 => {attribute =>
    ‣   type maps to attribute and                             1    val1,
                                                      attribute2 => val2,
        value pair                                    ...,
‣   Types can be repeated but                         attributen => valn}},
    attributes in each annotation          {type2 => {attributen ...
                                                                +1   }},
    cannot be                              ...
                                         ]
‣   Store an array of annotations per
    tweet
‣   Same “visibility policy” as tweets
What makes an annotation?
What makes an annotation?



    Anything you want
The Rules
‣   Rule 1: Put whatever you want in there
‣   Rule 2: Remember annotations you add are useable by others
‣   Rule 3: Nobody owns an annotation type
‣   Rule 4: Be careful consuming them - we don’t do any validation
Examples
What can I do with Annotations?
Check out
http://wiki.github.com/themattharris/annotations-hackfest/
Help...   Check out
          dev.twitter.com
          apiwiki.twitter.com

          or see me :)




                         TM
World Cup   Check out
            twitter.com/worldcup




                        TM
TM
Join the Flock!   Find out more
                  jobs.twitter.com




                               TM
Questions?   Follow me at
             twitter.com/themattharris




                          TM

More Related Content

Similar to Hackcamp

20130504 - FeWeb - Twitter API
20130504  - FeWeb - Twitter API20130504  - FeWeb - Twitter API
20130504 - FeWeb - Twitter API
Pascal Alberty
 
The Open Source... Behind the Tweets
The Open Source... Behind the TweetsThe Open Source... Behind the Tweets
The Open Source... Behind the Tweets
Chris Aniszczyk
 
Github github-github
Github github-githubGithub github-github
Github github-github
fusion2011
 
ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...
ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...
ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...
Cyber Security Alliance
 

Similar to Hackcamp (20)

20130504 - FeWeb - Twitter API
20130504  - FeWeb - Twitter API20130504  - FeWeb - Twitter API
20130504 - FeWeb - Twitter API
 
Vapor london March 2018
Vapor london March 2018Vapor london March 2018
Vapor london March 2018
 
Get cfml Into the Box 2018
Get cfml Into the Box 2018Get cfml Into the Box 2018
Get cfml Into the Box 2018
 
The Open Source... Behind the Tweets
The Open Source... Behind the TweetsThe Open Source... Behind the Tweets
The Open Source... Behind the Tweets
 
All you need to know about crawlers
All you need to know about crawlersAll you need to know about crawlers
All you need to know about crawlers
 
Type Annotations in Python: Whats, Whys and Wows!
Type Annotations in Python: Whats, Whys and Wows!Type Annotations in Python: Whats, Whys and Wows!
Type Annotations in Python: Whats, Whys and Wows!
 
Github github-github
Github github-githubGithub github-github
Github github-github
 
TwitterKitではじめる OAuthスピードクッキング
TwitterKitではじめる OAuthスピードクッキングTwitterKitではじめる OAuthスピードクッキング
TwitterKitではじめる OAuthスピードクッキング
 
Slicing, Dicing, And Linting OpenAPI
Slicing, Dicing, And Linting OpenAPISlicing, Dicing, And Linting OpenAPI
Slicing, Dicing, And Linting OpenAPI
 
Scrippets — the way to refine Snippets Application
Scrippets — the way to refine Snippets ApplicationScrippets — the way to refine Snippets Application
Scrippets — the way to refine Snippets Application
 
DevOps - A Purpose for an Institution.pdf
DevOps - A Purpose for an Institution.pdfDevOps - A Purpose for an Institution.pdf
DevOps - A Purpose for an Institution.pdf
 
Crafting APIs
Crafting APIsCrafting APIs
Crafting APIs
 
Kotlin tutorial
Kotlin tutorialKotlin tutorial
Kotlin tutorial
 
Development: What they don't teach you in college
Development: What they don't teach you in collegeDevelopment: What they don't teach you in college
Development: What they don't teach you in college
 
Development: What They Don't Teach You in College
Development: What They Don't Teach You in CollegeDevelopment: What They Don't Teach You in College
Development: What They Don't Teach You in College
 
Djangocon 2014 angular + django
Djangocon 2014 angular + djangoDjangocon 2014 angular + django
Djangocon 2014 angular + django
 
Developing apps using Perl
Developing apps using PerlDeveloping apps using Perl
Developing apps using Perl
 
Protocols with Associated Types, and How They Got That Way
Protocols with Associated Types, and How They Got That WayProtocols with Associated Types, and How They Got That Way
Protocols with Associated Types, and How They Got That Way
 
ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...
ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...
ASFWS 2012 - Contourner les conditions d’utilisation et l’API du service Twit...
 
Motion Django Meetup
Motion Django MeetupMotion Django Meetup
Motion Django Meetup
 

Recently uploaded

Recently uploaded (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Hackcamp

  • 1. @twitterapi #annotations #hackcamp @hackcamp @themattharris @hackcamp TM Jun 12, 2010
  • 2. The team
  • 4. Our APIs ‣ REST API ‣ Streaming API ‣ Search API ‣ Geo API ‣ Trends API ‣ Annotations
  • 5. Libraries ActionScript/Flash Objective-C/Cocoa & iPhone Programming C/C++ Perl C#/.NET PHP Clojure Python Erlang Qt Java Ruby JavaScript Scala http://dev.twitter.com/pages/oauth_libraries
  • 8. What you need to know ‣ All applications must be using OAuth for the REST API ‣ Streaming API will still support Basic Auth ‣ Search API has no auth ‣ OAuth attributed open source auth is coming (#needsanewname) ‣ Replace curl with twurl http://dev.twitter.com/pages/auth_overview http://github.com/marcel/twurl
  • 9. OAuth Methods ‣ Web must use three legged OAuth ‣ Desktop and mobile apps can also use out-of-band OAuth ‣ Some desktop and mobile apps will be considered for xAuth
  • 10. xAuth not XAuth xAuth is OAuth
  • 11. Check your host! api.twitter.com twitter.com
  • 14. What do annotations look like? ‣ Every annotation has ‣ a “type” [{type1 => {attribute => ‣ type maps to attribute and 1 val1, attribute2 => val2, value pair ..., ‣ Types can be repeated but attributen => valn}}, attributes in each annotation {type2 => {attributen ... +1 }}, cannot be ... ] ‣ Store an array of annotations per tweet ‣ Same “visibility policy” as tweets
  • 15. What makes an annotation?
  • 16. What makes an annotation? Anything you want
  • 17. The Rules ‣ Rule 1: Put whatever you want in there ‣ Rule 2: Remember annotations you add are useable by others ‣ Rule 3: Nobody owns an annotation type ‣ Rule 4: Be careful consuming them - we don’t do any validation
  • 18. Examples What can I do with Annotations?
  • 20. Help... Check out dev.twitter.com apiwiki.twitter.com or see me :) TM
  • 21. World Cup Check out twitter.com/worldcup TM
  • 22. TM
  • 23. Join the Flock! Find out more jobs.twitter.com TM
  • 24. Questions? Follow me at twitter.com/themattharris TM