A sigla API significa Application Programming Interface , ou em português interface de programação de aplicação , tratam-se de mecanismos para expor as funcionalidades de uma determinada aplicação para serem consumidas programaticamente por outra aplicação possibilitando a integração entre elas.A implementação de uma API pode se dar de diferentes maneiras ,por exemplo:
acesse o site do google(https://www.google.com/) aperte o botão direito do mouse dentro do site e selecione a opção inspecionar para abrir o devtools do seu navegador
No devtools vá para a aba console e no console escreva ‘ document.body.style.backgroundColor = “red” ‘ e pressione a tecla enter você verá que a cor de fundo do site do google mudará para vermelho .
Neste exemplo estamos utilizando uma API do navegador para manipular o DOM(Document Object Model) de uma página e alterar a cor de fundo do elemento body, . As APIs do navegador não fazem parte da linguagem javascript , elas são escritas sobre o core da linguagem, fazem parte do navegador e são capazes fornecer informações e manipular recursos do navegador bem como do computador no qual o navegador está rodando para assim empoderar o código dos desenvolvedores com essas funcionalidades.
A API neste caso funciona como uma biblioteca embarcada no navegador , a interface para as funcionalidades se dá por meio dos atributos e métodos do objeto document , por exemplo , document.body nos permite acessar outro objeto que representa a elemento <body> do nosso html ,e o objeto body tem o atributo style que contém o outro objeto cujo os atributos representam os estilos aplicados ao elemento , como o backgroundColor , alterando esses atributos é possível alterar os estilos aplicados em body diretamente. Entretanto nem sempre as APIs são implementadas dessa forma é muito comum que a interface de uma API sejam requisições HTTP ao invés de um objeto , este tipo de api também é conhecido como web service .
Um web service pode ser definido como um sistema de software projetado para suportar interação interoperável entre máquinas(aplicações) em uma rede. Possui uma interface descrita em formato processável por máquina . Outros sistemas interagem com o Web service de uma maneira prescrita pela sua documentação, normalmente usando HTTP com outros padrões relacionados à Web [https://www.w3.org/TR/ws-arch/#whatis,adaptado]. Pode-se afirmar que todo webservice é uma API mas nem toda API é um webservice , pois webservices são apis que funcionam através de uma rede .
Por exemplo o web service viacep.com.br ofereçe a funcionalidade de consultar os dados de um endereço pelo cep , na documentação do Webservice é fornecida a url https://viacep.com.br/ws/01001000/json , se tentar acessar esta url verá que ao invés de um site terá apenas dados referentes ao cep na url .
A grande vantagem dos webservices esta interoperabilidade , a capacidade de um sistema se comunicar de forma transparente , como o serviço é consumido através do protocolo HTTP ,que é amplamente suportado pelas linguagens de programação no geral, ele pode ser utilizado pelos mais variados clientes como um aplicativo no celular , um site ou até mesmo por uma planilha do excel.
referencias
https://www.redhat.com/pt-br/topics/api/what-are-application-programming-interfaces
https://aws.amazon.com/pt/what-is/api/
https://www.w3.org/TR/ws-arch/#whatis
https://developer.mozilla.org/pt-BR/docs/Learn/JavaScript/Client-side_web_APIs/Introduction
Aproveite e conheça nossos serviços..
Desenvolvimento de Aplicações.