Instapaper announced today that its full API is now available to developers. The documentation is here. Up until now, developers have been able to add articles to a users Instapaper account using the API, but haven't been able to give uses access to their articles. According to Instapaper creator Marco Arment, third party applications that allow users to read articles actually scrape Instapaper site for content. Developers will now be able to pull down articles from the API, but there is a catch.
Arment writes that he was reluctant to make a full API available because he was worried about competing apps driving Instapaper out of business. The cost of maintaining Instapaper is non-trivial, and it makes the majority of its money from its iOS application. Instapaper doesn't have venture backing to support the costs associated with an free API, so the company needs to remain cash flow positive.
To make a full API available, Arment has come up with a compromise: any developer can use the API to build a fully featured Instapaper app, but the app will only work for customers that pay $1 for an Instapaper subscription. He clarifies in a blog post:
- If you have already implemented the Instapaper API in your app, you don't need to change anything.
- If you're writing support for Instapaper, and all you need to do is add pages to someone's Instapaper account, they don't need to be a Subscriber and you can use the Simple API.
- If your app needs to read data from an Instapaper account, it must use the new Full API, and its customers need to be Subscribers.
It seems like developers who want to can still scrape Instapaper, but I for one will seek out a third-party Android app that uses the official API.