Klaviyo कनेक्टर
प्लेटफ़ॉर्म्स के बीच मार्केटिंग डेटा को माइग्रेट या सिंक्रनाइज़ करने के लिए Tajo के माध्यम से Klaviyo को Brevo से कनेक्ट करें। एकीकृत मल्टी-चैनल मार्केटिंग रणनीति के लिए profiles, इवेंट्स, lists, segments, flows, और कैंपेन डेटा सिंक करें।
अवलोकन
| गुण | मान |
|---|---|
| प्लेटफ़ॉर्म | Klaviyo |
| श्रेणी | Marketing |
| सेटअप जटिलता | मध्यम |
| आधिकारिक इंटीग्रेशन | नहीं |
| सिंक किया गया डेटा | Profiles, इवेंट्स, Lists, Segments, कैंपेन |
| उपलब्ध Skills | 10 |
| API Standard | JSON:API |
विशेषताएं
- Profile सिंक - Klaviyo और Brevo के बीच ग्राहक profiles का द्विदिशीय sync
- इवेंट फ़ॉरवर्डिंग - ऑटोमेशन ट्रिगर्स के लिए Klaviyo tracked इवेंट्स को Brevo में फ़ॉरवर्ड करें
- List माइग्रेशन - Klaviyo lists को Brevo कॉन्टैक्ट lists में सिंक करें
- Segment सिंक - Klaviyo segments को Brevo lists या segments के रूप में निर्यात करें
- Flow डेटा निर्यात - क्रॉस-प्लेटफ़ॉर्म एनालिटिक्स के लिए flow प्रदर्शन डेटा खींचें
- कैंपेन सिंक - Klaviyo और Brevo चैनलों में कैंपेन का समन्वय करें
- कैटलॉग सिंक - प्लेटफ़ॉर्म्स के बीच उत्पाद कैटलॉग को मिरर करें
- Coupon प्रबंधन - coupon codes और उपयोग डेटा सिंक करें
पूर्वावश्यकताएं
शुरू करने से पहले, सुनिश्चित करें कि आपके पास है:
- API एक्सेस के साथ एक Klaviyo खाता
- उपयुक्त scopes के साथ एक Private API Key
- आपका Klaviyo Public API Key (6-character company ID)
- API एक्सेस वाला एक Brevo खाता
- API क्रेडेंशियल्स वाला एक Tajo खाता
प्रमाणीकरण
Private API Key
Klaviyo server-side प्रमाणीकरण के लिए scoped एक्सेस के साथ private API keys का उपयोग करता है। Authorization हेडर में key सेट करें:
curl https://a.klaviyo.com/api/profiles/ \ -H "Authorization: Klaviyo-API-Key your-private-api-key" \ -H "revision: 2026-01-15"API Key Scopes
अपनी private key बनाते समय scopes कॉन्फ़िगर करें:
| Scope | एक्सेस | विवरण |
|---|---|---|
profiles | Read/Full | कॉन्टैक्ट profiles तक एक्सेस |
events | Read/Full | tracked इवेंट्स तक एक्सेस |
lists | Read/Full | कॉन्टैक्ट lists तक एक्सेस |
segments | Read | segments तक एक्सेस |
campaigns | Read | कैंपेन डेटा तक एक्सेस |
metrics | Read | metric परिभाषाओं तक एक्सेस |
flows | Read | flow कॉन्फ़िगरेशन तक एक्सेस |
catalogs | Read | उत्पाद कैटलॉग तक एक्सेस |
Public API Key
client-side ट्रैकिंग के लिए, 6-character company ID का उपयोग करें:
curl -X POST "https://a.klaviyo.com/client/events/?company_id=COMPANY_ID" \ -H "Content-Type: application/json" \ -d '{"data": {...}}'OAuth (Partner Integrations)
Klaviyo tech partners के लिए OAuth का समर्थन करता है, जो बेहतर सुरक्षा और दर सीमाएं प्रदान करता है:
curl https://a.klaviyo.com/api/profiles/ \ -H "Authorization: Bearer YOUR_OAUTH_TOKEN" \ -H "revision: 2026-01-15"कॉन्फ़िगरेशन
बुनियादी सेटअप
connectors: klaviyo: enabled: true private_api_key: "your-klaviyo-private-key" public_api_key: "XXXXXX" api_revision: "2026-01-15"
# Data sync options sync: profiles: true events: true lists: true segments: true catalogs: false
# Brevo list assignment lists: all_contacts: 20 subscribers: 21 high_value: 22Profile मैपिंग
Klaviyo profile properties को Brevo कॉन्टैक्ट एट्रिब्यूट्स में मैप करें:
profile_mapping: email: email first_name: FIRSTNAME last_name: LASTNAME phone_number: SMS city: CITY region: REGION country: COUNTRY zip: ZIP organization: COMPANY title: JOB_TITLE
# Custom properties lifetime_value: LTV total_orders: ORDER_COUNT last_order_date: LAST_ORDER_DATE preferred_channel: CHANNEL_PREFइवेंट मैपिंग
Klaviyo metrics को Brevo इवेंट्स में मैप करें:
event_mapping: "Placed Order": "order_completed" "Ordered Product": "product_purchased" "Started Checkout": "checkout_started" "Added to Cart": "cart_updated" "Viewed Product": "product_viewed" "Subscribed to List": "customer_subscribed" "Received Email": "email_received" "Opened Email": "email_opened" "Clicked Email": "email_clicked"API एंडपॉइंट्स
| मेथड | एंडपॉइंट | विवरण |
|---|---|---|
GET | /api/profiles/ | profiles सूचीबद्ध करें |
POST | /api/profiles/ | एक profile बनाएं |
PATCH | /api/profiles/{id}/ | एक profile अपडेट करें |
POST | /api/profile-merge/ | डुप्लिकेट profiles को मर्ज करें |
GET | /api/events/ | इवेंट्स सूचीबद्ध करें |
POST | /api/events/ | एक इवेंट बनाएं |
GET | /api/lists/ | सभी lists सूचीबद्ध करें |
POST | /api/lists/{id}/relationships/profiles/ | एक list में profiles जोड़ें |
GET | /api/segments/ | segments सूचीबद्ध करें |
GET | /api/campaigns/ | कैंपेन सूचीबद्ध करें |
GET | /api/flows/ | flows सूचीबद्ध करें |
GET | /api/metrics/ | metrics सूचीबद्ध करें |
POST | /api/metric-aggregates/ | metric aggregates क्वेरी करें |
GET | /api/catalog-items/ | कैटलॉग आइटम सूचीबद्ध करें |
कोड उदाहरण
Klaviyo कनेक्टर प्रारंभ करें
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Klaviyo accountawait tajo.connectors.connect('klaviyo', { privateApiKey: process.env.KLAVIYO_PRIVATE_KEY, publicApiKey: process.env.KLAVIYO_PUBLIC_KEY});Brevo में Profiles सिंक करें
// Fetch Klaviyo profiles and sync to Brevoconst response = await fetch('https://a.klaviyo.com/api/profiles/', { headers: { 'Authorization': `Klaviyo-API-Key ${PRIVATE_KEY}`, 'revision': '2026-01-15', 'Accept': 'application/vnd.api+json' }});
const { data } = await response.json();
// Each profile follows JSON:API format// {// "type": "profile",// "id": "01ABCDEF",// "attributes": {// "email": "[email protected]",// "first_name": "Jane",// "last_name": "Kim",// "phone_number": "+15551234567",// "properties": { "lifetime_value": 450.00 }// }// }एक इवेंट बनाएं
// Track an event in Klaviyo (forwarded to Brevo via Tajo)await fetch('https://a.klaviyo.com/api/events/', { method: 'POST', headers: { 'Authorization': `Klaviyo-API-Key ${PRIVATE_KEY}`, 'revision': '2026-01-15', 'Content-Type': 'application/vnd.api+json', 'Accept': 'application/vnd.api+json' }, body: JSON.stringify({ data: { type: 'event', attributes: { metric: { data: { type: 'metric', attributes: { name: 'Placed Order' } } }, profile: { }, properties: { OrderId: 'ORD-1234', Value: 89.99, Items: [ { ProductName: 'Widget Pro', Price: 89.99, Quantity: 1 } ] }, value: 89.99 } } })});Metric Aggregates क्वेरी करें
// Get aggregate metric data for reportingawait fetch('https://a.klaviyo.com/api/metric-aggregates/', { method: 'POST', headers: { 'Authorization': `Klaviyo-API-Key ${PRIVATE_KEY}`, 'revision': '2026-01-15', 'Content-Type': 'application/vnd.api+json' }, body: JSON.stringify({ data: { type: 'metric-aggregate', attributes: { metric_id: 'METRIC_ID', measurements: ['count', 'sum_value'], interval: 'day', filter: ['greater-or-equal(datetime,2024-01-01)', 'less-than(datetime,2024-02-01)'] } } })});दर सीमाएं
| प्रमाणीकरण | Burst सीमा | Steady सीमा |
|---|---|---|
| Private API Key | 75 अनुरोध/sec | 700 अनुरोध/min |
| OAuth | 150 अनुरोध/sec | 1,500 अनुरोध/min |
| Client API | 100 अनुरोध/sec | N/A |
| Bulk operations | 10 अनुरोध/sec | 100 अनुरोध/min |
API Revision आवश्यक
सभी Klaviyo API अनुरोधों को revision हेडर को एक मान्य API version date (जैसे, 2026-01-15) पर सेट करने की आवश्यकता है। इस हेडर के बिना अनुरोध अस्वीकार किए जाएंगे।
समस्या निवारण
| समस्या | कारण | समाधान |
|---|---|---|
400 Bad Request | अमान्य या गायब API key | private API key सही है सत्यापित करें |
403 Forbidden | अपर्याप्त scope | API key scopes आवश्यक अनुमतियों से मेल खाते हैं जांचें |
गायब revision हेडर | हेडर सेट नहीं | सभी अनुरोधों में revision: 2026-01-15 जोड़ें |
| Profile नहीं मिला | गलत पहचानकर्ता | lookups के लिए ईमेल नहीं, Klaviyo profile ID का उपयोग करें |
| इवेंट्स सिंक नहीं हो रहे | गलत metric नाम | Klaviyo में परिभाषित सटीक metric नामों से मेल खाएं |
429 Too Many Requests | दर सीमा पार | exponential backoff लागू करें, उच्च सीमाओं के लिए OAuth पर विचार करें |
| JSON:API format त्रुटियां | गलत content type | Content-Type और Accept हेडर्स के लिए application/vnd.api+json का उपयोग करें |
सर्वोत्तम प्रथाएं
- JSON:API format का उपयोग करें - सभी request और response payloads के लिए JSON:API specification का पालन करें
- revision हेडर सेट करें - हमेशा नवीनतम API version date के साथ
revisionहेडर शामिल करें - sparse fieldsets का उपयोग करें - payload size कम करने के लिए
?fields[profile]=email,first_nameके साथ केवल आवश्यक फ़ील्ड्स का अनुरोध करें - relationships का लाभ उठाएं - एक एकल अनुरोध में संबंधित संसाधन प्राप्त करने के लिए JSON:API
includeपैरामीटर का उपयोग करें - cursor pagination का उपयोग करें -
page[cursor]पैरामीटर के साथ बड़े परिणाम सेट को नेविगेट करें - bulk operations लागू करें - बैच profile imports और इवेंट निर्माण के लिए bulk एंडपॉइंट्स का उपयोग करें
- उच्च सीमाओं के लिए OAuth का उपयोग करें - OAuth प्रमाणीकरण private keys की तुलना में 2x अधिक दर सीमाएं प्रदान करता है
सुरक्षा
- Private API key scopes - प्रति संसाधन प्रकार granular Read/Full एक्सेस नियंत्रण
- OAuth समर्थन - partner integrations के लिए सुरक्षित token-आधारित प्रमाणीकरण
- Public key isolation - client-side keys केवल create-only operations तक सीमित
- TLS 1.2+ - ट्रांजिट में सभी API संचार एन्क्रिप्टेड
- SOC 2 Type II - Klaviyo SOC 2 Type II प्रमाणित है
- GDPR अनुपालन - profile deletion अनुरोधों के लिए Data Privacy API