Em todos os tipos de negócios precisamos realizar a integração entre diversos sistemas, não é mesmo? Esse tipo de tarefa poderia demandar muito tempo e esforço das áreas técnicas, porém com a utilização de APIs podemos realizar integrações de forma mais rápida e fácil.
Para levantar a importância dessas ferramentas, preparei aqui um overview sobre APIs, vamos falar um pouco mais sobre esse assunto?
Mas afinal de contas, o que são essas tais APIs?
API (Application Programming Interface), que em português podemos traduzir como “Interface de Programação de Aplicativos” nada mais é que uma plataforma que permite a integração de um determinado software com sistemas de terceiros. Elas são muito utilizadas por empresas que desejam integrar os seus sistemas entre si ou até mesmo para que os usuários acessem as informações do sistema externamente.
As APIs permitem que a conectividade se torne fácil, rápida e conveniente. E os processos cada vez mais automatizados: planilhas, listas de nomes e e-mails, endereços e outros dados podem ser integrados em diferentes mídias e plataformas utilizando uma API.
Quando falamos em modelos arquiteturais de APIs temos duas formas muito conhecidas que são utilizadas hoje no mercado, uma delas é a “famosa” arquitetura REST e a outra é a “famosa” arquitetura SOAP.
E o que são REST e SOAP?
REST – Representational State Transfer
O REST nada mais é que um estilo arquitetural, como já mencionamos acima, que podemos utilizar em nossas aplicações.
REST foi concebida para tratar objetos originados do servidor como recursos que podem ser criados, atualizados ou destruídos. Um exemplo disso pode ser a postagem de um site em um banco de dados. A postagem pode ser criada através da utilização de um requerimento para criação. Posteriormente, esse site pode ser atualizado com um requerimento de atualização ou deletado com um requerimento de eliminação, e por aí vai.
Na arquitetura REST são utilizados JSON (JavaScript Object Notation) para o retorno de informações, porém, o JSON não é um protocolo de transporte de informações como o HTTP, ele é somente uma forma bem leve de representação e troca de informações, a sua função se baseia apenas em levar a informações de um lado para o outro, simples assim. Dessa forma, usamos ele para transportar informações entre mensagens HTTP.
A ideia do REST é utilizar de maneira mais eficiente as características do protocolo HTTP, principalmente no que diz respeito à semântica do protocolo. O resultado disso ao final das contas é, além da utilização mais “correta” do protocolo, um trânsito de informações mais eficiente e, por consequência, mais rápido.
SOAP – Simple Object Access Protocol
O SOAP, assim como o REST, é um estilo arquitetural, tendo algumas características bem parecidas com o REST. Podemos dizer que ele é como um avô para as interfaces web.
A arquitetura SOAP é baseada em XML (Extensible Markup Language) de três formas:
- O envelope, que define o conteúdo da mensagem e informa como processá-la;
- Um conjunto de regras de codificação para os tipos de dados;
- E o layout para os procedimentos de chamadas e respostas.
- Esse “envelope” é enviado por meio de HTTP/HTTPS. Uma RPC (Remote Procedure Call) é executada, e o envelope retorna com as informações do documento XML formatado.
Uma das vantagens do SOAP é o uso de um método de transporte “genérico”, podendo usar qualquer meio de transporte existente para enviar sua requisição, desde SMTP até mesmo JMS (Java Messaging Service). No entanto, uma desvantagem percebida no uso de XML é a sua natureza prolixa e o tempo necessário para analisar o resultado apresentado, deixando o retorno mais pesado.
Exemplo prático
Um bom exemplo de API SOAP são as APIs dos correios, com base nessas APIs as empresas de e-commerce conseguem calcular valor de frete, acompanhar o andamento da entrega e até mesmo pesquisar endereços de forma simples e rápida.
Essa integração proporciona um ganho muito grande de tempo e melhora a experiência do cliente, uma vez que o usuário do sistema não irá precisar acessar outra ferramenta ou site para fazer esse tipo de pesquisa.
Em resumo podemos falar que as APIs funcionam como uma espécie de “mensageiro” que tem a finalidade de levar informações por meio do REST ou SOAP, utilizando o protocolo HTTP, para formatar as mensagens e transita-las entre aplicativos e plataformas. Com isso temos um ganho muito grande de tempo e quando falamos de tempo é sempre bom lembrar que tempo é dinheiro, para todos os tipos de negócios.
As APIs estão em alta, muitas empresas estão investindo cada vez mais nesse tipo de tecnologia, seja ela para o desenvolvimento de um novo aplicativo ou para a integração de seus sistemas legados com outros aplicativos ou plataformas.
Espero ter dado uma visão, mesmo que macro, para vocês sobre o que são as famosas APIs, para quem leu o meu texto, agradeço pelo tempo dedicado a ele =)