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

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
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
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
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
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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
 

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