Airtable konektor

Prepoj svoje Airtable bázy s Brevo pre CRM synchronizáciu, správu produktového katalógu a automatizované marketingové workflowy poháňané štruktúrovanými dátami cez Tajo.

Prehľad

VlastnosťHodnota
PlatformaAirtable
KategóriaVlastná
Zložitosť nastaveniaĽahké
Oficiálna integráciaNie
Synchronizované dátaZáznamy, Tabuľky, Používatelia
Typ APIREST API
AutentifikáciaPersonal Access Token / OAuth 2.0
Base URLhttps://api.airtable.com/v0/

Funkcie

  • Synchronizácia tabuľky so zoznamom - Synchronizuj záznamy tabuľky Airtable priamo do zoznamov kontaktov v Brevo
  • Most produktového katalógu - Použi tabuľky Airtable ako produktové katalógy pre e-mailové odporúčania
  • CRM synchronizácia - Obojsmerná synchronizácia medzi CRM Airtable a kontaktmi Brevo
  • Udalosti odoslania formulára - Preposielaj odoslania formulárov Airtable ako udalosti v Brevo
  • Filtrovanie podľa zobrazenia - Synchronizuj konkrétne zobrazenia Airtable do cielených zoznamov Brevo
  • Webhook automatizácia - Spúšťaj kampane Brevo pri zmene záznamov v Airtable

Predpoklady

Predtým, než začneš, uisti sa, že máš:

  1. Airtable účet (Free plán alebo vyšší)
  2. Nakonfigurovaný Personal Access Token alebo OAuth aplikáciu
  3. Prístup k bádam a tabuľkám, ktoré chceš synchronizovať
  4. Brevo účet s API prístupom
  5. Tajo účet s aktívnym predplatným

Autentifikácia

Airtable podporuje Personal Access Tokens a OAuth 2.0.

Možnosť 1: Personal Access Token (odporúčané)

  1. Choď na airtable.com/create/tokens
  2. Klikni na Create new token
  3. Pomenuj ho “Tajo Integration”
  4. Pridaj scopes:
data.records:read
data.records:write
data.recordComments:read
schema.bases:read
webhook:manage
  1. Pridaj prístup ku konkrétnym bázam alebo všetkým bázam
  2. Klikni na Create token

Možnosť 2: OAuth 2.0

Pre integrácie s viacerými používateľmi použi OAuth 2.0 flow:

  1. Zaregistruj svoju integráciu na airtable.com/create/oauth
  2. Nakonfiguruj redirect URI: https://app.tajo.io/callbacks/airtable
  3. Požiadaj o rovnaké scopes ako vyššie

Rozsah tokenu

Personal Access Tokens môžu byť obmedzené na konkrétne bázy. Pre bezpečnosť udeľ prístup iba k bázam, ktoré tvoja integrácia potrebuje, namiesto výberu “All current and future bases.”

Pripojenie k Tajo

Terminal window
tajo connectors install airtable \
--token $AIRTABLE_TOKEN

Konfigurácia

Základné nastavenie

connectors:
airtable:
enabled: true
sync:
records: true
comments: false
tables:
- base_id: "appXXXXXXXXXXXXXX"
table_name: "Customers"
view: "Active Customers"
sync_to_list: 28
- base_id: "appXXXXXXXXXXXXXX"
table_name: "Products"
sync_as: "catalog"

Mapovanie polí

Namapuj polia Airtable na atribúty kontaktov v Brevo:

field_mapping:
# Airtable field -> Brevo attribute
Name: FIRSTNAME
Email: email
Phone: SMS
Company: COMPANY
Status: LEAD_STATUS
Revenue: TOTAL_REVENUE
"Last Contact": LAST_CONTACT_DATE
Tags: TAGS
Notes: NOTES
"Created Time": SIGNUP_DATE

Synchronizácia podľa zobrazenia

views:
- base_id: "appXXXXXXXXXXXXXX"
table_name: "Customers"
view: "High Value"
sync_to_list: 29
filter_by_view: true
- base_id: "appXXXXXXXXXXXXXX"
table_name: "Customers"
view: "Churned"
sync_to_list: 30
filter_by_view: true

API endpointy

Tajo sa integruje s nasledujúcimi endpointmi Airtable Web API:

EndpointMetódaÚčel
/v0/{baseId}/{tableIdOrName}GETZoznam záznamov v tabuľke
/v0/{baseId}/{tableIdOrName}POSTVytvorenie záznamov
/v0/{baseId}/{tableIdOrName}PATCHAktualizácia záznamov
/v0/{baseId}/{tableIdOrName}DELETEOdstránenie záznamov
/v0/{baseId}/{tableIdOrName}/{recordId}GETZískanie jedného záznamu
/v0/meta/basesGETZoznam dostupných báz
/v0/meta/bases/{baseId}/tablesGETZoznam tabuliek v báze
/v0/{baseId}/{tableIdOrName}/listRecordCommentsGETZoznam komentárov k záznamu
/v0/bases/{baseId}/webhooksPOSTVytvorenie webhooku
/v0/bases/{baseId}/webhooksGETZoznam webhookov

Ukážky kódu

Inicializácia konektora

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
await tajo.connectors.connect('airtable', {
token: process.env.AIRTABLE_TOKEN
});

Synchronizácia tabuľky do Brevo

// Sync an Airtable table to a Brevo list
await tajo.connectors.sync('airtable', {
type: 'full',
resources: ['records'],
baseId: 'appXXXXXXXXXXXXXX',
tableName: 'Customers',
view: 'Active Customers',
targetList: 28
});
const status = await tajo.connectors.status('airtable');
console.log(status);
// {
// connected: true,
// lastSync: '2024-03-15T15:00:00Z',
// recordsSynced: 2340,
// tablesMonitored: 2,
// basesConnected: 1
// }

Spracovanie webhookov

// Airtable webhooks notify of changes; fetch details with cursor
app.post('/webhooks/airtable', async (req, res) => {
const { base, webhook, timestamp } = req.body;
// Fetch changed records using webhook cursor
const changes = await tajo.connectors.getWebhookPayloads('airtable', {
baseId: base.id,
webhookId: webhook.id,
cursor: timestamp
});
for (const change of changes) {
await tajo.connectors.handleEvent('airtable', {
type: change.actionType,
payload: change
});
}
res.status(200).send('OK');
});

Vytvorenie záznamu z Brevo

// Create an Airtable record when a Brevo contact converts
tajo.events.on('contact.attribute_updated', async (event) => {
if (event.attribute === 'LIFECYCLE_STAGE' && event.value === 'customer') {
await tajo.connectors.create('airtable', {
baseId: 'appXXXXXXXXXXXXXX',
tableName: 'Customers',
fields: {
Name: event.contact.name,
Email: event.contact.email,
Status: 'Customer',
'Converted Date': new Date().toISOString().split('T')[0]
}
});
}
});

Obmedzenia rýchlosti

Airtable uplatňuje obmedzenia rýchlosti na bázu:

Typ limituHodnota
API rate limit5 požiadaviek za sekundu na bázu
Záznamy na požiadavkuMax 100 (zoznam), max 10 (vytvorenie/aktualizácia)
Webhook payloady50 payloadov na volanie listWebhookPayloads
Veľkosť požiadavkyMax ~2 MB payload

Dávkové operácie

Airtable umožňuje vytvorenie alebo aktualizáciu až 10 záznamov na požiadavku. Tajo automaticky rozdeľuje väčšie operácie do viacerých požiadaviek pri dodržaní limitov.

Riešenie problémov

Bežné problémy

ProblémPríčinaRiešenie
401 UnauthorizedNeplatný alebo vypršaný tokenZnovu vygeneruj Personal Access Token
403 ForbiddenToken nemá prístup k bázePridaj bázu do rozsahu svojho tokenu
404 Not FoundNeplatné ID bázy alebo tabuľkyOverte ID bázy a názov tabuľky
422 Invalid RequestNezhoda typov políSkontroluj, či typy polí Airtable zodpovedajú tvojim dátam
Prekročenie limituViac ako 5 požiadaviek/sek na bázuZredukuj frekvenciu synchronizácie alebo rozlož synchronizácie báz

Debug režim

connectors:
airtable:
debug: true
log_level: verbose
log_api_calls: true

Test pripojenia

Terminal window
tajo connectors test airtable
# ✓ API authentication successful
# ✓ Base access verified
# ✓ Table schema readable
# ✓ Record listing operational
# ✓ Webhook registration available

Odporúčané postupy

  1. Obmedz tokeny na konkrétne bázy - Neposkytuj prístup ku všetkým bázam, ak to nie je potrebné
  2. Použi zobrazenia pre filtrovanú synchronizáciu - Synchronizuj konkrétne zobrazenia namiesto celých tabuliek na zníženie objemu dát
  3. Dávkuj operácie so záznamami - Zoskup vytváranie a aktualizácie v dávkach po 10
  4. Spravuj stránkovanie - Airtable vracia 100 záznamov na stránku; iteruj pomocou offset
  5. Použi webhooky pre real-time - Zaregistruj webhooky namiesto pollingu zmien
  6. Presne namapuj typy polí - Zosúlaď typy polí Airtable (select, number, date) s typmi atribútov Brevo

Bezpečnosť

  • Personal Access Tokens - Obmedzené na konkrétne bázy a operácie
  • OAuth 2.0 - Bezpečný autorizačný flow s refresh tokenmi
  • Iba HTTPS - Všetka API komunikácia šifrovaná cez TLS 1.2+
  • Kontrola prístupu na úrovni bázy - Tokeny obmedzené na individuálne bázy
  • Šifrované úložisko - Tokeny šifrované v pokoji v Tajo
  • Overenie webhookov HMAC - Overovanie pravosti webhook notifikácií

Súvisiace zdroje

Subscribe to updates

developer-docs

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

auto-detect
AI asistent

Ahoj! Opýtajte sa ma na dokumentáciu.