O que é uma API (Interface de Programação de Aplicações)?

Atualizado em: agosto de 2026

Uma API é um conjunto de regras que permite a uma aplicação solicitar dados e funcionalidades de outra sem conhecer o código interno dela. A famosa analogia do restaurante — você pede pelo cardápio, a cozinha fica invisível — merece sua única frase e nada mais, porque a coisa real é mais instrutiva que a metáfora: uma API é um contrato, e contratos são precisos.

Principais pontos

PerguntaResposta
A definiçãoUm contrato definido de requisição/resposta entre dois programas
O cicloEndpoint + método + headers + corpo → código de status + resposta
Por públicoPública · de parceiros · interna · composta
Por estiloREST · GraphQL · gRPC · SOAP · WebSocket
O contrato modernoUma especificação legível por máquina (OpenAPI) que gera docs, clients e mocks

Anatomia de uma requisição e resposta de API HTTP

Nenhum explicador bem ranqueado mostra uma, então aqui está uma chamada de API inteira — requisição e resposta, nada escondido:

POST /classes/Todo HTTP/1.1              ← método + endpoint
Host: api.example-backend.com
X-Api-Key: app-7f2c…                     ← identifica o app que chama
Authorization: Bearer eyJhbGci…          ← autentica o usuário
Content-Type: application/json

{ "title": "Ship the release", "done": false }

HTTP/1.1 201 Created                     ← status: funcionou, recurso criado
Location: /classes/Todo/xKd91m
Content-Type: application/json

{ "objectId": "xKd91m", "createdAt": "2026-07-24T10:30:00Z" }

A mesma chamada por um SDK — que não é nada além deste HTTP, embrulhado no idioma da sua linguagem:

// JavaScript / Node.js — Back4app JS SDK
// One API call: create a record via the auto-generated REST API
const todo = new Parse.Object('Todo');
todo.set('title', 'Ship the release');
todo.set('done', false);
await todo.save();
// Under the hood: POST /classes/Todo with a JSON body → 201 Created
console.log('Created with id', todo.id);

Como funciona uma chamada de API

O ciclo de requisição e resposta de uma APIUma aplicação cliente envia uma requisição com método, endpoint, headers e corpo para uma API, que a valida e autoriza, invoca a lógica de backend e os dados, e retorna um código de status com um corpo de resposta ao cliente.

requisição:
método + endpoint + headers + corpo

resposta:
código de status + JSON

App cliente
(web, mobile, outro servidor)

API
valida · autoriza · roteia

Lógica de backend
+ banco de dados

Uma aplicação cliente envia uma requisição com método, endpoint, headers e corpo para uma API, que a valida e autoriza, invoca a lógica de backend e os dados, e retorna um código de status com um corpo de resposta ao cliente.

Três propriedades desse ciclo explicam por que APIs sustentam a stack moderna. Abstração: quem chama precisa do contrato, nunca da implementação — o provedor pode reescrever tudo atrás da interface sem quebrar um único cliente. Fronteira: validação e permissões vivem na interface, e é por isso que clientes falam com APIs e nunca com o banco de dados diretamente — uma API não é um banco de dados; é o porteiro na frente de um. Composição: como toda capacidade é chamável, aplicações se montam a partir de serviços — auth aqui, pagamentos ali, mapas de um terceiro — e, cada vez mais, agentes de IA usam o mesmo substrato: tool calling é chamada de API com um modelo decidindo as requisições.

O contrato: o que uma API realmente promete

As páginas que chamam uma API de “contrato” raramente mostram um. Hoje o contrato é um documento legível por máquina — a OpenAPI Specification é o padrão para APIs HTTP — listando cada endpoint, parâmetro, schema e código de status. A partir desse único arquivo, o ferramental gera documentação de referência, bibliotecas de cliente, stubs de servidor, servidores de mock e testes de contrato.

O enquadramento de contrato tem dentes por causa do versionamento. Adicionar um campo de resposta não quebra ninguém; renomear ou remover um quebra todo consumidor em silêncio — por isso APIs maduras distinguem mudanças aditivas de mudanças que quebram, versionam sua superfície (/v1/, ou via headers) e publicam janelas de descontinuação. Uma API sem política de mudança é um contrato sem cláusulas: tecnicamente uma promessa, na prática uma surpresa.

Os tipos de API

Com formato de busca, porque “tipos de API” é uma pesquisa por si só: duas taxonomias, não uma.

Por público:

TipoConsumidoresPreocupações típicas
Pública (aberta)Qualquer desenvolvedor registradoChaves, cotas, qualidade da documentação, disciplina de versionamento
De parceirosEmpresas contratadasAcordos jurídicos, SLAs, auth mais rígida
Interna (privada)Seus próprios times e serviçosContratos de microsserviços, ciclos de mudança mais rápidos
CompostaClientes que precisam de pacotesUma chamada orquestrando várias — menos idas e vindas

Por estilo: REST (recursos em URLs, métodos HTTP), GraphQL (consultas moldadas pelo cliente em um único endpoint), gRPC (binário, contract-first, serviço a serviço), SOAP (envelopes XML, padrões enterprise/legados) e APIs WebSocket (bidirecionais, persistentes) — comparados na tabela a seguir.

E um parágrafo que os explicadores da web pulam: nem toda API é uma API web. A biblioteca padrão de uma linguagem, as chamadas de sistema POSIX e as interfaces embutidas do navegador, como fetch e geolocalização, são todas APIs — contratos entre programas — que nunca cruzam uma rede. A variedade web apenas colocou o contrato atrás de uma URL.

REST vs. GraphQL vs. gRPC vs. SOAP vs. WebSocket

EstiloFormato no fioModeloMais forte emFique atento a
RESTJSON sobre HTTPRecursos + métodosAPIs CRUD públicas, cacheabilidade, ubiquidadeOver/underfetching em formatos fixos
GraphQLJSON sobre HTTPConsultas compostas pelo clienteClientes diversos, dados aninhadosComplexidade de cache, N+1 nos resolvers
gRPCProtobuf sobre HTTP/2Chamadas de procedimento tipadasVelocidade interna serviço a serviçoAtrito no navegador, debug binário
SOAPEnvelopes XMLOperações + padrões WS-*Enterprise legado, contratos formaisVerbosidade, peso do ferramental
WebSocketFrames sobre um socketMensagens bidirecionaisPush em tempo real, presençaVocê define o protocolo por conta própria

Casos de uso comuns

  • Backends mobile e web — os dados de cada tela chegam por uma API; o frontend nunca toca o banco de dados.
  • Integração com terceiros — pagamentos, identidade, mensageria, mapas: capacidades alugadas por contrato em vez de reconstruídas.
  • Comunicação entre microsserviços — APIs internas como as costuras que deixam serviços fazerem deploy e escalarem de forma independente.
  • Automação e scripts — qualquer coisa com API pode ser orquestrada: pipelines de CI, infraestrutura, fluxos de conteúdo.
  • Agentes de IA e tool calling — modelos agem invocando APIs; um contrato bem documentado agora é consumido por máquinas duas vezes, por SDKs e por agentes.

Qual estilo de API você deveria escolher? Matriz de decisão

Sua situaçãoUse
CRUD público sobre recursosREST — a língua franca, amigável a cache
Muitos tipos de cliente, cada um com formatos diferentesSelection sets do GraphQL
Malha interna de serviços de alto throughputContratos gRPC
Tempo real, bidirecional, sempre conectadoWebSocket (ou uma camada de live queries por cima)
Parceiro enterprise com exigências WS-*SOAP — porque o contrato manda
Uma tela que precisa de cinco serviçosUm endpoint composto ou backend-for-frontend

Limitações e trade-offs

  • Um contrato também obriga o provedor. Cada campo publicado vira algo de que alguém depende; a evolução acontece por disciplina de versionamento, não por edições silenciosas.
  • APIs de rede herdam a rede. Latência, falha parcial e retries fazem parte da semântica de toda chamada remota — chamadas de função locais nunca precisaram de política de timeout.
  • Abstração esconde custo. Uma chamada de aparência inocente pode se espalhar em trabalho caro; consumidores veem o cardápio, não a conta da cozinha — é para isso que existem rate limiting e cotas.
  • A superfície de segurança escala com a área exposta. Cada endpoint é uma porta; chaves identificam mas não autorizam, então auth de verdade (tokens no estilo OAuth 2.0, permissões por usuário) e validação de entrada são o mínimo aceitável.
  • Formatos fixos servem mal a alguns consumidores. Os trade-offs de overfetching/underfetching do design por endpoint são um tópico próprio — veja o verbete irmão.

APIs no Back4app

O Back4app é uma plataforma open-source de Backend as a Service (BaaS) que combina banco de dados gerenciado, APIs REST e GraphQL geradas automaticamente, autenticação, armazenamento de arquivos e funções serverless com Cloud Code. O movimento definidor é que a API é gerada, não construída: defina um modelo de dados e a plataforma o expõe imediatamente como endpoints REST e um schema GraphQL — a chamada dissecada acima é o formato real do fio no Back4app — com chaves, tokens de usuário e permissões por classe fazendo valer o contrato na fronteira. Os SDKs consomem essa API de forma idiomática em todas as principais plataformas, e operações customizadas viram funções de Cloud Code: endpoints novos em um arquivo, a mesma disciplina de contrato, nenhum servidor para rodar.

Perguntas frequentes

O que significa a sigla API?

Application Programming Interface — em português, Interface de Programação de Aplicações. "Aplicação" é qualquer software com uma função distinta; "interface" é o contrato entre duas delas — o conjunto definido de solicitações que uma pode fazer e as respostas que a outra promete devolver. A parte de programação é o ponto: é uma interface para software, assim como uma UI é uma interface para humanos.

Para que serve uma API?

Para um programa usar dados e capacidades de outro sem ver como o trabalho acontece por dentro. Um programa expõe uma lista do que sabe fazer — buscar este dado, executar aquela ação — e outros invocam isso por meio de solicitações definidas. A ilustração clássica: um app de previsão do tempo não mede o céu; ele chama a API de um serviço de meteorologia.

Como funciona uma API?

Por requisição e resposta. O cliente envia uma requisição a um endpoint — uma URL que nomeia o recurso — com um método que declara a intenção, headers carregando metadados e credenciais e, às vezes, um corpo de dados. O servidor valida, faz o trabalho e retorna um código de status mais um corpo de resposta, geralmente JSON. Toda integração que você já usou se reduz a esse ciclo.

API é um banco de dados?

Não — é a camada de acesso na frente de um. A API define o que pode ser pedido e por quem; o banco de dados armazena os dados em si. Uma API frequentemente fica entre os clientes e um banco justamente para que os clientes nunca toquem o banco diretamente — validação, permissões e formatação acontecem na interface.

Qual a diferença entre API e SDK?

A API é o contrato; o SDK é um kit de ferramentas para consumi-lo. Um SDK embrulha chamadas de API em funções idiomáticas da linguagem e adiciona gestão de sessão, retries e tipos. Você chama uma API pela rede; você importa um SDK no seu código — e, por baixo, o SDK está fazendo chamadas de API.

Quais são os tipos de API?

Por público: públicas (abertas a qualquer desenvolvedor), de parceiros (compartilhadas com empresas contratadas), internas (privadas de uma organização) e compostas (agrupando várias chamadas). Por estilo: REST, GraphQL, gRPC, SOAP e APIs WebSocket. E além da web: APIs de bibliotecas e de sistemas operacionais — interfaces existiam muito antes de o HTTP transportá-las.

O que é um endpoint de API?

A URL específica onde uma API recebe requisições de um recurso — /users/42 é o endpoint do usuário 42. Endpoint mais método define uma operação: GET /users/42 o lê, DELETE /users/42 o remove. Endpoints são a superfície endereçável da interface inteira.

O que é uma chave de API (API key)?

Uma string gerada que o cliente envia com cada requisição para que o provedor identifique quem chama, meça o uso e aplique limites ou revogação. É mais identificação do que autorização — APIs de produção colocam autenticação de verdade por cima, como tokens emitidos via OAuth, para permissões por usuário.

Termos relacionados

Compare com

Leitura adicional

Pronto para construir seu backend?

Comece seu projeto no Back4app em minutos — banco de dados, autenticação, APIs e Cloud Code incluídos. Sem cartão de crédito.

Escrito e revisado por Back4app Engineering, Back4app Engineering · Publicado em 2026-08-20