Σύνδεσμος Airtable
Κατάσταση συνδέσμου: Προγραμματισμένο Δεν έχει κατασκευαστεί ακόμη. Το Tajo δεν εκτελεί σήμερα αυτόν τον σύνδεσμο.
Απεικόνιση · δείγμα δεδομένων
Παράδειγμα συγχρονισμού
Πηγή
Airtable
Κατάσταση συνδέσμου: Προγραμματισμένο
Προορισμός
Το άλλο σας εργαλείο
Κατάσταση συνδέσμου: Προσαρμοσμένο εργαλείο
Αντιστοίχιση πεδίων
| Πεδίο πηγής | Πεδίο προορισμού | Ενδεικτική τιμή |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- Σχέδιο
- Ελέγξτε μία εγγραφή
- Εγκρίνετε αυτή την έκδοση
Οι καταστάσεις αφορούν μεμονωμένους συνδέσμους και δεν εγγυώνται ότι αυτός ο συγχρονισμός είναι έτοιμος. Ενδεικτικά πεδία. Ελέγξτε το πραγματικό σχήμα και τα δικαιώματα πριν εκτελεστεί συγχρονισμός.
Συνδέστε τις βάσεις Airtable σας με το Brevo για συγχρονισμό CRM, διαχείριση καταλόγου προϊόντων και αυτοματοποιημένες ροές εργασίας marketing που τροφοδοτούνται από δομημένα δεδομένα μέσω Tajo.
Επισκόπηση
| Ιδιότητα | Τιμή |
|---|---|
| Πλατφόρμα | Airtable |
| Κατηγορία | Προσαρμοσμένο |
| Πολυπλοκότητα Ρύθμισης | Εύκολη |
| Επίσημη Ενσωμάτωση | Όχι |
| Δεδομένα που Συγχρονίζονται | Εγγραφές, Πίνακες, Χρήστες |
| Τύπος API | REST API |
| Πιστοποίηση | Personal Access Token / OAuth 2.0 |
| Βασικό URL | https://api.airtable.com/v0/ |
Χαρακτηριστικά
- Συγχρονισμός πίνακα σε λίστα - Συγχρονισμός εγγραφών πίνακα Airtable απευθείας σε λίστες επαφών Brevo
- Γέφυρα καταλόγου προϊόντων - Χρήση πινάκων Airtable ως κατάλογοι προϊόντων για προτάσεις email
- Συγχρονισμός CRM - Αμφίδρομος συγχρονισμός μεταξύ CRM Airtable και επαφών Brevo
- Εκδηλώσεις υποβολής φόρμας - Προώθηση υποβολών φόρμας Airtable ως εκδηλώσεις Brevo
- Φιλτράρισμα βάσει προβολής - Συγχρονισμός συγκεκριμένων προβολών Airtable σε στοχευμένες λίστες Brevo
- Αυτοματοποίηση webhook - Ενεργοποίηση καμπανιών Brevo όταν αλλάζουν εγγραφές Airtable
Προαπαιτούμενα
Πριν ξεκινήσετε, βεβαιωθείτε ότι διαθέτετε:
- Λογαριασμό Airtable (δωρεάν πλάνο ή ανώτερο)
- Ρυθμισμένο Personal Access Token ή εφαρμογή OAuth
- Πρόσβαση στις βάσεις και τους πίνακες που θέλετε να συγχρονίσετε
- Λογαριασμό Brevo με πρόσβαση API
- Λογαριασμό Tajo με ενεργή συνδρομή
Πιστοποίηση
Το Airtable υποστηρίζει Personal Access Tokens και OAuth 2.0.
Επιλογή 1: Personal Access Token (Συνιστάται)
- Μεταβείτε στο airtable.com/create/tokens
- Κάντε κλικ στο Create new token
- Ονομάστε το “Tajo Integration”
- Προσθέστε scopes:
data.records:readdata.records:writedata.recordComments:readschema.bases:readwebhook:manage- Προσθέστε πρόσβαση σε συγκεκριμένες βάσεις ή σε όλες τις βάσεις
- Κάντε κλικ στο Create token
Επιλογή 2: OAuth 2.0
Για ενσωματώσεις πολλαπλών χρηστών, χρησιμοποιήστε τη ροή OAuth 2.0:
- Εγγράψτε την ενσωμάτωσή σας στο airtable.com/create/oauth
- Ρυθμίστε URI ανακατεύθυνσης:
https://app.tajo.io/callbacks/airtable - Ζητήστε τα ίδια scopes όπως παραπάνω
Εμβέλεια Token
Τα Personal Access Tokens μπορούν να περιοριστούν σε συγκεκριμένες βάσεις. Για λόγους ασφαλείας, παραχωρείτε πρόσβαση μόνο στις βάσεις που χρειάζεται η ενσωμάτωσή σας αντί να επιλέγετε “Όλες οι τρέχουσες και μελλοντικές βάσεις”.
Σύνδεση με Tajo
tajo connectors install airtable \ --token $AIRTABLE_TOKENΔιαμόρφωση
Βασική Ρύθμιση
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"Αντιστοίχιση Πεδίων
Αντιστοιχίστε πεδία Airtable σε χαρακτηριστικά επαφών 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Συγχρονισμός Βάσει Προβολής
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: trueEndpoints API
Το Tajo ενσωματώνεται με τα παρακάτω endpoints Airtable Web API:
| Endpoint | Μέθοδος | Σκοπός |
|---|---|---|
/v0/{baseId}/{tableIdOrName} | GET | Λίστα εγγραφών σε πίνακα |
/v0/{baseId}/{tableIdOrName} | POST | Δημιουργία εγγραφών |
/v0/{baseId}/{tableIdOrName} | PATCH | Ενημέρωση εγγραφών |
/v0/{baseId}/{tableIdOrName} | DELETE | Διαγραφή εγγραφών |
/v0/{baseId}/{tableIdOrName}/{recordId} | GET | Ανάκτηση μεμονωμένης εγγραφής |
/v0/meta/bases | GET | Λίστα προσβάσιμων βάσεων |
/v0/meta/bases/{baseId}/tables | GET | Λίστα πινάκων σε βάση |
/v0/{baseId}/{tableIdOrName}/listRecordComments | GET | Λίστα σχολίων εγγραφής |
/v0/bases/{baseId}/webhooks | POST | Δημιουργία webhook |
/v0/bases/{baseId}/webhooks | GET | Λίστα webhooks |
Παραδείγματα Κώδικα
Αρχικοποίηση Συνδέσμου
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});Συγχρονισμός Πίνακα με Brevo
// Sync an Airtable table to a Brevo listawait 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// }Χειρισμός Webhooks
// Airtable webhooks notify of changes; fetch details with cursorapp.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');});Δημιουργία Εγγραφής από Brevo
// Create an Airtable record when a Brevo contact convertstajo.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] } }); }});Όρια Ρυθμού
Το Airtable επιβάλλει όρια ρυθμού ανά βάση:
| Τύπος Ορίου | Τιμή |
|---|---|
| Όριο ρυθμού API | 5 αιτήματα ανά δευτερόλεπτο ανά βάση |
| Εγγραφές ανά αίτημα | 100 εγγραφές μέγ. (λίστα), 10 εγγραφές μέγ. (δημιουργία/ενημέρωση) |
| Payloads webhook | 50 payloads ανά κλήση listWebhookPayloads |
| Μέγεθος αιτήματος | Μέγ. payload ~2MB |
Λειτουργίες Batch
Το Airtable επιτρέπει τη δημιουργία ή ενημέρωση έως 10 εγγραφών ανά αίτημα. Το Tajo ομαδοποιεί αυτόματα μεγαλύτερες λειτουργίες σε πολλαπλά αιτήματα τηρώντας τα όρια ρυθμού.
Αντιμετώπιση Προβλημάτων
Συνηθισμένα Προβλήματα
| Πρόβλημα | Αιτία | Λύση |
|---|---|---|
| 401 Unauthorized | Μη έγκυρο ή ληγμένο token | Αναγέννηση Personal Access Token |
| 403 Forbidden | Το token δεν έχει πρόσβαση στη βάση | Προσθέστε τη βάση στο scope του token σας |
| 404 Not Found | Μη έγκυρο ID βάσης ή πίνακα | Επαληθεύστε το ID βάσης και το όνομα πίνακα |
| 422 Invalid Request | Αναντιστοιχία τύπου πεδίου | Ελέγξτε ότι οι τύποι πεδίων Airtable ταιριάζουν με τα δεδομένα σας |
| Υπέρβαση ορίου ρυθμού | Περισσότερα από 5 req/s ανά βάση | Μειώστε τη συχνότητα συγχρονισμού ή κλιμακώστε τους συγχρονισμούς βάσης |
Λειτουργία Εντοπισμού Σφαλμάτων
connectors: airtable: debug: true log_level: verbose log_api_calls: trueΔοκιμή Σύνδεσης
tajo connectors test airtable# ✓ API authentication successful# ✓ Base access verified# ✓ Table schema readable# ✓ Record listing operational# ✓ Webhook registration availableΒέλτιστες Πρακτικές
- Περιορίστε tokens σε συγκεκριμένες βάσεις - Μην παραχωρείτε πρόσβαση σε όλες τις βάσεις εκτός αν είναι απαραίτητο
- Χρησιμοποιήστε προβολές για φιλτραρισμένο συγχρονισμό - Συγχρονίστε συγκεκριμένες προβολές αντί πλήρων πινάκων για μείωση όγκου δεδομένων
- Ομαδοποίηση λειτουργιών εγγραφής - Ομαδοποιήστε δημιουργίες και ενημερώσεις σε batches των 10
- Χειριστείτε σελιδοποίηση - Το Airtable επιστρέφει 100 εγγραφές ανά σελίδα· επαναλάβετε με
offset - Χρησιμοποιήστε webhooks για πραγματικό χρόνο - Εγγράψτε webhooks αντί polling για αλλαγές
- Αντιστοιχίστε τύπους πεδίων ακριβώς - Αντιστοιχίστε τύπους πεδίων Airtable (select, number, date) σε τύπους χαρακτηριστικών Brevo
Ασφάλεια
- Personal Access Tokens - Περιορισμένα σε συγκεκριμένες βάσεις και λειτουργίες
- OAuth 2.0 - Ασφαλής ροή εξουσιοδότησης με refresh tokens
- Μόνο HTTPS - Όλη η επικοινωνία API κρυπτογραφημένη μέσω TLS 1.2+
- Έλεγχος Πρόσβασης σε Επίπεδο Βάσης - Tokens περιορισμένα σε μεμονωμένες βάσεις
- Κρυπτογραφημένη Αποθήκευση - Τα tokens κρυπτογραφούνται σε ηρεμία στο Tajo
- Επαλήθευση HMAC Webhook - Επαλήθευση αυθεντικότητας ειδοποίησης webhook