API (Application Programming Interface)
referring to documentation, or the code itself, that describes the paths for accessing the data behind a program or service
API has become a more common term as more and more developers implement services like Twitter and Facebook into websites and applications that they design. If you are working with a designer or developer on a project, or are a developer yourself, you will hear terms like the “Twitter API” or “Facebook’s Graph API”.
An API is a map that describes the paths to access the data behind a program or service. So in the case of Twitter, Twitter’s data is essentially tweets and the data related to tweets, and Twitter has defined ways developers to post new tweets, to pull information related to tweets, and any other data that Twitter chooses to expose. These gateways will almost always be defined by the company that created the service that you’re accessing, since they know the most about how to best access their data. But for services where you may host the data inside of your organization, developers may write their own API for that data, or extend existing methods.
The term API is often used interchangeably with the term SDK (or Software Development Kit). Both provide ways for outside developers to work with code or data that a company has chosen to expose, although an API typically sits outside the fence of the company’s core data, protecting it a bit more. An SDK is typically providing more access to the guts of a codebase or underlying architecture. A great example of this is the iOS SDK, which is a massive set of libraries that allow you to write applications for iPhones, iPads, or any other device running the iOS operating system.