← back to articles

My Heroic and Lazy Stand Against IFTTT (Pinboard Blog)

Save article ToRead Archive Delete · Log out

5 min read · View original · blog.pinboard.in

My Heroic and Lazy Stand Against IFTTT

Imagine if your sewer pipe started demanding that you make major changes in your diet.

Now imagine that it got a lawyer and started asking you to sign things.

You would feel surprised.

This is the position I find myself in today with IFTTT, a form of Internet plumbing that has been connecting peaceably to my backend for the past five years, but which has recently started sending scary emails.

If you've never heard of it, If-This-Then-That is a service that lets you connect websites together, so that things that happen in one place automatically trigger some regrettable action someplace else. For example, you might write an IFTTT ‘recipe’ that tweets anything you post on Facebook, because you are a monster.

A lot of Pinboard people use IFTTT. Yesterday, they received the following form letter:

Dear username,

We're working on a new IFTTT platform for developers that makes building Channels and Recipes a breeze.

Recently, we've worked with our partners to migrate to the improved platform, but some have chosen not to do so. Unfortunately, the Pinboard Channel did not migrate to the new platform and will be removed on April 4th.

Pinboard is one of our favorite services and we're all sad to see it go. We hope down the road it may be back.

Stay tuned to the latest Channels launching on IFTTT!

— The IFTTT Team

Because many of you rely on IFTTT, and because this email makes it sound like I'm the asshole, I feel I should explain myself.

In a nutshell:

  1. IFTTT wants me to do their job for them for free

  2. They have really squirrely terms of service



1. Working for Free

A service like IFTTT writes "shim code" that makes it possible to connect online services together like Legos. Everything slots into everything else. This is thankless, detailed work (like developing TurboTax or Dropbox) that when done right, creates a lot of value.

IFTTT has already written all this shim code. They did it when they were small and had no money, so it's difficult to believe they have to throw it away now that they have lots of staff and thirty million dollars.

Instead, sites that want to work with IFTTT will have to implement a private API that can change without warning.

This is a perfectly reasonable business decision. It is always smart to make other people do all the work.

However, cutting out sites that you have supported for years because they refuse to work for free is not very friendly to your oldest and most loyal users. And claiming that it's the other party's fault that you're discontinuing service is a bit of a dick move.

I am all for glue services, big and small. But it's better for the web that they connect to stable, documented, public APIs, rather than custom private ones.

And if you do want me to write a custom API for you, pay me lots of money.



2. Squirrely Terms of Service

The developer terms of service don't seem to be available by a public URL, so I will quote the bits that stung me. I invite IFTTT lawyers to send me a takedown notice, because that will be the funniest part of this fracas so far.

To begin with, IFTTT wants me to promise never to compete with them:

2.You shall not (and shall not authorize or encourage any third party to), directly or indirectly: [...] (xii) "use the Developer Tool or Service in conjunction with a product or service that competes with products or services offered by IFTTT. You hereby make all assignments necessary to accomplish the foregoing.”

Pinboard is in some ways already a direct competitor to IFTTT. The site offers built-in Twitter integration, analogous to IFTTT’s twitter->Pinboard recipe. I don’t know what rights I would be assigning here, but this is not the way I want to find out.

Next, they make a weird claim about owning not just their API and service, but the content that flows through it:

3. Ownership. IFTTT shall own all right, title, and interest (and all related moral rights and intellectual property rights) in and to the Developer Tool, Service, and Content.

They require that I do custom development work for them, for free, on demand:

11. Compatibility. Each Licensee Channel must maintain 100% compatibility with the Developer Tool and the Service including changes provided to you by IFTTT, which shall be implemented in each Channel promptly thereafter.

And they assert the right to patent any clever ideas I have while doing that free work for them, even though I hate software patents:

12. Patent License. Licensee hereby grants IFTTT a nonexclusive, sublicensable, perpetual, fully-paid, worldwide license to fully exercise and exploit all patent rights with respect to improvements or extensions created by or for Licensee to the API

Finally, they reserve the right to transfer this agreement to anyone at all, without my consent:

17.This Agreement is personal to Licensee and may not be assigned or transferred for any reason [...]. IFTTT expressly reserves the right to assign this Agreement and to delegate any of its obligations hereunder.

I say nuts to all that.

I'm sorry your IFTTT/Pinboard recipes are going to stop working.

It's entirely IFTTT's decision to drop support for Pinboard (along with a bunch of other sites). They are the ones who are going to flip the switch on working code on April 4, and they could just as easily flip the switch back on (or even write an IFTTT recipe that does it for them). Weigh their claims about Pinboard being a beloved service accordingly.

For users left stranded, I recommend taking a look at Zapier or Botize, which offer a similar service, or at one of the dozens of new sites that will spring up next week to capture the market that IFTTT is foolishly abandoning.

—maciej on March 28, 2016