Difference between revisions of "C4LN 2012: Intro to the Twitter API"
From Code4Lib
Shadowspar (Talk | contribs) (→API Overview) |
Shadowspar (Talk | contribs) m (→API Overview) |
||
Line 13: | Line 13: | ||
* the '''Streaming API''' | * the '''Streaming API''' | ||
* the '''Search API''' | * the '''Search API''' | ||
+ | |||
==== REST API ==== | ==== REST API ==== |
Revision as of 13:25, 24 May 2012
Presenter: Rick Scott - @shadowspar
Contents
API Overview
- https://dev.twitter.com/ is API central.
- https://dev.twitter.com/docs is the main documentation area -- you'll spend a lot of time here =)
- other useful things linked from dev.twitter.com: API Status, API Known Issues, blog & discussion
Parts
- the REST API
- the Streaming API
- the Search API
REST API
- query→response based access
- the mainstay of the API; the first part of it you'll want to be concerned with, and the part you'll likely use most
Streaming API
- aka drinking from the firehose =)
- persistent connection
- push-based communication w/ v.high ratelimit (1% of all tweets)
Search API
- just like it says on the tin
- also trending topics
Find your library
https://dev.twitter.com/docs/twitter-libraries has a good list
- Perl: Net::Twitter
- Python: tweepy and many others
- Ruby: twitter rubygem and others
Creating a new app
First steps
- https://dev.twitter.com/apps/new
- sign in with your twitter account
- fill out basic info about your app
- agree to be a good citizen, as detailed below
Huzzah! You have your very own app!
Setup
- Details tab
- Settings tab:
- Application type:
- Read
- Read/Write
- Read/Write/Access DMs
- Application type:
- receive OAuth keys
Bot-specific stuff
- create an account for your bot
- authorize it on your app
Rules of Conduct
General Rules of the Road and TOS
- https://dev.twitter.com/terms/api-terms
- https://support.twitter.com/articles/76915 - automation rules and best practices
Rate limits
Other gotchas
- Repeated tweets
Example
http://twitter.com/inetkami https://github.com/rickscott/inetkami
Other Miscellany
- t, a Ruby command-line interface to the Twitter API