A proprietary API typically has one or more of the following characteristics:
- one-off - only works on one site / silo
- owned / controlled by a single company - or at best a few companies, an oligopoly as it were.
- nasty TOS - a terms of service that is unfriendly to developers and users, often forcing them to give up numerous rights, placing unnecessary burdens upon them (e.g. you must display data in such and such a way)
By contrast, an open API or protocol is typically:
- interoperable — it works on multiple sites
- developed in the open — i.e. decision-making processes are open for consumers to observe and influence with, reference implementations are available to the general public for free (as in beer+freedom)
- unencumbered by TOS or patents — licensed under a liberal license
What does owned or controlled mean
Q: What, in practical terms, does it mean for one or more companies to “own” or “control” an API?
A: “control/ownership” in this case refers to:
- decision-making processes being hidden from + excluding, therefore disempowering, consumers of the API
- reference implementation being closed-source
- official documentation being authored exclusively by the controlling organization
Is Twitter API proprietary
A: Yes it is proprietary because:
- Twitter owns & controls it, i.e. the decision-making processes and reference implementation are completely closed to consumers, and the documentation is controlled by Twitter.
- It has a nasty TOS - e.g. display requirements
- Status.net does not "implement it". Status.net implements some subset of the old Twitter API. In essence Status.net has an API that is based on a clone/fork of an older version of the Twitter API.