O bloco API conecta seu workflow a serviços externos através de requisições HTTP. Suporta métodos GET, POST, PUT, DELETE e PATCH para interagir com APIs REST.

Opções de Configuração
URL
A URL do endpoint para a requisição de API. Isso pode ser:
- Uma URL estática inserida diretamente no bloco
- Uma URL dinâmica conectada da saída de outro bloco
- Uma URL com parâmetros de caminho
Method
Selecione o método HTTP para sua requisição:
- GET: Recupere dados do servidor
- POST: Envie dados ao servidor para criar um recurso
- PUT: Atualize um recurso existente no servidor
- DELETE: Remova um recurso do servidor
- PATCH: Atualize parcialmente um recurso existente
Query Parameters
Defina pares chave-valor que serão anexados à URL como parâmetros de consulta. Por exemplo:
Key: apiKey
Value: your_api_key_here
Key: limit
Value: 10Estes seriam adicionados à URL como ?apiKey=your_api_key_here&limit=10.
Headers
Configure cabeçalhos HTTP para sua requisição. Cabeçalhos comuns incluem:
Key: Content-Type
Value: application/json
Key: Authorization
Value: Bearer your_token_hereRequest Body
Para métodos que suportam um corpo de requisição (POST, PUT, PATCH), você pode definir os dados para enviar. O corpo pode ser:
- Dados JSON inseridos diretamente no bloco
- Dados conectados da saída de outro bloco
- Gerados dinamicamente durante a execução do workflow
Acessando Resultados
Após uma requisição de API completar, você pode acessar suas saídas:
<api.data>: Os dados do corpo da resposta da API<api.status>: Código de status HTTP (200, 404, 500, etc.)<api.headers>: Cabeçalhos de resposta do servidor<api.error>: Detalhes do erro se a requisição falhou
Recursos Avançados
Construção Dinâmica de URL
Construa URLs dinamicamente usando variáveis de blocos anteriores:
// Em um bloco Function antes da API
const userId = <start.userId>;
const apiUrl = `https://api.example.com/users/${userId}/profile`;Tentativas de Requisição
O bloco API automaticamente lida com:
- Timeouts de rede com backoff exponencial
- Respostas de limite de taxa (códigos de status 429)
- Erros de servidor (códigos de status 5xx) com lógica de retry
- Falhas de conexão com tentativas de reconexão
Validação de Resposta
Valide respostas de API antes de processar:
// Em um bloco Function após a API
if (<api.status> === 200) {
const data = <api.data>;
// Processar resposta bem-sucedida
} else {
// Lidar com resposta de erro
console.error(`API Error: ${<api.status>}`);
}Saídas
<api.data>: Dados do corpo da resposta da API<api.status>: Código de status HTTP<api.headers>: Cabeçalhos de resposta<api.error>: Detalhes do erro se a requisição falhou
Casos de Uso Exemplo
Buscar Dados de Perfil do Usuário - Recupere informações do usuário de serviço externo
Function (Build ID) → API (GET /users/{id}) → Function (Format) → ResponseProcessamento de Pagamento - Processe pagamento através da API Stripe
Function (Validate) → API (Stripe) → Condition (Success) → Supabase (Update)Melhores Práticas
- Use variáveis de ambiente para dados sensíveis: Não codifique chaves de API ou credenciais
- Lide com erros graciosamente: Conecte lógica de tratamento de erros para requisições falhadas
- Valide respostas: Verifique códigos de status e formatos de resposta antes de processar dados
- Respeite limites de taxa: Seja consciente dos limites de taxa da API e implemente throttling apropriado