Alternativa B - Webhooks only complete an action once the stated event occurs.
Introdução à Diferença entre Webhooks e APIs
Para entender a resposta correta, é necessário diferenciar os dois modelos de comunicação em desenvolvimento de software: o modelo tradicional de requisição-resposta (API) e o modelo baseado em eventos (Webhook).
- API Tradicional (Pull/Client-side): O cliente solicita dados ou ações ao servidor sempre que necessário. É como ligar para alguém e perguntar se há novidades. O servidor só responde quando solicitado.
- Webhook (Push/Server-side): O servidor envia automaticamente uma mensagem (um evento) para o cliente quando algo específico acontece. É como deixar um número de telefone com um amigo para que ele te ligue apenas quando tiver notícias.
Análise das Alternativas
Vamos analisar cada opção apresentada na questão:
- Opção A (Limites de API): Limites de chamadas por segundo são configurações específicas de rate-limiting de plataformas individuais, não uma definição geral de webhooks.
- Opção B (Eventos): Esta é a característica principal. Um webhook é configurado para disparar uma ação (enviar dados) apenas quando um evento pré-definido ocorre. Isso economiza recursos pois não há necessidade de consultas constantes (polling).
- Opção C (Aplicação Privada): Webhooks podem ser usados em aplicações públicas, privadas ou híbridas, desde que haja integração via URL.
- Opção D (Códigos de Resposta): Assim como qualquer chamada HTTP, webhooks podem retornar diversos códigos de status (200 OK, 400 Bad Request, 500 Error, etc.), dependendo do sucesso do processamento.
Conclusão
A distinção fundamental reside no gatilho da ação. Enquanto uma API tradicional espera o cliente pedir, o webhook reage automaticamente a um acontecimento. Portanto, a alternativa que descreve essa natureza de "evento único" é a correta.
Resumo: Webhooks funcionam sob demanda baseada em eventos, enquanto APIs tradicionais funcionam sob demanda baseada em requisições manuais ou agendadas.