---
title: "SendGrid Bağlayıcısı"
description: "Tajo aracılığıyla kişileri, işlemsel e-postaları, pazarlama kampanyalarını ve etkileşim olaylarını Brevo ile senkronize etmek için eksiksiz SendGrid entegrasyon rehberi."
url: https://tajo.io/tr/docs/connectors/marketing/sendgrid/
markdown: https://tajo.io/tr/docs/connectors/marketing/sendgrid.md
lang: tr-TR
robots: noindex
---

Erken erişim talep edin

Adınızı ve iş e-posta adresinizi girin. Tajo erişim talebinizi onaylamanız için size bir bağlantı göndereceğiz.

# SendGrid Bağlayıcısı

Bağlayıcı durumu: Geliştiriliyor Yapım aşamasında. Henüz doğrulanmadı.

| Kaynak alanı | Hedef alanı | Örnek değer |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

E-posta altyapısı taşıma, kişi senkronizasyonu, kampanya verisi aktarımı ve her iki platformda birleşik etkileşim analitiği için SendGrid hesabınızı Tajo aracılığıyla Brevo’ya bağlayın.

## Genel Bakış

| Özellik | Değer |
| --- | --- |
| **Platform** | SendGrid (Twilio) |
| **Kategori** | Pazarlama |
| **Kurulum Karmaşıklığı** | Kolay |
| **Resmi Entegrasyon** | Hayır |
| **Senkronize Edilen Veri** | Kişiler, Kampanyalar, İşlemsel E-posta, Olaylar |
| **API Temel URL’si** | `https://api.sendgrid.com/v3` |

## Özellikler

- **Kişi taşıma** - SendGrid Marketing kişilerini özel alanlarla Brevo’ya taşıyın
- **İşlemsel e-posta senkronizasyonu** - Birleşik raporlama için işlemsel e-posta olaylarını takip edin
- **Kampanya verileri** - Single Send ve Automation kampanya performans verilerini senkronize edin
- **Olay webhook’ları** - E-posta olaylarını (teslim edildi, açıldı, tıklandı, geri döndü) Brevo’ya iletin
- **Bastırma senkronizasyonu** - Uyumluluk için geri dönme, engelleme ve abonelikten çıkma listelerini taşıyın
- **Şablon taşıma** - Brevo kullanımı için Dynamic Transactional Templates dışa aktarın
- **Gönderici doğrulama** - Doğrulanmış gönderici kimliklerini ve alan adı kimlik doğrulamasını senkronize edin
- **İstatistik senkronizasyonu** - Geçmiş etkileşim istatistiklerini Brevo özniteliklerine içe aktarın

## Ön Koşullar

Başlamadan önce sahip olmanız gerekenler:

1. Bir SendGrid hesabı (Free, Essentials, Pro veya Premier)
2. Gerekli izinlere sahip bir SendGrid API anahtarı
3. API erişimi olan bir Brevo hesabı
4. Bir Tajo hesabı

## Kimlik Doğrulama

### API Anahtar Kimlik Doğrulaması

SendGrid bearer belirteç kimlik doğrulaması kullanır.

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

SendGrid Settings > API Keys’te belirli izin seviyeleriyle API anahtarları oluşturun:

- **Full Access** - Tam API erişimi
- **Restricted Access** - Ayrıntılı izin kontrolü
- **Billing Access** - Yalnızca faturalama işlemleri

#### Gerekli İzinler

```
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
```

API Anahtar Güvenliği

SendGrid API anahtarları yalnızca oluşturma sırasında gösterilir. Bunları güvenli bir şekilde saklayın. Kaybolursa, yeni bir anahtar oluşturmanız gerekir.

## Yapılandırma

### Temel Kurulum

```yaml
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
```

### Alan Eşleme

SendGrid kişi alanlarını Brevo kişi özniteliklerine eşleyin:

#### Varsayılan Eşlemeler

| Parameter | Type | Description |
| --- | --- | --- |
| `email` required | string | Kişi e-posta adresi (benzersiz tanımlayıcı) |
| `first_name` optional | string | FIRSTNAME özniteliğine eşlenir |
| `last_name` optional | string | LASTNAME özniteliğine eşlenir |
| `phone_number` optional | string | SMS özniteliğine eşlenir |
| `city` optional | string | Kişi şehri |
| `country` optional | string | Kişi ülkesi |
| `custom_fields` optional | object | Özel alan anahtar-değer çiftleri |
| `list_ids` optional | array | SendGrid liste üyelikleri |

#### Özel Alan Eşleme

```yaml
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_TYPE
```

## API Uç Noktaları

### Marketing Kişileri

| Yöntem | Uç Nokta | Açıklama |
| --- | --- | --- |
| `PUT` | `/v3/marketing/contacts` | Kişileri ekle veya güncelle |
| `POST` | `/v3/marketing/contacts/search` | Kişileri ara |
| `GET` | `/v3/marketing/contacts/count` | Kişi sayısını al |
| `POST` | `/v3/marketing/contacts/exports` | Kişileri dışa aktar |
| `DELETE` | `/v3/marketing/contacts` | Kişileri sil |
| `GET` | `/v3/marketing/lists` | Tüm kişi listelerini listele |

### İşlemsel E-posta (Mail Send)

| Yöntem | Uç Nokta | Açıklama |
| --- | --- | --- |
| `POST` | `/v3/mail/send` | Bir e-posta gönder |
| `GET` | `/v3/templates` | Dynamic Templates’i listele |
| `GET` | `/v3/templates/{id}` | Şablon detaylarını al |

### Kampanyalar (Single Sends)

| Yöntem | Uç Nokta | Açıklama |
| --- | --- | --- |
| `GET` | `/v3/marketing/singlesends` | Single Sends’i listele |
| `GET` | `/v3/marketing/singlesends/{id}` | Single Send detaylarını al |
| `GET` | `/v3/marketing/automations` | Automations’ı listele |

### İstatistikler

| Yöntem | Uç Nokta | Açıklama |
| --- | --- | --- |
| `GET` | `/v3/stats` | Genel e-posta istatistiklerini al |
| `GET` | `/v3/categories/stats` | Kategori istatistiklerini al |
| `GET` | `/v3/marketing/stats/singlesends` | Single Send istatistiklerini al |

### Bastırmalar

| Yöntem | Uç Nokta | Açıklama |
| --- | --- | --- |
| `GET` | `/v3/suppression/bounces` | Geri dönen e-postaları listele |
| `GET` | `/v3/suppression/blocks` | Engellenen e-postaları listele |
| `GET` | `/v3/suppression/spam_reports` | Spam raporlarını listele |
| `GET` | `/v3/suppression/unsubscribes` | Genel abonelikten çıkmaları listele |

## Olaylar

### E-posta Olayları (Event Webhook üzerinden)

| Olay | Tetikleyici | Kullanım Alanı |
| --- | --- | --- |
| `processed` | E-posta SendGrid tarafından kabul edildi | Gönderim onayı |
| `delivered` | E-posta alıcıya teslim edildi | Teslimat takibi |
| `open` | E-posta açıldı | Etkileşim puanlaması |
| `click` | Bağlantıya tıklandı | İlgi takibi |
| `bounce` | E-posta geri döndü | Liste hijyeni |
| `dropped` | E-posta bastırıldı | Uyumluluk incelemesi |
| `deferred` | Teslimat ertelendi | Yeniden deneme izleme |
| `spam_report` | Spam olarak işaretlendi | İtibar yönetimi |
| `unsubscribe` | Bağlantı üzerinden abonelikten çıkıldı | Tercih senkronizasyonu |

## Kod Örnekleri

### Bağlayıcıyı Başlat

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect SendGrid
await tajo.connectors.connect('sendgrid', {
  apiKey: process.env.SENDGRID_API_KEY
});
```

### Kişileri Brevo’ya Taşı

```javascript
// Full contact migration from SendGrid to Brevo
await tajo.connectors.sync('sendgrid', {
  type: 'full',
  resources: ['contacts', 'suppressions'],
  options: {
    includeCustomFields: true,
    migrateListMemberships: true,
    migrateSuppressions: true
  }
});

// Check migration status
const status = await tajo.connectors.status('sendgrid');
console.log(status);
// {
//   connected: true,
//   lastSync: '2024-01-15T10:30:00Z',
//   contactsMigrated: 45000,
//   suppressionsSynced: 3200,
//   listsMapped: 8
// }
```

### E-posta Olaylarını İlet

```javascript
// Handle SendGrid Event Webhook
app.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');
});
```

## Hız Limitleri

SendGrid API hız limitleri:

| Uç Nokta | Limit | Detaylar |
| --- | --- | --- |
| Mail Send (`/v3/mail/send`) | Plana bağlı | Free: 100/gün, Essentials: plana göre |
| Marketing Contacts PUT | 3 istek/saniye | 30.000 kişiye kadar toplu |
| Marketing Contacts Search | 50 istek/saniye | API anahtarı başına |
| Genel API | 1.000 istek/saniye | API anahtarı başına |
| Event Webhook | Toplu teslimat | POST başına 1.000’e kadar olay |

Mail Send Limitleri

Mail Send limitleri SendGrid planınıza bağlıdır. Ücretsiz hesaplar 100 e-posta/gün ile sınırlıdır. Tam gönderim limitleri için plan detaylarınızı kontrol edin.

## Sorun Giderme

### Sık Karşılaşılan Sorunlar

| Sorun | Neden | Çözüm |
| --- | --- | --- |
| 401 Unauthorized | Geçersiz API anahtarı | SendGrid Settings’te API anahtarını doğrulayın |
| 403 Forbidden | Yetersiz API anahtar izinleri | Gerekli kapsamlarla yeni anahtar oluşturun |
| Kişi dışa aktarımı bekliyor | Büyük veri kümesi işleniyor | Tamamlanana kadar dışa aktarma durum uç noktasını sorgulayın |
| Bastırma senkronizasyonu eksik | Sayfalama gerekli | Offset parametresi ile sayfalama uygulayın |
| Event webhook alınmıyor | URL doğrulanmadı | SendGrid’de webhook URL doğrulamasını tamamlayın |

### Hata Ayıklama Modu

Ayrıntılı günlüklemeyi etkinleştirin:

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

### Bağlantıyı Test Et

```bash
tajo connectors test sendgrid
# ✓ API connection successful
# ✓ Contacts readable
# ✓ Lists accessible
# ✓ Statistics readable
# ✓ Suppressions accessible
```

## En İyi Uygulamalar

1. **Önce bastırmaları taşıyın** - Gönderim öncesinde geri dönmelerin, engellemelerin ve abonelikten çıkmaların Brevo’da olduğundan emin olun
2. **Toplu kişi yüklemeleri kullanın** - Verimlilik için istek başına 30.000 kişiye kadar PUT yapın
3. **Event Webhook’u doğrulayın** - ECDSA doğrulamasıyla imzalı webhook’ları etkinleştirin
4. **Özel alanları eşleyin** - Kişi taşımadan önce karşılık gelen Brevo özniteliklerini oluşturun
5. **Etkileşim verilerini senkronize edin** - Brevo’da segmentasyon için geçmiş istatistikleri içe aktarın
6. **Eşzamansız dışa aktarmaları yönetin** - Kişi dışa aktarmaları eşzamansızdır; tamamlanma için sorgulayın

## Güvenlik

- **API Anahtar Kimlik Doğrulaması** - Ayrıntılı izin seviyeleri ile bearer belirteç
- **Event Webhook imzalama** - Webhook yükleri için ECDSA imza doğrulaması
- **TLS şifrelemesi** - Tüm API iletişimi HTTPS aracılığıyla şifrelenir
- **IP Erişim Yönetimi** - Dashboard ve API erişimini IP’ye göre kısıtlayın
- **İki faktörlü kimlik doğrulama** - Hesap erişimi için 2FA mevcuttur

## İlgili Kaynaklar

- [SendGrid API Dokümantasyonu](https://docs.sendgrid.com/api-reference)
- [SendGrid Event Webhook Rehberi](https://docs.sendgrid.com/for-developers/tracking-events/event)
- [Brevo Bağlayıcısı](https://tajo.io/tr/docs/connectors/marketing/brevo)
- [Mailchimp Bağlayıcısı](https://tajo.io/tr/docs/connectors/marketing/mailchimp)
- [Müşteri Senkronizasyon Yeteneği](https://tajo.io/tr/docs/skills/data-sync/customer-sync)
