Benefits of Providing a Contributor API
Bob Davies - picNiche.com
admin@picNiche.com
May 2010
Benefits of Providing a Contributor API

An API is a system allowing manageable and secure communication between your existing systems, and third-party software. This is probably most familiar in very popular websites such as facebook, yahoo (pipes, yql), amazon, ebay or the many google APIs. Many of which make up the backbone of the semantic web (also known in marketing-speak as Web 3.0).

For these companies, their APIs have made a huge difference to the way they do business, both in terms of marketing and exposure, in their value to the wider web community of developers and end-users. The opportunites opened up to their business for expansion, development, and business-to-business relationship building.

The concept of an API is now very common, so I won't go into detail about what it involves; many of the people reading this document will be familiar with the idea, and some already have added APIs for image-buyers. This (when done well) increases the scope of the subject website or application, and increases the number of outlets for their managed library.

This is a companion document to: "Generic Agency Contributor API - Design Outline" which outlines the most basic functions required to support contribution of images and common related data across various image agencies.

The same can be true for an API focussed towards content contributors, especially as the number of contributors at any given agency grows, and the workload of managing submitted images becomes much larger.

Immediate Benefits

The addition of a contributor API would initially improve the following:







Long-term Benefits

The long term benefits are quite different:









Costs & Issues

The financial cost of setting up a contributor API need not be high, and although it clearly doesn't show results direct to the financial statements in the same way as a buyer-API, there are many benefits to be gained from getting your developers to spend a little time to hook everything together.

An API is typically a low-maintenance system, there are no visual designs to keep up-to-date. Though you do need to ensure it links into your existing systems effectively to avoid having to update the same functionality in multiple places.

If you host an API, there's a good chance that people will mash-up your products or services (whatever they may be) with those of your competitors. For some agencies, this is their worst nightmare, for others it provides an opportunity to show off how great their work really is.
If this is a problem for you, stop thinking like it's 2001: people can now hack together their own makeshift API out of your website in a whole variety of ways (many of the google and yahoo APIs actually make this very easy already) but when they do this you get the same losses, both in server performance and increased maintenance/development costs and potential customer-loss, but you gain none of the benefits of running your own API.

Solution

The apiKit allows development of any API quickly, including or remotely calling your existing site functionality, or communicating directly with your database. The source is simple to understand and highly flexible, so your developers can (if desired) extend with even more features than 'just' a Contributor API.

This is precisely why I built the apiKit: it provides the initial framework for development, avoiding the need to start from scratch. I've built a basic design and want to share these with anyone willing to take a look. To be it's best, I need your feedback, both from your technical people on the apiKit source code, and on the proposed design above.

With a Love of Data...

Just a disclaimer: I'm not exactly MBA qualified, I'm an experienced technical bod with a love of data and a belief that content-contributors (and any other people online) are entitled to the data which relates to them and their assets (this just happens to be a legal fact too, in the UK at least).

I can't claim a complete understanding of every single business risk and opportunity, the politics, and policies of such things. I can't honestly say I want too, there is far too much petty, childish, and competitive (or even worse, anti-competitive) behaviour in many established businesses. I feel I have a responsibility to push for collaboration, team-work, every win-win situation I can find (or make), and ultimately: the best of all worlds for everyone.

Join me in my quest :)
Bob