Brevo конектор
Brevo конектор
Свържи своя акаунт в Brevo с Tajo за унифицирано управление на контакти, транзакционно изпращане на съобщения през имейл, SMS и WhatsApp и цялостна маркетингова автоматизация.
Преглед
| Свойство | Стойност |
|---|---|
| Платформа | Brevo |
| Категория | Маркетинг |
| Сложност на настройка | Лесна |
| Официална интеграция | Да |
| Синхронизирани данни | Контакти, кампании, транзакционни съобщения, събития, eCommerce |
| Base URL на API | https://api.brevo.com/v3 |
Функции
- Съобщения през множество канали – Изпращай транзакционни имейли, SMS и WhatsApp от унифициран API
- Управление на контакти – Създавай, обновявай и сегментирай контакти с персонализирани атрибути
- Маркетингови кампании – Програмно създавай и изпращай имейл кампании
- Проследяване на събития – Проследявай персонализирани събития и уебсайт активност чрез Brevo Tracker
- eCommerce синхронизация – Синхронизирай продукти, поръчки и данни за кошница за персонализирани кампании
- Loyalty програми – Управлявай loyalty абонаменти, точки и данни за членове
- Поддръжка на уебхуци – Известия за събития в реално време за транзакционни, маркетингови и CRM събития
- Conversations – Интеграция на live chat widget и програмно управление на съобщения
Предварителни условия
Преди да започнеш, увери се, че имаш:
- Акаунт в Brevo (Free, Starter, Business или Enterprise план)
- API ключ, генериран от Brevo Settings > API Keys
- Акаунт в Tajo с API достъп
- Верифициран sender domain за изпращане на имейли
Автентикация
Brevo поддържа два метода за автентикация:
Автентикация с API ключ (препоръчително)
Включи своя API ключ в хедъра api-key с всяка заявка. Най-подходящо за директни интеграции и server-to-server комуникация.
curl -X GET "https://api.brevo.com/v3/account" \ -H "api-key: YOUR_API_KEY" \ -H "Content-Type: application/json"OAuth 2.0 автентикация
Използвай OAuth 2.0 за частни интеграции вътре в организация, които изискват делегиран достъп и потребителско-специфични разрешения. OAuth предоставя token-базирана система с дефинирани периоди на валидност.
Наличност на OAuth
OAuth в момента е достъпен само за частни интеграции вътре в организация. OAuth интеграциите не са предназначени за публично разпространение или marketplace листване.
Конфигурация
Основна настройка
connectors: brevo: enabled: true api_key: "${BREVO_API_KEY}" api_version: "v3"
# Data sync options sync: contacts: true campaigns: true transactional: true events: true ecommerce: true
# List assignment lists: all_customers: 5 newsletter: 6 buyers: 7Мапване на полета
Мапвай своите data полета към атрибути на контактите в Brevo:
Мапвания по подразбиране
| Parameter | Type | Description |
|---|---|---|
email required | string | Имейл адрес на контакта (уникален идентификатор) |
FIRSTNAME optional | string | Атрибут за собствено име на контакта |
LASTNAME optional | string | Атрибут за фамилия на контакта |
SMS optional | string | Телефонен номер за SMS и WhatsApp съобщения |
OPT_IN optional | boolean | Статус на маркетингово съгласие |
ORDER_COUNT optional | integer | Общ брой направени поръчки |
TOTAL_REVENUE optional | number | Общ приход от контакта за целия период |
LOYALTY_POINTS optional | integer | Текущ баланс на точки в loyalty програмата |
Мапване на персонализирани атрибути
field_mapping: # Standard fields email: email first_name: FIRSTNAME last_name: LASTNAME phone: SMS
# Marketing fields opt_in: OPT_IN signup_source: SIGNUP_SOURCE preferred_language: LANGUAGE
# eCommerce metrics orders_count: ORDER_COUNT total_spent: TOTAL_REVENUE last_order_date: LAST_ORDER_DATE
# Loyalty fields loyalty_tier: VIP_TIER loyalty_points: LOYALTY_POINTSAPI крайни точки
Основни крайни точки
| Метод | Крайна точка | Описание |
|---|---|---|
POST | /v3/smtp/email | Изпращане на транзакционен имейл |
POST | /v3/transactionalSMS/send | Изпращане на транзакционен SMS |
POST | /v3/whatsapp/sendMessage | Изпращане на транзакционен WhatsApp |
POST | /v3/contacts | Създаване на контакт |
PUT | /v3/contacts/{email} | Обновяване на контакт |
GET | /v3/contacts/{identifier} | Получаване на детайли за контакт |
POST | /v3/contacts/import | Масов импорт на контакти |
eCommerce крайни точки
| Метод | Крайна точка | Описание |
|---|---|---|
POST | /v3/orders/status | Създаване или обновяване на статус на поръчка |
POST | /v3/products | Създаване или обновяване на продукти |
POST | /v3/categories | Създаване или обновяване на продуктови категории |
POST | /v3/events | Проследяване на персонализирани събития |
Крайни точки за кампании
| Метод | Крайна точка | Описание |
|---|---|---|
POST | /v3/emailCampaigns | Създаване на имейл кампания |
POST | /v3/emailCampaigns/{id}/sendNow | Изпращане на кампания веднага |
GET | /v3/emailCampaigns | Списък с всички имейл кампании |
GET | /v3/smtp/statistics/events | Получаване на статистики за събития от имейли |
Събития
Транзакционни събития
| Събитие | Тригер | Случай на употреба |
|---|---|---|
delivered | Имейлът е доставен в inbox-а | Потвърждение на доставка |
opened | Имейлът е отворен от получателя | Проследяване на ангажираност |
clicked | Кликнат линк в имейл | Проследяване на click-through |
bounced | Имейлът е bounce-нал | Хигиена на списък |
spam | Маркиран като спам | Мониторинг на съвместимостта |
unsubscribed | Контактът се отписа | Управление на предпочитания |
eCommerce събития
| Събитие | Тригер | Случай на употреба |
|---|---|---|
order_completed | Поръчката е направена успешно | Потоци след покупка |
cart_updated | Съдържанието на кошницата се промени | Проследяване на изоставена кошница |
cart_deleted | Кошницата е изчистена или изтекла | Възстановяване на кошница |
product_viewed | Страницата на продукт е посетена | Browse abandonment |
Примери с код
Инициализация на конектора
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Brevo accountawait tajo.connectors.connect('brevo', { apiKey: process.env.BREVO_API_KEY});Изпращане на транзакционен имейл
// Send a transactional email via Brevoawait tajo.brevo.sendTransactionalEmail({ templateId: 12, params: { ORDER_ID: '12345', ORDER_TOTAL: '$59.99', DELIVERY_DATE: '2024-02-15' }});Синхронизация на контакти
// Bulk import contacts to Brevoawait tajo.connectors.sync('brevo', { type: 'full', resources: ['contacts'], options: { listIds: [5, 6], updateExisting: true, emptyContactsAttributes: false }});
// Check sync statusconst status = await tajo.connectors.status('brevo');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsSynced: 25400,// campaignsSent: 142,// eventsTracked: 89320// }Проследяване на персонализирани събития
// Track a custom event for a contactawait tajo.brevo.trackEvent({ event: 'product_purchased', eventdata: { id: 'txn_98765', data: { product_name: 'Premium Widget', price: 49.99, currency: 'USD' } }});Ограничения на заявките
Brevo налага rate limits в три нива на базата на плана ти:
| Крайна точка | Free/Starter | Professional | Enterprise |
|---|---|---|---|
POST /v3/smtp/email | 1 000 RPS | 2 000 RPS | 6 000 RPS |
POST /v3/transactionalSMS/send | 150 RPS | 200 RPS | 250 RPS |
POST /v3/events | 10 RPS | 20 RPS | 60 RPS |
/v3/contacts/* | 10 RPS | 20 RPS | 60 RPS |
| Всички други крайни точки | 100 RPH | 200 RPH | 600 RPH |
Отговор при rate limit
Когато превишиш rate limit, API връща статус код 429 Too Many Requests. Мониторирай rate limit хедърите в отговорите, за да проследяваш използването си.
Отстраняване на проблеми
Чести проблеми
| Проблем | Причина | Решение |
|---|---|---|
| 401 Unauthorized | Невалиден API ключ | Регенерирай API ключа в Brevo Settings |
| Контактът не е създаден | Липсва email поле | Увери се, че е предоставен имейл за всички контакти |
| Имейлът не е доставен | Неверифициран sender domain | Верифицирай домейна в Brevo Senders настройките |
| Уебхукът не се получава | Грешен URL или сървърна грешка | Провери достъпността на webhook URL и логовете |
| SMS-ът не е изпратен | Невалиден формат на телефон | Използвай международен формат с код на държава |
Режим за дебъг
Активирай подробно логване:
connectors: brevo: debug: true log_level: verbose log_webhooks: trueТест на връзката
tajo connectors test brevo# ✓ API connection successful# ✓ Contacts API accessible# ✓ Transactional email ready# ✓ SMS sending configured# ✓ Webhooks registeredДобри практики
- Използвай ротация на API ключове – Периодично ротирай API ключовете за сигурност
- Внедри верификация на уебхуци – Валидирай подписите на уебхуци с username/password автентикация
- Пакетирай импорти на контакти – Използвай масов импорт за големи набори от данни вместо отделни API извиквания
- Мониторирай rate limits – Проверявай rate limit хедърите, за да избегнеш 429 грешки
- Използвай проследяване на събития – Внедри Brevo Tracker за цялостни данни за поведение на клиентите
- Настрой правилна sender автентикация – Конфигурирай SPF, DKIM и DMARC за оптимална доставимост
Сигурност
- Автентикация с API ключ – Token-базиран достъп чрез хедъра
api-key - OAuth 2.0 – Token-базиран делегиран достъп за частни интеграции
- Верификация на уебхуци – Username и password автентикация за сигурни извиквания на уебхуци
- TLS криптиране – Цялата API комуникация е криптирана при пренос
- IP whitelisting – Опционални IP ограничения, налични на Enterprise планове