Conector Zapier

Conecte o Zapier ao Brevo através do Tajo para fazer a ponte entre milhares de aplicações de terceiros e seus workflows de automação de marketing, permitindo fluxos de dados sem código e gatilhos orientados por eventos em toda a sua stack tecnológica.

Visão geral

PropriedadeValor
PlataformaZapier
CategoriaAutomação (Personalizado)
Complexidade de configuraçãoFácil
Integração oficialNão
Dados sincronizadosEventos, Contatos, Workflows, Triggers
Método de autenticaçãoAPI Key / OAuth 2.0

Recursos

  • Orquestração multi-app - Conecte mais de 6.000 apps ao Brevo via workflows de Zap
  • Gatilhos de webhook - Receba eventos em tempo real de qualquer app conectado ao Zapier
  • Sincronização de contatos - Envie e receba contatos entre plataformas conectadas ao Zapier e o Brevo
  • Encaminhamento de eventos - Roteie eventos de aplicações pelo Tajo para automações do Brevo
  • Zaps multi-step - Construa workflows complexos com filtros, formatadores e atrasos
  • App Zapier personalizado - Use a Zapier Platform CLI para construir integrações sob medida

Pré-requisitos

Antes de começar, certifique-se de ter:

  1. Uma conta Zapier (tier gratuito ou superior)
  2. Uma conta Brevo com acesso à API
  3. Uma conta Tajo com permissões de conector
  4. Node.js 18+ instalado (para desenvolvimento de integração baseada em CLI)

Autenticação

Autenticação por API Key

Terminal window
# Set your Zapier Platform credentials
export ZAPIER_DEPLOY_KEY=your_deploy_key
export TAJO_API_KEY=your_tajo_api_key
export BREVO_API_KEY=your_brevo_api_key

OAuth 2.0

O Zapier suporta OAuth 2.0 para conectar serviços de terceiros dentro de Zaps:

const authentication = {
type: 'oauth2',
oauth2Config: {
authorizeUrl: {
url: 'https://your-app.com/oauth/authorize',
params: {
client_id: '{{process.env.CLIENT_ID}}',
state: '{{bundle.inputData.state}}',
redirect_uri: '{{bundle.inputData.redirect_uri}}',
response_type: 'code'
}
},
getAccessToken: {
url: 'https://your-app.com/oauth/token',
method: 'POST',
body: {
code: '{{bundle.inputData.code}}',
client_id: '{{process.env.CLIENT_ID}}',
client_secret: '{{process.env.CLIENT_SECRET}}',
grant_type: 'authorization_code',
redirect_uri: '{{bundle.inputData.redirect_uri}}'
}
},
refreshAccessToken: {
url: 'https://your-app.com/oauth/token',
method: 'POST',
body: {
refresh_token: '{{bundle.authData.refresh_token}}',
client_id: '{{process.env.CLIENT_ID}}',
client_secret: '{{process.env.CLIENT_SECRET}}',
grant_type: 'refresh_token'
}
}
}
};

Configuração

Configuração básica

connectors:
zapier:
enabled: true
webhook_url: "https://hooks.zapier.com/hooks/catch/YOUR_HOOK_ID"
sync:
contacts: true
events: true
workflows: true
triggers:
- contact_created
- order_placed
- form_submitted
mapping:
email: email
first_name: FIRSTNAME
last_name: LASTNAME

Configuração de webhook

Configure o Tajo para enviar eventos a webhooks do Zapier:

webhooks:
zapier:
url: "https://hooks.zapier.com/hooks/catch/YOUR_HOOK_ID"
events:
- contact.created
- contact.updated
- order.completed
- cart.abandoned
retry:
max_attempts: 3
backoff: exponential

Endpoints da API

EndpointMétodoDescrição
https://hooks.zapier.com/hooks/catch/{id}POSTWebhook catch hook
https://nla.zapier.com/api/v1/dynamic/exposed/GETListar ações expostas
https://nla.zapier.com/api/v1/dynamic/exposed/{action_id}/execute/POSTExecutar uma ação
https://zapier.com/api/platform/cli/appsGETListar apps registrados
https://zapier.com/api/platform/cli/pushPOSTImplantar integração

Exemplos de código

Inicializar o conector

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Zapier via webhook
await tajo.connectors.connect('zapier', {
webhookUrl: process.env.ZAPIER_WEBHOOK_URL,
events: ['contact.created', 'order.completed']
});

Construir uma integração Zapier personalizada com a Platform CLI

const { version: platformVersion } = require('zapier-platform-core');
const App = {
version: require('./package.json').version,
platformVersion,
authentication,
triggers: {
new_contact: {
key: 'new_contact',
noun: 'Contact',
display: {
label: 'New Contact in Tajo',
description: 'Triggers when a new contact is synced.'
},
operation: {
perform: async (z, bundle) => {
const response = await z.request({
url: 'https://api.tajo.io/v1/contacts',
params: { since: bundle.meta.lastPoll }
});
return response.data;
}
}
}
},
creates: {
sync_contact: {
key: 'sync_contact',
noun: 'Contact',
display: {
label: 'Sync Contact to Brevo',
description: 'Syncs a contact to Brevo via Tajo.'
},
operation: {
inputFields: [
{ key: 'email', required: true, type: 'string' },
{ key: 'firstName', type: 'string' },
{ key: 'lastName', type: 'string' }
],
perform: async (z, bundle) => {
const response = await z.request({
method: 'POST',
url: 'https://api.tajo.io/v1/contacts/sync',
body: bundle.inputData
});
return response.data;
}
}
}
}
};
module.exports = App;

Tratar webhooks recebidos do Zapier

app.post('/webhooks/zapier', async (req, res) => {
const { event, data } = req.body;
await tajo.connectors.handleWebhook('zapier', {
topic: event,
payload: data
});
res.status(200).json({ status: 'received' });
});

Limites de taxa

PlanoRequisiçõesTarefas/MêsIntervalo de polling
Free100/dia10015 min
Starter1.000/dia75015 min
Professional5.000/dia2.0002 min
Team10.000/dia50.0001 min

Limites de tarefas do Zapier

Cada step de Zap conta como uma tarefa. Zaps multi-step consomem múltiplas tarefas por execução. Monitore seu uso de tarefas no painel do Zapier para evitar excedente.

Solução de problemas

ProblemaCausaSolução
Webhook não disparandoZap desligadoVerifique o status do Zap no painel do Zapier
Dados não mapeandoNome de campo não correspondeVerifique se os nomes de campos correspondem entre os apps
Contatos duplicadosNenhuma deduplicação configuradaHabilite deduplicação baseada em e-mail no Tajo
Erros de ZapLimite de taxa da API atingidoAdicione steps de atraso ou faça upgrade do plano Zapier
Autenticação expiradaToken não atualizadoReautentique a conexão no Zapier

Modo de depuração

connectors:
zapier:
debug: true
log_level: verbose
log_webhooks: true

Melhores práticas

  1. Use webhooks em vez de polling - Webhooks fornecem fluxo de dados em tempo real versus atrasos de polling
  2. Adicione tratamento de erros - Use Zapier Paths para tratar cenários de sucesso/falha
  3. Deduplique dados - Habilite chaves de deduplicação para evitar registros duplicados
  4. Monitore o uso de tarefas - Configure alertas antes de atingir limites de tarefas
  5. Use filtros com sabedoria - Filtre cedo nos Zaps para reduzir consumo desnecessário de tarefas
  6. Versione suas integrações CLI - Use versionamento semântico para apps da Platform CLI

Segurança

  • Somente HTTPS - Todas as URLs de webhook devem usar HTTPS
  • Rotação de API key - Faça rotação das chaves periodicamente pelo painel do Zapier
  • OAuth 2.0 - Use OAuth para autenticação de serviços de terceiros
  • Verificação de webhook - Valide assinaturas de webhook recebidas
  • Permissões com escopo - Conceda acesso mínimo necessário por Zap

Recursos relacionados

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
Assistente AI

Olá! Pergunte-me qualquer coisa sobre a documentação.