<aside> 📢 Página dedicada para explicar c que é e como funciona APIs.
</aside>
API, (Application Programming Interface), interface de programação de aplicação, são mecanismos ou conjunto de de códigos, protocolos e opções que permitem a comunicação entre diferentes componentes de um software.
Uma API é como um mensageiro que permite que diferentes partes de um software se comuniquem entre si. No contexto do backend, onde os dados são processados e gerenciados, as APIs desempenham um papel essencial ao permitir que aplicativos e serviços se conectem e compartilhem informações.
Por exemplo, um instituto meteorológico cria e mantém uma base de dados com previsões do tempo para diferentes locais. Uma API acessa esses dados e os fornece para aplicativos de previsão do tempo.
As APIs têm arquitetura geralmente explicada em termos de cliente servidor. A aplicação que solicita (REQUEST) é o cliente e a base de dados, que envia a resposta (RESPONSE) é o servidor.
No exemplo de um app de previsão do tempo, a API é desenvolvida para acessar os dados de previsão do tempo.
Com isso, temos endpoints um conjunto específico de URLs que respondem as requisições HTTP, cada endpoint pode realizar uma tarefa específica, como fornecer previsões do tempo.
No exemplo, o app consome a API e faz uma requisição HTTP para os endpoints da API, nessa requisição ela pode especificar os dados que deseja, por exemplo local. A depender do tipo da API ela responde com os dados solicitados, geralmente XML (APIs antigas) ou JSON.
Exemplo:
Fiz uma requisição para uma API de clima, nessa requisição, pedi para retornar um JSON do clima para as coordenadas de Nova York no horário de meia noite.
URL = ‘https//api.meteomatics.com/2024-06-26T00:00:00Z--2024-06-26T00:00:00Z:PT1H/t_2m:C/40.7128,74.0060/json’
RESPOSTA DA API
{
"version": "3.0",
"user": "ghostandcreatures_garofalo_enzo",
"dateGenerated": "2024-06-26T12:47:30Z",
"status": "OK",
"data": [
{
"parameter": "t_2m:C",
"coordinates": [
{
"lat": 40.7128,
"lon": 74.006,
"dates": [
{
"date": "2024-06-26T00:00:00Z",
"value": -3.3 -> Faz -3.3 em nova york
}
]
}
]
}
]
}