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:
-
Interest from a wide range of developers and other digitally-connected types. This need not be limited to 'coders' but would apply equally to entrepreneurs, small businesses, and smaller (or those not yet established online) image/content rights management agencies.
-
Contributors workflow & efficiency can be improved significantly, allowing them more time to create (and improve) images or content suitable to your market.
-
Contributors will be capable of assessing their statistics in detail, quickly. Effectively outsourcing the 'leg-work' of analysing your data to determine in which fields you are (or are not) performing well, in bite-size chunks to those people most interested in ensuring their own success (along with yours).
-
Third parties will be capable of connecting to your data on a contributors behalf and performing operations on the data at the request of the contributor.
-
This could involve anything from re-keywording/categorising, to actually repairing or improving images, analysing those which have failed to sell and even fixing the reasons why.
-
A starting point to interconnect with service providers systems and third-parties, streamlining workflow, image processing & handling. Ultimately reducing expenditure on common library management tasks.
-
Perception of the agency standing and forward-thinking-ness, both in industry and among consumers.
Long-term Benefits
The long term benefits are quite different:
-
The features third-parties build onto your system can be used as a model for improving the way your current systems work.
-
Want to know how to shape your user-interface, or exactly what data you need to collect, take a look at the various systems built on your platform and use the best of those as a guide to future development.
-
Potential competitors may find it more cost-efficient to work on your platform, rather than clone your service or try to rebuild your library. This is particularly relevant to niche-targeted content management agencies.
-
The ability to respond to changing customer and contributor demands as the market develops by always having your core functionality available, you can chop-and-change your website or even adapt your whole business model whilst still maintaining functional legacy systems.
-
Security, knowing exactly who is doing what with your data. And the safety of being able to prevent actions which might negatively impact your service. Eliminate screen-scrapers and other perfomance issues by bringing them on-board and ensuring you are helping each-other rather than the scrapers gain being your loss.
-
Easily add and test new functionality for your site in a 'safe' environment, allowing you to try new things (and get feedback from other developers) without negativly impacting your existing systems.
-
A well implemented API used as a backbone to your website or service can contribute to a better, more modular design for all your other systems. Isolating your storage and operations from your business logic, and those from your presentation layer is what good software design is all about: reducing the cost of change and mitigating the risks of technical failures to your business.
-
See your systems being used in ways you could never have imagined:
-
Lightroom/Aperture export plugin anyone?
-
Automatically linking new images on social media as soon as they're approved?
-
Crowd-source the review process? (I must admit, that one would be sweeeeeet!)
-
Generated content, image-mashups, remixes, maintenance operations, tweaks, and other unexpected automations.
-
...?
-
Almost a decade ago, the stock photography industry was at the forefront of the development of the web after the bubble-burst. It now appears to be stagnating when compared to the web 2.0 poster-childs. Programmable web lists only 3 stock agencies in it's entire index. For an industry so dependent upon (and in favour of) crowd-sourcing their content, is it such a leap to crowd-sourcing idea-generation, development and progress too?
-
Developers are no-longer particularly interested in yet-another-image-search API, there is little new for them to invent there which hasn't already been done with the google/yahoo APIs.
-
Give them some new toys to play with and they'll bring you back fantastic things.
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