Endpoints e REST, em termos simples
Um é um único item do cardápio. É apenas uma (Uniform Resource Locator, ou Localizador Uniforme de Recursos) que faz uma coisa específica. Por exemplo:
https://api.weather.com/forecast— pegar uma previsãohttps://api.weather.com/cities— listar cidades disponíveis
Mesma cozinha, pratos diferentes. Cada endpoint é uma capacidade.
A maioria das APIs que você vai usar segue um estilo informal chamado (Representational State Transfer, ou Transferência de Estado Representacional). Você não precisa da definição acadêmica; precisa de duas ideias:
- A URL nomeia uma coisa (um "recurso") — um usuário, um pedido, uma previsão.
- O verbo diz o que você quer fazer com ela. Esses verbos são métodos (HyperText Transfer Protocol, ou Protocolo de Transferência de Hipertexto), os mesmos do capítulo sobre como a web funciona:
GET— ler algo (buscar uma previsão). Seguro; não muda nada.POST— criar algo (fazer um pedido, cadastrar um usuário).PUT/PATCH— atualizar algo que já existe.DELETE— remover algo.
Então GET /orders/42 significa "ler o pedido número 42," e DELETE /orders/42 significa "apagá-lo." Mesmo substantivo, verbo diferente, efeito completamente diferente. Quando você lê a documentação de uma ou um diff, essas duas palavras — o método e a URL — dizem a maior parte do que uma requisição faz.