Twitter laid out new developer guidelines and requirements, after much speculation about how developers would be able to use the platform in the future. Some feel pushed around by Twitter's coming restrictions for displaying tweets, rate limiting and the requirement for major apps to gain Twitter's permission. As it has in the past, Twitter is giving developers a long time to plan for the changes--six months.
"What i see in my [timeline] looks like war," said Nico Schoonderwoerd, co-founder of Twitter-based PeerReach. Indeed, developers are very touchy to any changes from Twitter, especially when faced with what the company itself calls stricter guidelines:
In the coming weeks we will release version 1.1 of the Twitter API. To help you plan ahead, we're announcing these changes now, before the new version of the API is available. Changes will include:
- required authentication on every API endpoint
- a new per-endpoint rate-limiting methodology
- changes to our Developer Rules of the Road, especially around applications that are traditional Twitter clients.
Adam Green, who has covered Twitter best practices for ProgrammableWeb, welcomes the clarity. "We can live with all of these changes," Green said. "The most important detail is a clear statement that it will still be legal to display tweets. Turning off tweet display would have left the API useless for most people. The actual changes in numbers for various rate limits won't have much impact, either way."
The authentication requirements may remind developers of 2010's Twitter switch to OAuth. The company gave developers months of notice, but still ended up postponing the changes multiple times.
The rules of the road have, perhaps, the biggest change. What used to be display guidelines are now requirements. "The tweet visual requirements are a shameless effort at total traffic control," Dietrich Ayala tweeted. To show a tweet requires linking to the user's Twitter profile and providing options to reply and retweet.
Certified applications and other pre-approval for high volume apps are sure to ruffle some developer feathers, even though it's common practice in API circles. "All of a sudden people care about Twitter limiting which says you just need permission and which every popular API requires," tweeted Oscar Godson.
Rather than per-app limits on API calls, Twitter is limiting the number of users an app can use before needing to go through an approval process:
If you are building a Twitter client application that is accessing the home timeline, account settings or direct messages API endpoints (typically used by traditional client applications) or are using our User Streams product, you will need our permission if your application will require more than 100,000 individual user tokens.
We will not be shutting down client applications that use those endpoints and are currently over those token limits. If your application already has more than 100,000 individual user tokens, you'll be able to maintain and add new users to your application until you reach 200% of your current user token count (as of today) — as long as you comply with our Rules of the Road. Once you reach 200% of your current user token count, you'll be able to maintain your application to serve your users, but you will not be able to add additional users without our permission.
The approval process is not yet detailed. No doubt there will be stories of developers being cut off, but hopefully Twitter will make those criteria clear in the coming months.
Overall, it's better to clarify these terms than have questions about how developers can use Twitter. It's terms and conditions done right, even though developers might not like all the decisions that the microblogging company made.