About three days ago, there was an extended outage at Instapaper. Luckily, it seems like there wasn’t any permanent data loss – everybody’s bookmarks are still safe – but this sort of incident can make you worry.
I have a Python script that backs up my Instapaper bookmarks on a regular basis, so I was never worried about data loss. At worst, I’d have lost an hour or so of changes – fairly minor, in the grand scheme of things. I’ve been meaning to tidy it up and share it for a while, and this outage prompted me to get on and finish that. You can find the script and the installation instructions on GitHub.
I use ReadKit to manage my Instapaper queue on my Mac. Although Instapaper’s web interface is much nicer than it used to be, I still prefer ReadKit for processing lots of items at once. But sometimes I try to open an item in Safari, and I get an error:
There is no application set to open the URL instapaper://private-content/480777221. Search the App Store for an application that can open this document, or choose an existing application on your computer.
These are items that I’ve added to Instapaper by email, which don’t have a URL associated with them in Instapaper’s database. (Email newsletters are one example.) Instead, the URL refers to an Instapaper database entry, which Safari can’t open. If I was on iOS, an
instapaper:// URL would be redirected to the Instapaper iOS app.
But the item does exist in the Instapaper web interface, which can be opened in Safari. It has a URL that looks like this:
(Of course, that link doesn’t work unless Safari is logged into my account, but I always am.)
I wanted a way to catch these
instapaper:// links, and redirect to the appropriate item in the web interface without hitting an alert.