Σύνδεσμος SendGrid
Συνδέστε τον λογαριασμό SendGrid με το Brevo μέσω Tajo για μετεγκατάσταση υποδομής email, συγχρονισμό επαφών, μεταφορά δεδομένων καμπάνιας και ενοποιημένα αναλυτικά αφοσίωσης και στις δύο πλατφόρμες.
Επισκόπηση
| Ιδιότητα | Τιμή |
|---|---|
| Πλατφόρμα | SendGrid (Twilio) |
| Κατηγορία | Marketing |
| Πολυπλοκότητα Ρύθμισης | Εύκολη |
| Επίσημη Ενσωμάτωση | Ναι |
| Δεδομένα που Συγχρονίζονται | Επαφές, Καμπάνιες, Συναλλακτικό Email, Εκδηλώσεις |
| Βασικό URL API | https://api.sendgrid.com/v3 |
Χαρακτηριστικά
- Μετεγκατάσταση επαφών - Μετεγκατάσταση επαφών Marketing SendGrid στο Brevo με προσαρμοσμένα πεδία
- Συγχρονισμός συναλλακτικού email - Παρακολούθηση εκδηλώσεων συναλλακτικού email για ενοποιημένες αναφορές
- Δεδομένα καμπάνιας - Συγχρονισμός δεδομένων απόδοσης καμπάνιας Single Send και Automation
- Event webhooks - Προώθηση εκδηλώσεων email (παράδοση, άνοιγμα, κλικ, αναπήδηση) στο Brevo
- Συγχρονισμός καταστολής - Μετεγκατάσταση λιστών αναπήδησης, αποκλεισμού και διαγραφής για συμμόρφωση
- Μετεγκατάσταση προτύπων - Εξαγωγή Dynamic Transactional Templates για χρήση στο Brevo
- Επαλήθευση αποστολέα - Συγχρονισμός επαληθευμένων ταυτοτήτων αποστολέα και πιστοποίησης τομέα
- Συγχρονισμός στατιστικών - Εισαγωγή ιστορικών στατιστικών αφοσίωσης σε χαρακτηριστικά Brevo
Προαπαιτούμενα
Πριν ξεκινήσετε, βεβαιωθείτε ότι διαθέτετε:
- Λογαριασμό SendGrid (Free, Essentials, Pro ή Premier)
- Κλειδί API SendGrid με τα απαιτούμενα δικαιώματα
- Λογαριασμό Brevo με πρόσβαση API
- Λογαριασμό Tajo
Πιστοποίηση
Πιστοποίηση με Κλειδί API
Το SendGrid χρησιμοποιεί πιστοποίηση bearer token.
curl https://api.sendgrid.com/v3/marketing/contacts \ -H "Authorization: Bearer SG.YOUR_API_KEY" \ -H "Content-Type: application/json"Δημιουργήστε κλειδιά API στο SendGrid Settings > API Keys με συγκεκριμένα επίπεδα δικαιωμάτων:
- Full Access - Πλήρης πρόσβαση API
- Restricted Access - Λεπτομερής έλεγχος δικαιωμάτων
- Billing Access - Λειτουργίες μόνο χρέωσης
Απαιτούμενα Δικαιώματα
Marketing: Full Access - Contacts (read) - Single Sends (read) - Automations (read)Mail Send: Full Access - Mail Send (read)Stats: Read AccessSuppressions: Read AccessTracking: Read AccessΑσφάλεια Κλειδιού API
Τα κλειδιά API SendGrid εμφανίζονται μόνο μία φορά κατά τη δημιουργία. Αποθηκεύστε τα με ασφάλεια. Αν χαθούν, πρέπει να δημιουργήσετε νέο κλειδί.
Διαμόρφωση
Βασική Ρύθμιση
connectors: sendgrid: enabled: true api_key: "${SENDGRID_API_KEY}"
# Data sync options sync: contacts: true campaigns: true transactional: true suppressions: true statistics: true
# List mapping to Brevo list_mapping: "All Contacts": 60 "Newsletter": 61 "Transactional": 62Αντιστοίχιση Πεδίων
Αντιστοίχηση πεδίων επαφής SendGrid σε χαρακτηριστικά επαφών Brevo:
Προεπιλεγμένες Αντιστοιχίσεις
| Parameter | Type | Description |
|---|---|---|
email required | string | Διεύθυνση email επαφής (μοναδικό αναγνωριστικό) |
first_name optional | string | Αντιστοιχεί στο χαρακτηριστικό FIRSTNAME |
last_name optional | string | Αντιστοιχεί στο χαρακτηριστικό LASTNAME |
phone_number optional | string | Αντιστοιχεί στο χαρακτηριστικό SMS |
city optional | string | Πόλη επαφής |
country optional | string | Χώρα επαφής |
custom_fields optional | object | Ζεύγη κλειδιού-τιμής προσαρμοσμένων πεδίων |
list_ids optional | array | Συμμετοχές σε λίστες SendGrid |
Αντιστοίχηση Προσαρμοσμένων Πεδίων
field_mapping: # Standard fields email: email first_name: FIRSTNAME last_name: LASTNAME phone_number: SMS
# Location fields city: CITY state_province_region: STATE country: COUNTRY postal_code: POSTAL_CODE
# Engagement metrics avg_open_rate: AVG_OPEN_RATE avg_click_rate: AVG_CLICK_RATE
# Custom fields custom_fields.company: COMPANY_NAME custom_fields.plan: PLAN_TYPEEndpoints API
Marketing Contacts
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
PUT | /v3/marketing/contacts | Προσθήκη ή ενημέρωση επαφών |
POST | /v3/marketing/contacts/search | Αναζήτηση επαφών |
GET | /v3/marketing/contacts/count | Λήψη αριθμού επαφών |
POST | /v3/marketing/contacts/exports | Εξαγωγή επαφών |
DELETE | /v3/marketing/contacts | Διαγραφή επαφών |
GET | /v3/marketing/lists | Λίστα όλων των λιστών επαφών |
Συναλλακτικό Email (Mail Send)
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
POST | /v3/mail/send | Αποστολή email |
GET | /v3/templates | Λίστα Dynamic Templates |
GET | /v3/templates/{id} | Λήψη λεπτομερειών προτύπου |
Καμπάνιες (Single Sends)
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
GET | /v3/marketing/singlesends | Λίστα Single Sends |
GET | /v3/marketing/singlesends/{id} | Λήψη λεπτομερειών Single Send |
GET | /v3/marketing/automations | Λίστα Automations |
Στατιστικά
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
GET | /v3/stats | Λήψη παγκόσμιων στατιστικών email |
GET | /v3/categories/stats | Λήψη στατιστικών κατηγορίας |
GET | /v3/marketing/stats/singlesends | Λήψη στατιστικών Single Send |
Καταστολές
| Μέθοδος | Endpoint | Περιγραφή |
|---|---|---|
GET | /v3/suppression/bounces | Λίστα email αναπηδήσεων |
GET | /v3/suppression/blocks | Λίστα αποκλεισμένων email |
GET | /v3/suppression/spam_reports | Λίστα αναφορών spam |
GET | /v3/suppression/unsubscribes | Λίστα παγκόσμιων διαγραφών |
Εκδηλώσεις
Εκδηλώσεις Email (μέσω Event Webhook)
| Εκδήλωση | Trigger | Χρήση |
|---|---|---|
processed | Email γίνεται δεκτό από SendGrid | Επιβεβαίωση αποστολής |
delivered | Email παραδίδεται στον παραλήπτη | Παρακολούθηση παράδοσης |
open | Άνοιγμα email | Βαθμολόγηση αφοσίωσης |
click | Κλικ συνδέσμου | Παρακολούθηση ενδιαφέροντος |
bounce | Αναπήδηση email | Υγιεινή λίστας |
dropped | Καταστολή email | Έλεγχος συμμόρφωσης |
deferred | Αναβολή παράδοσης | Παρακολούθηση επανάληψης |
spam_report | Επισήμανση ως spam | Διαχείριση φήμης |
unsubscribe | Διαγραφή μέσω συνδέσμου | Συγχρονισμός προτιμήσεων |
Παραδείγματα Κώδικα
Αρχικοποίηση Συνδέσμου
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect SendGridawait tajo.connectors.connect('sendgrid', { apiKey: process.env.SENDGRID_API_KEY});Μετεγκατάσταση Επαφών στο Brevo
// Full contact migration from SendGrid to Brevoawait tajo.connectors.sync('sendgrid', { type: 'full', resources: ['contacts', 'suppressions'], options: { includeCustomFields: true, migrateListMemberships: true, migrateSuppressions: true }});
// Check migration statusconst status = await tajo.connectors.status('sendgrid');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsMigrated: 45000,// suppressionsSynced: 3200,// listsMapped: 8// }Προώθηση Εκδηλώσεων Email
// Handle SendGrid Event Webhookapp.post('/webhooks/sendgrid', async (req, res) => { const signature = req.get('X-Twilio-Email-Event-Webhook-Signature');
// Verify webhook signature (ECDSA) if (!verifySendGridSignature(req.body, signature)) { return res.status(401).send('Unauthorized'); }
// Process batch of events for (const event of req.body) { await tajo.connectors.handleWebhook('sendgrid', { type: event.event, email: event.email, timestamp: event.timestamp, payload: event }); }
res.status(200).send('OK');});Όρια Ρυθμού
Όρια ρυθμού SendGrid API:
| Endpoint | Όριο | Λεπτομέρειες |
|---|---|---|
Mail Send (/v3/mail/send) | Εξαρτάται από πλάνο | Δωρεάν: 100/ημέρα, Essentials: βάσει πλάνου |
| Marketing Contacts PUT | 3 αιτήματα/δευτερόλεπτο | Παρτίδα έως 30.000 επαφές |
| Marketing Contacts Search | 50 αιτήματα/δευτερόλεπτο | Ανά κλειδί API |
| Γενικό API | 1.000 αιτήματα/δευτερόλεπτο | Ανά κλειδί API |
| Event Webhook | Παράδοση παρτίδας | Έως 1.000 εκδηλώσεις ανά POST |
Όρια Mail Send
Τα όρια Mail Send εξαρτώνται από το πλάνο SendGrid σας. Οι δωρεάν λογαριασμοί περιορίζονται σε 100 email/ημέρα. Ελέγξτε τις λεπτομέρειες του πλάνου σας για ακριβή όρια αποστολής.
Αντιμετώπιση Προβλημάτων
Συνήθη Προβλήματα
| Πρόβλημα | Αιτία | Λύση |
|---|---|---|
| 401 Unauthorized | Μη έγκυρο κλειδί API | Επαληθεύστε κλειδί API στις Ρυθμίσεις SendGrid |
| 403 Forbidden | Ανεπαρκή δικαιώματα κλειδιού API | Δημιουργήστε νέο κλειδί με τα απαιτούμενα εύρη |
| Εξαγωγή επαφής σε αναμονή | Επεξεργασία μεγάλου συνόλου δεδομένων | Ελέγξτε περιοδικά endpoint κατάστασης εξαγωγής μέχρι ολοκλήρωση |
| Ελλιπής συγχρονισμός καταστολής | Απαιτείται σελιδοποίηση | Υλοποιήστε σελιδοποίηση με παράμετρο offset |
| Δεν λαμβάνεται event webhook | URL μη επαληθευμένο | Ολοκληρώστε επαλήθευση URL webhook στο SendGrid |
Λειτουργία Εντοπισμού Σφαλμάτων
Ενεργοποίηση λεπτομερούς καταγραφής:
connectors: sendgrid: debug: true log_level: verbose log_webhooks: trueΔοκιμή Σύνδεσης
tajo connectors test sendgrid# ✓ API connection successful# ✓ Contacts readable# ✓ Lists accessible# ✓ Statistics readable# ✓ Suppressions accessibleΒέλτιστες Πρακτικές
- Μετεγκαταστήστε πρώτα τις καταστολές - Βεβαιωθείτε ότι αναπηδήσεις, αποκλεισμοί και διαγραφές βρίσκονται στο Brevo πριν αποστολή
- Χρησιμοποιήστε μαζικές μεταφορτώσεις επαφών - PUT έως 30.000 επαφές ανά αίτημα για αποδοτικότητα
- Επαληθεύστε Event Webhook - Ενεργοποιήστε υπογεγραμμένα webhooks με επαλήθευση ECDSA
- Αντιστοιχίστε προσαρμοσμένα πεδία - Δημιουργήστε αντίστοιχα χαρακτηριστικά Brevo πριν τη μετεγκατάσταση επαφών
- Συγχρονίστε δεδομένα αφοσίωσης - Εισαγάγετε ιστορικά στατιστικά για τμηματοποίηση στο Brevo
- Χειριστείτε ασύγχρονες εξαγωγές - Οι εξαγωγές επαφών είναι ασύγχρονες· ελέγχετε περιοδικά για ολοκλήρωση
Ασφάλεια
- Πιστοποίηση με Κλειδί API - Bearer token με λεπτομερή επίπεδα δικαιωμάτων
- Υπογραφή Event Webhook - Επαλήθευση υπογραφής ECDSA για payloads webhook
- Κρυπτογράφηση TLS - Όλη η επικοινωνία API κρυπτογραφείται μέσω HTTPS
- Διαχείριση Πρόσβασης IP - Περιορισμός πρόσβασης Dashboard και API κατά IP
- Πιστοποίηση δύο παραγόντων - Διαθέσιμο 2FA για πρόσβαση λογαριασμού