6.3 Why Expose an API?
Amazon made a radical
break from conventional business thinking when they released their
Web Services API in July of 2002. Instead of tightly controlling
their product database—one of their biggest assets—they
decided to open a direct gateway allowing developers to tinker and
experiment. Not only does this direct access make all of their
product information available for other applications, it's completely
free for anyone to use—in fact, with the Amazon Associates
program, they'll pay you to use it. It sounds counterintuitive on the
surface; after all, with this sort of access, someone could just
duplicate most of Amazon.com's functionality with a different look
and feel. They could even host it on their own web site! Call it
"syndicated e-commerce." To fully understand the API, it's important
to understand why Amazon released it in the first place.
As Amazon grew, they became one of the largest places to shop on the
Web. They also became one of the largest sources of information about
products on the Web. Their product information, customer reviews,
sales rank information, and many other supporting bits of data became
valuable in its own right. Developers started screen-scraping this
information to build their own applications. Most large sites like
Amazon frown on screen scraping because it uses valuable server
resources in ways they didn't intend. But instead of fighting these
developers and the potential audience they bring along with them,
Amazon helped them out by speaking their language.
Attracting and encouraging developers helps Amazon in several ways.
It lets people outside the company build prototypes and alternative
interfaces that Amazon may someday want to use. In effect, Amazon has
outsourced interface research and development to people who are
willing to work for free, posing little risk to the company. Also, as
these developers come to rely on Amazon Web Services for their
applications, it locks them into the Amazon platform. Because people
will be using these applications, it furthers Amazon's brand and
goodwill, as each application essentially becomes an advertisement
for Amazon. Finally, Amazon is able to monitor how people use their
data. If outside developers are concentrating on a particular section
of the database, Amazon knows there's a demand and can fine-tune
their business accordingly.
|