Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Twitter API's par Pascal Alberty, CTO de TweetWallPro

1,427 views

Published on

Conférence FeWeb - 04/06/2013
Louvain-la-Neuve (Belgium)

More info:
http://www.tesial.be
http://www.tweetwallpro.com

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Twitter API's par Pascal Alberty, CTO de TweetWallPro

  1. 1. Twitter APIKeys for creating an awesome application !
  2. 2. Pascal Alberty@zorrobiwanCTO Managing Partner
  3. 3. Twitter Dev Ecosystem● Twitter success○ Thanks Dev Community !● API○ September 2006○ Very complete○ Open○ Freehttps://blog.twitter.com/2006/introducing-twitter-api
  4. 4. The APIs● APIs○ Search API○ REST API○ Streaming API○ https://dev.twitter.com/docs/history-rest-search-api● Versions○ API version 1 (almost deprecated)○ API version 1.1
  5. 5. Resourceshttps://dev.twitter.com/(Drupal )
  6. 6. Authentication● OAuth○ Each API request must be authorized○ Access token on behalf of a Twitter user● Obtaining access token○ Sign in with Twitter○ 3-legged OAuth○ Pin based OAuth○ dev.twitter.com○ ...https://twitter.com/settings/applications
  7. 7. Declare your applicationhttps://dev.twitter.com/apps/new
  8. 8. Rate limiting● Rate limit window duration○ 15 minutes● Requests allotted○ per user○ via application-only auth● Example○ GET statuses/user_timeline○ per user: 150 requests per 15 minutes○ via app: 300 requests per 15 minuteshttps://dev.twitter.com/docs/rate-limiting/1.1/limits
  9. 9. Other technical limits● Direct messages○ 250 per day● Tweets○ 1,000 per day○ Retweets are counted as Tweets.● Changes to account email○ Four per hour● Following○ 1,000 per day● Following (account-based)○ up to following 2,000 other users
  10. 10. Platform objects● Tweets can be found alone, within user objects, butmost often within timelines● Users can be found tweeting, following, andfavoriting on Twitter● Entities are most often found within Tweets● Places can be found throughout the natural universe,but typically only appear attached to Tweets on Twitter
  11. 11. Objects type● JSON !● XML output will be dropped soon○ Only JSON output with API 1.1● Be careful with ids (64 bits)○ use String version (especially if using Javascript)○ Twitpocalypse■ https://dev.twitter.com/docs/twitter-ids-json-and-snowflake○ Idpocalypse■ https://dev.twitter.com/blog/64-bit-twitter-user-idpocalypse
  12. 12. Tweet Examplehttps://api.twitter.com/1/statuses/show.json?id=341545927401680897&include_entities=true
  13. 13. User examplehttps://api.twitter.com/1/users/show.json?screen_name=zorrobiwan&include_entities=true
  14. 14. Entities / Entity Example● Hashtags, Medias, URLs, User mentions,Symbols● No need to parse● Data used for display also (ex: display_url)
  15. 15. Place examplehttps://api.twitter.com/1/geo/id/247f43d441defc03.json
  16. 16. Libraries● PHP○ Twitter-async (https://github.com/jmathai/twitter-async)○ tmhOAuth (https://github.com/themattharris/tmhOAuth)○ Zend Framework (http://framework.zend.com/manual/1.12/en/zend.service.twitter.html)● Java○ Twitter4J (http://twitter4j.org/)https://dev.twitter.com/docs/twitter-libraries
  17. 17. Tools● Twurl○ https://github.com/marcel/twurl○ "curl" for Twitter API○ Manage access tokens (authentication)● Apigee Console○ https://apigee.com/console○ Free console to execute APIs
  18. 18. Search API● Similar to http://search.twitter.com● Criteria○ terms○ geocode○ language ("Language detection is best-effort")○ count, until, since-id, max-id○ result type: mixed, recent, popular○ include entities● Paginated !○ you have to manage this by yourself
  19. 19. REST API● Timelines● Tweets● Direct Messages● Friends & Followers● Users● Suggested Users● Favorites● Lists● Saved Searches● Places & Geo● Trends● Spam Reporting● OAuth● Help
  20. 20. Streaming API● Persistent HTTP connection○ until you decide to close it● Could be reeeeaaaaaaally huge !○ Think about you architecture (hard and soft) !○ Separate storage and consumption● Only one stream opened at a time● Could be tricky to managed○ Use a library
  21. 21. Streaming API endpoints groups● Public Streams○ GET statuses/sample○ POST statuses/filter○ GET statuses/firehose (limited access)● User Streams○ Data and events for a specific user● Site Streams (beta and limited access)○ Real time update for large number of users
  22. 22. Twitter APIKeys for creating an awesome application !https://twitter.com/zorrobiwan/status/341888609399480323

×