What is an API?

I have been doing little editing/clean-up bits for the upcoming “Stewarding Technology for Communities” book and one of the things we want to get right are the technical terms – and we want them to be understandable to people who may not be techies. One that I was chasing down yesterday was API, or Application Programming Interface. I wasn’t clear if APIs opened up access to functionality, the actual code, or both. I decided to ask my Twitter friends. Here is what I learned – I thought I would share it with you.

reply to NancyWhite

  • davecormier @nancywhite it’s like exposing the underside of a lego block. if you make your block to fit the holes, you can connect to it 04:27 PM January 02, 2008
  • D’Arcy Norman dnorman @nancywhite: APIs expose functionality so you can write your own code to incorporate it. 01:17 PM January 02, 2008
  • Chris Lott fncll @NancyWhite also depends on what is meant by “access” to code– a proprietary system w/API can provide access to code 11:13 AM January 02, 2008
  • Chris Lott fncll @nancywhite APIs provide access to existing functions, code and data, any or all of which can be used to further functionality. 11:12 AM January 02, 2008
  • Scott Leslie sleslie @nancyWhite forget what I just said. I thought you were asking a different question. Just waking up. 11:42 AM January 02, 2008
  • Scott Leslie sleslie @NancyWhite both, it depends. Some API’s focused around giving you functionality, other’s around data (though w/ data, there are other ways) 11:41 AM January 02, 2008
  • Jan Karlsbjerg JanKarlsbjerg @NancyWhite API’s make FUNCTIONALITY accessible to other programs/programmers. 11:38 AM January 02, 2008
  • Lion Kimbro LionKimbro @NancyWhite: APIs make functionality accessible. Even if code is available, I wouldn’t necessarily call it “accessible.” 12:21 PM January 02, 2008