SendGrid-koppling
Kopplingens status: Under utveckling Byggs. Inte verifierad än.
Illustration · exempeldata
Exempel på synkronisering
Källa
SendGrid
Kopplingens status: Under utveckling
Mål
Ditt andra verktyg
Kopplingens status: Eget verktyg
Fältmappning
| Källfält | Målfält | Exempelvärde |
|---|---|---|
record.id | source_id | record_1042 |
record.updated_at | updated_at | 2026-10-18T08:00:00Z |
record.value | value | sample_value |
- Utkast
- Granska en post
- Godkänn den här versionen
Status gäller varje enskild koppling och garanterar inte att den här synkroniseringen är klar. Fälten är illustrativa. Kontrollera det faktiska schemat och behörigheterna innan synkronisering körs.
Anslut ditt SendGrid-konto till Brevo via Tajo för migrering av e-postinfrastruktur, kontaktsynkronisering, överföring av kampanjdata och enhetlig engagemangsanalys över båda plattformarna.
Översikt
| Egenskap | Värde |
|---|---|
| Plattform | SendGrid (Twilio) |
| Kategori | Marknadsföring |
| Installationskomplexitet | Enkel |
| Officiell integration | Nej |
| Data som synkas | Kontakter, kampanjer, transaktionsmejl, händelser |
| Bas-URL för API | https://api.sendgrid.com/v3 |
Funktioner
- Kontaktmigrering - Migrera SendGrid Marketing-kontakter till Brevo med anpassade fält
- Synk av transaktionsmejl - Spåra transaktionsmejlhändelser för enhetlig rapportering
- Kampanjdata - Synka prestandadata från Single Send- och Automation-kampanjer
- Händelse-webhooks - Vidarebefordra e-posthändelser (delivered, opened, clicked, bounced) till Brevo
- Suppression-synk - Migrera studs-, block- och avprenumerationslistor för efterlevnad
- Mallmigrering - Exportera Dynamic Transactional Templates för användning i Brevo
- Avsändarverifiering - Synka verifierade avsändaridentiteter och domänautentisering
- Statistiksynk - Importera historisk engagemangsstatistik till Brevo-attribut
Förutsättningar
Innan du börjar, se till att du har:
- Ett SendGrid-konto (Free, Essentials, Pro eller Premier)
- En SendGrid API-nyckel med nödvändiga behörigheter
- Ett Brevo-konto med API-åtkomst
- Ett Tajo-konto
Autentisering
API-nyckelautentisering
SendGrid använder bearer token-autentisering.
curl https://api.sendgrid.com/v3/marketing/contacts \ -H "Authorization: Bearer SG.YOUR_API_KEY" \ -H "Content-Type: application/json"Skapa API-nycklar under SendGrid Settings > API Keys med specifika behörighetsnivåer:
- Full Access - Fullständig API-åtkomst
- Restricted Access - Granulär behörighetskontroll
- Billing Access - Endast faktureringsoperationer
Nödvändiga behörigheter
Marketing: Full Access - Contacts (read) - Single Sends (read) - Automations (read)Mail Send: Full Access - Mail Send (read)Stats: Read AccessSuppressions: Read AccessTracking: Read AccessSäkerhet för API-nycklar
SendGrid API-nycklar visas endast en gång vid skapandet. Lagra dem säkert. Om de förloras måste du skapa en ny nyckel.
Konfiguration
Grundläggande konfiguration
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": 62Fältmappning
Mappa SendGrid-kontaktfält till Brevo-kontaktattribut:
Standardmappningar
| Parameter | Type | Description |
|---|---|---|
email required | string | Kontaktens e-postadress (unik identifierare) |
first_name optional | string | Mappas till attributet FIRSTNAME |
last_name optional | string | Mappas till attributet LASTNAME |
phone_number optional | string | Mappas till SMS-attributet |
city optional | string | Kontaktens stad |
country optional | string | Kontaktens land |
custom_fields optional | object | Nyckel-värde-par för anpassade fält |
list_ids optional | array | SendGrid-listmedlemskap |
Anpassad fältmappning
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_TYPEAPI-ändpunkter
Marketing-kontakter
| Metod | Ändpunkt | Beskrivning |
|---|---|---|
PUT | /v3/marketing/contacts | Lägg till eller uppdatera kontakter |
POST | /v3/marketing/contacts/search | Sök kontakter |
GET | /v3/marketing/contacts/count | Hämta antal kontakter |
POST | /v3/marketing/contacts/exports | Exportera kontakter |
DELETE | /v3/marketing/contacts | Ta bort kontakter |
GET | /v3/marketing/lists | Lista alla kontaktlistor |
Transaktionsmejl (Mail Send)
| Metod | Ändpunkt | Beskrivning |
|---|---|---|
POST | /v3/mail/send | Skicka ett mejl |
GET | /v3/templates | Lista Dynamic Templates |
GET | /v3/templates/{id} | Hämta malldetaljer |
Kampanjer (Single Sends)
| Metod | Ändpunkt | Beskrivning |
|---|---|---|
GET | /v3/marketing/singlesends | Lista Single Sends |
GET | /v3/marketing/singlesends/{id} | Hämta Single Send-detaljer |
GET | /v3/marketing/automations | Lista automationer |
Statistik
| Metod | Ändpunkt | Beskrivning |
|---|---|---|
GET | /v3/stats | Hämta global e-poststatistik |
GET | /v3/categories/stats | Hämta kategoristatistik |
GET | /v3/marketing/stats/singlesends | Hämta Single Send-statistik |
Suppressions
| Metod | Ändpunkt | Beskrivning |
|---|---|---|
GET | /v3/suppression/bounces | Lista studsade mejl |
GET | /v3/suppression/blocks | Lista blockerade mejl |
GET | /v3/suppression/spam_reports | Lista spam-rapporter |
GET | /v3/suppression/unsubscribes | Lista globala avprenumerationer |
Händelser
E-posthändelser (via Event Webhook)
| Händelse | Utlösare | Användningsfall |
|---|---|---|
processed | E-post accepterad av SendGrid | Sändningsbekräftelse |
delivered | E-post levererad till mottagare | Leveransspårning |
open | E-post öppnad | Engagemangspoäng |
click | Länk klickad | Intressespårning |
bounce | E-post studsade | Listhygien |
dropped | E-post undertryckt | Efterlevnadsgranskning |
deferred | Leveransen försenad | Övervakning av omförsök |
spam_report | Markerad som spam | Reputationshantering |
unsubscribe | Avprenumererade via länk | Preferenssynk |
Kodexempel
Initiera kopplingen
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});Migrera kontakter till 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// }Vidarebefordra e-posthändelser
// 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');});API-gränser
Rate limits för SendGrid API:
| Ändpunkt | Gräns | Detaljer |
|---|---|---|
Mail Send (/v3/mail/send) | Beror på plan | Free: 100/dag, Essentials: baserat på plan |
| Marketing Contacts PUT | 3 förfrågningar/sekund | Batcha upp till 30 000 kontakter |
| Marketing Contacts Search | 50 förfrågningar/sekund | Per API-nyckel |
| Allmänt API | 1 000 förfrågningar/sekund | Per API-nyckel |
| Event Webhook | Batchleverans | Upp till 1 000 händelser per POST |
Mail Send-gränser
Mail Send-gränser beror på din SendGrid-plan. Gratiskonton är begränsade till 100 mejl/dag. Kontrollera dina plandetaljer för exakta utskicksgränser.
Felsökning
Vanliga problem
| Problem | Orsak | Lösning |
|---|---|---|
| 401 Unauthorized | Ogiltig API-nyckel | Verifiera API-nyckeln i SendGrid Settings |
| 403 Forbidden | Otillräckliga behörigheter för API-nyckeln | Skapa ny nyckel med nödvändiga scopes |
| Kontaktexporten väntar | Bearbetning av stor datamängd | Pollla export-statusändpunkten tills den är klar |
| Ofullständig suppression-synk | Paginering krävs | Implementera paginering med offset-parameter |
| Event webhook tas inte emot | URL ej verifierad | Slutför verifiering av webhook-URL i SendGrid |
Debug-läge
Aktivera utförlig loggning:
connectors: sendgrid: debug: true log_level: verbose log_webhooks: trueTesta anslutningen
tajo connectors test sendgrid# ✓ API connection successful# ✓ Contacts readable# ✓ Lists accessible# ✓ Statistics readable# ✓ Suppressions accessibleBästa praxis
- Migrera suppressions först - Se till att studsar, blockeringar och avprenumerationer finns i Brevo innan utskick
- Använd batchuppladdning av kontakter - PUT upp till 30 000 kontakter per förfrågan för effektivitet
- Verifiera Event Webhook - Aktivera signerade webhooks med ECDSA-verifiering
- Mappa anpassade fält - Skapa motsvarande Brevo-attribut innan kontaktmigrering
- Synka engagemangsdata - Importera historisk statistik för segmentering i Brevo
- Hantera asynkrona exporter - Kontaktexporter är asynkrona; pollla för att se när de är klara
Säkerhet
- API-nyckelautentisering - Bearer token med granulära behörighetsnivåer
- Signering av Event Webhook - Verifiering av ECDSA-signaturer för webhook-payloads
- TLS-kryptering - All API-kommunikation krypteras via HTTPS
- IP Access Management - Begränsa dashboard- och API-åtkomst via IP
- Tvåfaktorsautentisering - 2FA tillgängligt för kontoåtkomst