SendGrid Konektor

Povežite vaš SendGrid račun s Brevom putem Taja za migraciju e-mail infrastrukture, sinkronizaciju kontakata, prijenos podataka o kampanjama i ujedinjenu analitiku angažmana na obje platforme.

Pregled

SvojstvoVrijednost
PlatformaSendGrid (Twilio)
KategorijaMarketing
Složenost postavljanjaJednostavno
Službena integracijaDa
Sinkronizirani podaciKontakti, Kampanje, Transakcijski e-mail, Događaji
Osnovni URL API-jahttps://api.sendgrid.com/v3

Značajke

  • Migracija kontakata - Migracija SendGrid Marketing kontakata u Brevo s prilagođenim poljima
  • Sinkronizacija transakcijskih e-mailova - Praćenje transakcijskih e-mail događaja za ujedinjeno izvješćivanje
  • Podaci o kampanjama - Sinkronizacija podataka o performansama Single Send i Automation kampanja
  • Webhook događaji - Prosljeđivanje e-mail događaja (dostavljeno, otvoreno, kliknuto, vraćeno) u Brevo
  • Sinkronizacija supresija - Migracija popisa vraćenih, blokiranih i odjavljenih za usklađenost
  • Migracija predložaka - Izvoz Dynamic Transactional Templates za korištenje u Brevo
  • Verifikacija pošiljatelja - Sinkronizacija verificiranih identiteta pošiljatelja i autentifikacije domene
  • Sinkronizacija statistika - Uvoz historijskih statistika angažmana u Brevo atribute

Preduvjeti

Prije nego što počnete, osigurajte da imate:

  1. SendGrid račun (Free, Essentials, Pro ili Premier)
  2. SendGrid API ključ s potrebnim dozvolama
  3. Brevo račun s API pristupom
  4. Tajo račun

Autentifikacija

Autentifikacija API ključem

SendGrid koristi autentifikaciju bearer tokenom.

Terminal window
curl https://api.sendgrid.com/v3/marketing/contacts \
-H "Authorization: Bearer SG.YOUR_API_KEY" \
-H "Content-Type: application/json"

Kreirajte API ključeve u SendGrid Postavkama > API ključevi s određenim razinama dozvola:

  • Puni pristup - Potpuni API pristup
  • Ograničeni pristup - Granularna kontrola dozvola
  • Pristup naplati - Operacije samo za naplatu

Potrebne dozvole

Marketing: Full Access
- Contacts (read)
- Single Sends (read)
- Automations (read)
Mail Send: Full Access
- Mail Send (read)
Stats: Read Access
Suppressions: Read Access
Tracking: Read Access

Sigurnost API ključa

SendGrid API ključevi prikazuju se samo jednom pri kreiranju. Pohranite ih sigurno. Ako izgubite ključ, morate kreirati novi.

Konfiguracija

Osnovna konfiguracija

connectors:
sendgrid:
enabled: true
api_key: "${SENDGRID_API_KEY}"
# Opcije sinkronizacije podataka
sync:
contacts: true
campaigns: true
transactional: true
suppressions: true
statistics: true
# Mapiranje popisa na Brevo
list_mapping:
"All Contacts": 60
"Newsletter": 61
"Transactional": 62

Mapiranje polja

Mapirajte polja kontakata SendGrida na Brevo atribute kontakata:

Zadana mapiranja

Parameter Type Description
email required
string

E-mail adresa kontakta (jedinstveni identifikator)

first_name optional
string

Mapira se na atribut FIRSTNAME

last_name optional
string

Mapira se na atribut LASTNAME

phone_number optional
string

Mapira se na atribut SMS

city optional
string

Grad kontakta

country optional
string

Država kontakta

custom_fields optional
object

Parovi ključ-vrijednost prilagođenih polja

list_ids optional
array

Članstva na SendGrid popisima

Mapiranje prilagođenih polja

field_mapping:
# Standardna polja
email: email
first_name: FIRSTNAME
last_name: LASTNAME
phone_number: SMS
# Polja lokacije
city: CITY
state_province_region: STATE
country: COUNTRY
postal_code: POSTAL_CODE
# Metrike angažmana
avg_open_rate: AVG_OPEN_RATE
avg_click_rate: AVG_CLICK_RATE
# Prilagođena polja
custom_fields.company: COMPANY_NAME
custom_fields.plan: PLAN_TYPE

API krajnje točke

Marketinški kontakti

MetodaKrajnja točkaOpis
PUT/v3/marketing/contactsDodaj ili ažuriraj kontakte
POST/v3/marketing/contacts/searchPretraži kontakte
GET/v3/marketing/contacts/countDohvati broj kontakata
POST/v3/marketing/contacts/exportsIzvezi kontakte
DELETE/v3/marketing/contactsIzbriši kontakte
GET/v3/marketing/listsPopis svih popisa kontakata

Transakcijski e-mail (Mail Send)

MetodaKrajnja točkaOpis
POST/v3/mail/sendPošalji e-mail
GET/v3/templatesPopis Dynamic Templates
GET/v3/templates/{id}Dohvati detalje predloška

Kampanje (Single Sends)

MetodaKrajnja točkaOpis
GET/v3/marketing/singlesendsPopis Single Sends
GET/v3/marketing/singlesends/{id}Dohvati detalje Single Senda
GET/v3/marketing/automationsPopis automatizacija

Statistike

MetodaKrajnja točkaOpis
GET/v3/statsDohvati globalne statistike e-maila
GET/v3/categories/statsDohvati statistike kategorija
GET/v3/marketing/stats/singlesendsDohvati Single Send statistike

Supresije

MetodaKrajnja točkaOpis
GET/v3/suppression/bouncesPopis vraćenih e-mailova
GET/v3/suppression/blocksPopis blokiranih e-mailova
GET/v3/suppression/spam_reportsPopis prijava spama
GET/v3/suppression/unsubscribesPopis globalnih odjava

Događaji

E-mail događaji (putem Event Webhookova)

DogađajOkidačSlučaj upotrebe
processedE-mail prihvatio SendGridPotvrda slanja
deliveredE-mail dostavljen primateljuPraćenje dostave
openE-mail otvorenOcjenjivanje angažmana
clickKliknuta vezaPraćenje interesa
bounceE-mail vraćenHigijena popisa
droppedE-mail supresianPregled usklađenosti
deferredDostava odgođenaPraćenje ponovnih pokušaja
spam_reportOznačen kao spamUpravljanje reputacijom
unsubscribeOdjavljen putem vezeSinkronizacija preferencija

Primjeri koda

Inicijalizacija konektora

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Povežite SendGrid
await tajo.connectors.connect('sendgrid', {
apiKey: process.env.SENDGRID_API_KEY
});

Migracija kontakata u Brevo

// Potpuna migracija kontakata iz SendGrida u Brevo
await tajo.connectors.sync('sendgrid', {
type: 'full',
resources: ['contacts', 'suppressions'],
options: {
includeCustomFields: true,
migrateListMemberships: true,
migrateSuppressions: true
}
});
// Provjera statusa migracije
const status = await tajo.connectors.status('sendgrid');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// contactsMigrated: 45000,
// suppressionsSynced: 3200,
// listsMapped: 8
// }

Prosljeđivanje e-mail događaja

// Rukovanje SendGrid Event Webhookom
app.post('/webhooks/sendgrid', async (req, res) => {
const signature = req.get('X-Twilio-Email-Event-Webhook-Signature');
// Verificirajte potpis webhookova (ECDSA)
if (!verifySendGridSignature(req.body, signature)) {
return res.status(401).send('Unauthorized');
}
// Obradite seriju događaja
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');
});

Ograničenja brzine

Ograničenja brzine SendGrid API-ja:

Krajnja točkaOgraničenjeDetalji
Mail Send (/v3/mail/send)Ovisno o planuFree: 100/dan, Essentials: na temelju plana
Marketing Contacts PUT3 zahtjeva/sekundiSerija do 30.000 kontakata
Marketing Contacts Search50 zahtjeva/sekundiPo API ključu
Opći API1.000 zahtjeva/sekundiPo API ključu
Event WebhookSkupna dostavaDo 1.000 događaja po POST-u

Ograničenja Mail Send

Ograničenja Mail Senda ovise o vašem SendGrid planu. Free računi ograničeni su na 100 e-mailova/dan. Provjerite detalje vašeg plana za točna ograničenja slanja.

Rješavanje problema

Uobičajeni problemi

ProblemUzrokRješenje
401 UnauthorizedNevažeći API ključVerificirajte API ključ u SendGrid Postavkama
403 ForbiddenNedovoljne dozvole API ključaKreirajte novi ključ s potrebnim opsezima
Izvoz kontakata na čekanjuObrada velikog skupa podatakaAnketirajte krajnju točku statusa izvoza dok ne dovršite
Nepotpuna sinkronizacija supresijaPotrebna paginacijaImplementirajte paginaciju s parametrom offset
Webhook nije primljenURL nije verificiranDovršite verifikaciju URL-a webhookova u SendGridu

Način otklanjanja grešaka

Omogućite detaljno zapisivanje:

connectors:
sendgrid:
debug: true
log_level: verbose
log_webhooks: true

Testiranje veze

Terminal window
tajo connectors test sendgrid
# ✓ API veza uspješna
# ✓ Kontakti čitljivi
# ✓ Popisi dostupni
# ✓ Statistike čitljive
# ✓ Supresije dostupne

Preporučene prakse

  1. Prvo migrirajte supresije - Osigurajte da su vraćene, blokirane i odjavljene adrese u Brevo prije slanja
  2. Koristite skupna učitavanja kontakata - PUT do 30.000 kontakata po zahtjevu za učinkovitost
  3. Verificirajte Event Webhook - Omogućite potpisane webhookove s ECDSA verifikacijom
  4. Mapirajte prilagođena polja - Kreirajte odgovarajuće Brevo atribute prije migracije kontakata
  5. Sinkronizirajte podatke o angažmanu - Uvezite historijske statistike za segmentaciju u Brevo
  6. Rukujte asinkronim izvozima - Izvozi kontakata su asinkroni; anketirajte za dovršetak

Sigurnost

  • Autentifikacija API ključem - Bearer token s granularnim razinama dozvola
  • Potpisivanje Event Webhookova - ECDSA verifikacija potpisa za webhook opterećenja
  • TLS šifriranje - Sva API komunikacija šifrirana putem HTTPS-a
  • Upravljanje IP pristupom - Ograničite Dashboard i API pristup po IP-u
  • Dvofaktorska autentifikacija - 2FA dostupna za pristup računu

Povezani resursi

Subscribe to updates

developer-docs

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

auto-detect
AI asistent

Bok! Pitajte me o dokumentaciji.