Entendendo APIs e sua estrutura.

Published: (December 2, 2025 at 07:55 PM EST)
2 min read
Source: Dev.to

Source: Dev.to

O que é uma API?

API significa Application Programming Interface (em português: Interface de Programação de Aplicações).
Basicamente, uma API é um jeito de um sistema conversar com outro, trocando informações de forma organizada e seguindo regras pré‑definidas. Se um sistema quer pegar dados de outro, enviar informações, criar ou atualizar algo, a API faz essa ponte.

Quando falamos de APIs REST, elas se comunicam usando HTTP/HTTPS, o mesmo protocolo usado pelos navegadores. Tudo é feito através de URLs chamadas endpoints.

  • Endpoint: endereço onde o serviço da API está disponível.
  • Request → Response: a API recebe uma requisição e devolve dados, uma confirmação ou um erro, sempre acompanhado de um status code (ex.: 200 – OK).

Métodos HTTP comuns

MétodoDescrição
GETBuscar dados
POSTEnviar dados (criação de recurso)
PUTAtualizar um recurso existente
PATCHAtualizar parte de um recurso
DELETEDeletar um recurso

Formato de dados

A maioria das APIs modernas utiliza JSON como formato de troca de informações:

{
  "exemplo": "valor",
  "lista": [1, 2, 3]
}

JSON é leve, fácil de ler e funciona bem com praticamente todas as linguagens.

Headers (cabeçalhos) da requisição

Os headers carregam informações adicionais que a API precisa para processar a requisição, como:

  • Tipo de conteúdo (Content-Type: application/json)
  • Token de autenticação
  • Idioma (Accept-Language)
  • Permissões

Sem os headers corretos, muitas APIs nem permitem o acesso.

Autenticação

Nem toda API é aberta; a maioria exige comprovação de permissão. Os mecanismos mais usados são:

  • API Key
  • Bearer Token
  • JWT (JSON Web Token)
  • OAuth2

Versionamento

APIs evoluem ao longo do tempo, por isso é comum versioná‑las na URL:

/api/v1/clientes

Exemplo simples de API com Spring Boot

É possível criar rapidamente uma API usando o Spring Initializr.

Passos básicos

  1. Acesse o Spring Initializr e gere um projeto com as dependências desejadas (por exemplo, Spring Web).
  2. Importe o projeto em sua IDE.
  3. Crie um controlador REST:
// src/main/java/com/exemplo/DemoController.java
package com.exemplo;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoController {

    @GetMapping("/api/v1/hello")
    public String hello() {
        return "Olá, mundo!";
    }
}
  1. Execute a aplicação (./mvnw spring-boot:run ou via IDE) e acesse o endpoint http://localhost:8080/api/v1/hello.
Back to Blog

Related posts

Read more »

Assign issues to Copilot using the API

GraphQL support You can assign issues to Copilot using the following mutations: - updateIssuehttps://docs.github.com/graphql/reference/mutationsupdateissue - c...