Esta pesquisa deve fornecer um conteúdo atualizado sobre o tema acima. Não esqueça de incluir as  
referëncias (fontes) no último item, reforçando que não deve ser um Copy/Paste e sim uma síntese 
das pesquisas que fizer.


Conceito

Antes de tudo, deve-se ter em mente que uma interface lógica é uma "interface" que permite que haja uma comunicação entre dois sistemas. Uma API é um recurso de um sistema que permite que esse se comunique com outro sistema. É possível citar vários exemplos de api's, visto que atualmente a grande maioria dos sistemas "conversam" com outros sistemas. Por exemplo, quando um aplicativo permite que o usuário se autentique nele através do facebook, isso ocorre graças à uma api que permite que o aplicativo solicite as informações necessárias para o sistema do facebook e o facebook as envia, possibilitando o usuário autenticar-se no sistema sem necessariamente se cadastrar nele em si. Outro bom exemplo é quando o usuário está em um site de turismo ou em alguma outra aplicação que disponibiliza mapas. Esses mapas, quase sempre, são fornecidos pelo Google Maps, através de um api entre os sistemas. Concluindo, API's são padrões feitos pelos programadores dos respectivos softwares para que outros softwares possam utilizar alguns serviços, sem precisar implantar tal funcionalidade no próprio software. É como se um software pedisse uma aplicação "emprestada" para outro software.

Funcionamento


Protocolos


Vantagens


XML e JSON


Exemplos de código


Referências bibliográficas

http://canaltech.com.br/o-que-e/software/o-que-e-api/

http://www.tecmundo.com.br/programacao/1807-o-que-e-api-.htm

https://pt.wikipedia.org/wiki/Interface_de_programa%C3%A7%C3%A3o_de_aplica%C3%A7%C3%B5es

http://www.devmedia.com.br/application-programming-interface-desenvolvendo-apis-de-software/30548

https://en.wikipedia.org/wiki/Application_programming_interface