O termo Web API geralmente se refere a ambos os lados dos sistemas que se comunicam através de uma rede: os serviços API oferecidos por um servidor, bem como a API oferecida pelo cliente, como um navegador da Web.

A parte do lado do servidor da Web API é uma interface programada para um sistema de mensagens de solicitação definido e geralmente é designado como Serviço da Web. Existem vários modelos de design para serviços web, mas os dois mais dominantes são SOAP (Simple Object Access Protocol) e REST (Representation State Transfer).

O SOAP fornece as seguintes vantagens quando comparado ao REST:

  • Linguagem, plataforma e transporte independentes (o REST requer o uso de HTTP).
  • Funciona bem em ambientes empresariais distribuídos (o REST assume uma comunicação direta).
  • Padronizado.
  • Tratamento de erros integrado.
  • Automação quando usado com certas linguagens.

O REST é mais fácil de ser utilizado e é mais flexível. Ele possui as seguintes vantagens em relação ao SOAP:

  • Utiliza padrões fáceis de serem compreendidos como swagger e OpenAPI Specification 3.0.
  • Melhor curva de aprendizado.
  • Eficiente (SOAP usa XML para todas as mensagens, o REST usa principalmente formatos menores de mensagens como JSON).
  • Rápido (não é necessário um processamento extenso).
  • Mais perto de outras tecnologias da Web em questão de design.

Para um melhor entendimento, pense no seguinte cenário: o SOAP é como um envelope enquanto o REST é apenas um cartão postal.

Certamente, um cartão postal é mais rápido e mais barato para enviar do que um envelope, mas ainda pode ser embrulhado dentro de outra coisa, mesmo um envelope. Além de que podemos somente ler um cartão postal, porém se ele estiver dentro de um envelope se faz necessária algumas etapas extras, como abrir ou desembrulhá-lo para assim conseguir lê-lo.

De forma geral, o SOAP  e o REST  são duas arquiteturas diferentes de Web Services e cada uma possui vantagens e desvantagens. Assim é preciso analisar caso a caso antes de escolher qual utilizar.

Função Informática e as Web API’s

A Função Informática possui diversas Web API’s já disponíveis. São utilizadas por alguns de nossos clientes para desenvolvimento interno de seus sistemas e aplicativos mobile, outras Api’s são consumidas nos próprios projetos mobile arquitetado pela Função Informática.