1. Twitter API


This is the main API you’ll use for interacting with twitter accounts: getting friend and follower details, following and unfollowing, and most importantly, posting status updates.

The API is very easy to use (thanks to REST: just make GET or POST requests to various URLs), and thankfully no registration is required; just pass your twitter account details in using HTTP Basic Authentication for the actions that need it.

Although the service is rate-limited to 100 requests per hour, many of the most important actions (such as posting a status update, or following a user) are not included in the rate limits.

2. Twitter search API


Although it’s also run by Twitter, it currently feels like quite a separate service, probably because it has been largely untouched since Twitter bought the Summize search application that it runs from.

The great thing about the Search API is that, within reason, there are no limits on request frequency. So, you can even use it to replace some of the rate-limited actions of the main Twitter API, such as retrieving a (public) user’s timeline.

The Search API will only serve you up to about 1,500 results from recent history. If you plan on doing serious data mining, you’ll have to periodically poll the API and store the aggregated data locally. Also be aware that it has a few little idiosyncrasies (such as how it treats IDs), so where possible use a library to make your API calls, to more easily upgrade your app when the API is made more consistent in the near future.

3. Yahoo! Term Extractor


If you’re interested in semantically analyzing or categorizing tweets, take a look at the Yahoo! API that extracts ‘significant’ terms from text. You’ll need to register for an API key (it’s quick and painless), but once you have it, the API calls are really simple REST. The service is limited by IP address to 5,000 calls per day.

See Also:


4. Google charts


Want to produce some nice bar, line, scatter or pie charts from Twitter data, but can’t be bothered with researching and installing a PHP, Javascript or Flash library? The Google Charts API is the answer! No registration is required, and you just have to create the relevant query string with your data and embed the image URL on your page: Google will do the rest and display the graph.

There are no limits on the number of calls you can make, but Google asks that you let them know if you intend on making more than 250,000 calls per day.

5. Yahoo! GeoPlanetTM


Location-based services are all the rage right now, and Twitter is becoming one of the cornerstones for this burgeoning industry. So you want to extract the ‘location’ from somebody’s tweet and convert it to latitude and longitude, ready for plotting on a Google Map? Yahoo! GeoPlanet does this really well: just pass it a string of text that includes a location, and it will intelligently return a latitude and longitude for the location, along with other useful information.

You’ll need an API key to make requests, but if you signed up for the Yahoo! Term Extractor mentioned above, then you’re halfway there already. Requests are limited to 50,000 per day.

See Also:


6. Compete


A large proportion of tweets include links to other websites, so you may want to perform some analysis on these links. The Compete API will return some useful information about a given website, such as how trusted it is and it’s history of traffic.

As with the other APIs in this list, it’s an easy REST over GET API (just pass your parameters via the query string to a URL). You’ll need to sign-up for an API key, and there’s a limit of 1,000 calls per day unless you negotiate for more (and pass their review/audit).

See also:

http://aws.amazon.com/awis/ (paid service)

7. TwitterCounter


Another simple REST over GET API that returns information about twitter users’ follower numbers such as historical growth numbers, predictions, averages, and so on.

No registration or authentication is required.

8. TwitPic


The de-facto service for embedding images into tweets offers a simple, albeit sparsely documented, API.

Uploading a photo is very simple – just POST the API the binary data associated with the image, together with the twitter username and password for the relevant account. No registration/API key is required.

9. bit.ly


Need to embed a long URL into a limited-space tweet? Bit.ly is the answer. It has a slightly shorter domain than tinyurl.com, and doesn’t have the horrible frame of ow.ly! The API is more complicated than the simple Tinyurl equivalent (see link below). You’ll need to register for a key, but it is far more feature rich, with expansion and statistics features joining the main shortening function.

See Also:


10. Tweetshrink

http://tweetshrink.com/api [No Longer Available]

Another way of squeezing more information into each tweet is to use abbreviations and text-speak. The Tweetshrink API will quickly do these for you: it’s an incredibly simple REST over GET API, with no registration/key required.

11. Yahoo! Spelling suggestion


Need to check those words before sending a status update, but have no local access to a dictionary or spell-checker? The Yahoo! Spelling Suggestion API is here to save you. Pass it a string of text (again, REST over either GET or POST), and it will do it’s best to return a corrected version.

As with the other Yahoo! APIs mentioned, you’ll have to register for an API key, and requests are limited to 5,000 per day per IP address.

Want more great links like these? Stay up-to-date with the latest tech news and views by checking out our weekly tech round-up posts - and sign up to our mailing list to have them delivered direct to your inbox.

About the author

Box UK

Box UK

Box UK's team of simply brilliant thinkers, consultants and application developers mastermind simply brilliant solutions to the world's toughest, performance-critical web and software assignments.



Mar 11th, 2009

http://tr.im can be used to trim urls (and then tweet them straight to twitter). It's also a letter shorter than bit.ly :)


Sep 21st, 2009

thanks, Speaking of location-based mashups being all the latest rage — Geonames.org offers a great JSON based API for this type of thing.

Chris Rosenstein

Sep 12th, 2010

And lets not forget http://www.webpurify.com to get rid of any tweets that contain profanity

Haytham Ahluwalia

Oct 14th, 2012

I am curious to find out what blog system you have been working with? I’m experiencing some small security problems with my latest website and I’d like to find something more risk-free. Do you have any solutions?

Darragh Curran

Mar 12th, 2009

Blatant self promotion ;) My API for http://www.longurlplease.com/ fits nicely with this list. It converts short urls into their originals, which helps you make better decisions about what/when to click on links. Here's a list of some of the twitter apps using it so far: http://www.longurlplease.com/apps

Dan Zambonini

Mar 13th, 2009

@Darragh Ah, yes! I should have included that – an invaluable service! I didn't realise you had an API. Excellent stuff.

Jake Good

Mar 29th, 2009

Also check out Drop.io (http://api.drop.io) as you can send images, videos, documents, or any other file…


Mar 31st, 2009

Annotated links API: http://linkstore.ru/al/api.jsp


Apr 24th, 2009

Speaking of location-based mashups being all the latest rage — Geonames.org offers a great JSON based API for this type of thing.

Twitter Loco

Apr 26th, 2009

tr.im is an excellent tool aswell!

Twitter API

May 17th, 2009

The twitter oAuth api is definitely better than the basic authentication.

Justin K.

Jun 25th, 2009

Great post! There a so many cool tools and apps out there. While it might not be a tool for Twitter App Developemnt, I personally love ref.ly (http://ref.ly). It's a great tool for people who want to share Bible verses on Twitter.

Michael Christopher Duggan-Sechrist

Jun 6th, 2019

What about automation generated quote api

Add Your Comment

Related content

We're hiring. Let's talk. View available roles