Iterable कनेक्टर
एकीकृत ग्राहक एंगेजमेंट, क्रॉस-चैनल कैंपेन समन्वय, और मार्केटिंग टूल्स में समेकित एनालिटिक्स के लिए अपने Iterable growth मार्केटिंग प्लेटफ़ॉर्म को Brevo से कनेक्ट करें।
अवलोकन
| गुण | मान |
|---|---|
| प्लेटफ़ॉर्म | Iterable |
| श्रेणी | Marketing |
| सेटअप जटिलता | मध्यम |
| आधिकारिक इंटीग्रेशन | नहीं |
| सिंक किया गया डेटा | उपयोगकर्ता, इवेंट्स, कैंपेन, कैटलॉग्स |
| API Type | REST API |
| प्रमाणीकरण | API Key |
| Base URL | https://api.iterable.com/api/ |
विशेषताएं
- उपयोगकर्ता प्रोफ़ाइल सिंक - Brevo कॉन्टैक्ट्स के साथ द्विदिशीय उपयोगकर्ता डेटा सिंक्रनाइज़ेशन
- कैंपेन एनालिटिक्स - एकीकृत रिपोर्टिंग के लिए कैंपेन send, open, और click मेट्रिक्स सिंक करें
- प्रयोग डेटा - A/B टेस्ट परिणाम और winning variants ट्रैक करें
- कैटलॉग सिंक - प्लेटफ़ॉर्म्स में उत्पाद और सामग्री कैटलॉग सिंक्रनाइज़ करें
- वर्कफ़्लो इवेंट्स - workflow trigger और completion इवेंट्स को Brevo में फ़ॉरवर्ड करें
- चैनल वरीयता सिंक - Brevo में उपयोगकर्ता संचार वरीयताओं को दोहराएं
पूर्वावश्यकताएं
शुरू करने से पहले, सुनिश्चित करें कि आपके पास है:
- API एक्सेस के साथ एक Iterable खाता
- उपयुक्त अनुमतियों के साथ एक Iterable API key
- आपका Iterable project ID
- API एक्सेस वाला एक Brevo खाता
- एक सक्रिय सब्सक्रिप्शन वाला Tajo खाता
प्रमाणीकरण
Iterable अनुरोध हेडर में पारित API key प्रमाणीकरण का उपयोग करता है।
एक API Key बनाना
- अपने Iterable डैशबोर्ड में लॉग इन करें
- Integrations > API Keys पर जाएं
- New API Key पर क्लिक करें
- इसे “Tajo Integration” नाम दें
- Server-side key type चुनें
- निम्नलिखित अनुमतियां प्रदान करें:
Users: Read/WriteEvents: Read/WriteCampaigns: ReadLists: Read/WriteCatalogs: ReadExperiments: ReadWorkflows: ReadTemplates: ReadChannels: ReadMessage Types: ReadKey प्रकार महत्वपूर्ण है
Tajo इंटीग्रेशन के लिए हमेशा Server-side API key का उपयोग करें। मोबाइल और JavaScript-side keys की प्रतिबंधित अनुमतियां हैं और सभी आवश्यक एंडपॉइंट्स तक पहुंच नहीं सकते।
Tajo से कनेक्ट करना
tajo connectors install iterable \ --api-key $ITERABLE_API_KEYकॉन्फ़िगरेशन
बुनियादी सेटअप
connectors: iterable: enabled: true
sync: users: true events: true campaigns: true catalogs: true experiments: true
lists: all_users: 16 engaged_users: 17 inactive_users: 18फ़ील्ड मैपिंग
Iterable उपयोगकर्ता फ़ील्ड्स को Brevo कॉन्टैक्ट एट्रिब्यूट्स में मैप करें:
field_mapping: # Standard fields userId: ITERABLE_ID email: email firstName: FIRSTNAME lastName: LASTNAME phoneNumber: SMS
# Engagement data signupDate: SIGNUP_DATE totalPurchases: TOTAL_PURCHASES lastPurchaseDate: LAST_PURCHASE
# Custom fields plan_name: PLAN_NAME company_size: COMPANY_SIZE preferred_channel: PREFERRED_CHANNEL lifecycle_stage: LIFECYCLE_STAGEइवेंट कॉन्फ़िगरेशन
event_mapping: # Iterable event -> Brevo event purchase: ORDER_PLACED addToCart: CART_UPDATED pageView: PAGE_VIEWED appOpen: APP_OPENED pushOpen: PUSH_ENGAGEDAPI एंडपॉइंट्स
Tajo निम्नलिखित Iterable API एंडपॉइंट्स के साथ इंटीग्रेट होता है:
| एंडपॉइंट | मेथड | उद्देश्य |
|---|---|---|
/users/update | POST | उपयोगकर्ता प्रोफ़ाइल अपडेट करें |
/users/{email} | GET | ईमेल द्वारा उपयोगकर्ता प्राप्त करें |
/users/bulkUpdate | POST | उपयोगकर्ता बैच अपडेट करें |
/events/track | POST | कस्टम इवेंट्स ट्रैक करें |
/events/trackBulk | POST | इवेंट्स बैच ट्रैक करें |
/campaigns | GET | सभी कैंपेन सूचीबद्ध करें |
/campaigns/metrics | GET | कैंपेन प्रदर्शन डेटा |
/experiments/metrics | GET | प्रयोग परिणाम |
/lists | GET | सभी उपयोगकर्ता लिस्ट सूचीबद्ध करें |
/lists/subscribe | POST | एक list में उपयोगकर्ता जोड़ें |
/lists/unsubscribe | POST | एक list से उपयोगकर्ता हटाएं |
/catalogs/{catalogName}/items | GET | कैटलॉग आइटम प्राप्त करें |
/channels | GET | मैसेजिंग चैनल सूचीबद्ध करें |
/export/data.json | GET | raw इवेंट डेटा निर्यात करें |
कोड उदाहरण
कनेक्टर प्रारंभ करें
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
await tajo.connectors.connect('iterable', { apiKey: process.env.ITERABLE_API_KEY});उपयोगकर्ता सिंक करें
// Incremental user sync from Iterable to Brevoawait tajo.connectors.sync('iterable', { type: 'incremental', resources: ['users'], since: '2024-01-01', batchSize: 50});
const status = await tajo.connectors.status('iterable');console.log(status);// {// connected: true,// lastSync: '2024-03-15T09:45:00Z',// usersCount: 58700,// campaignsTracked: 42,// eventsProcessed: 210000// }इवेंट्स ट्रैक करें
// Forward Iterable events to Brevoawait tajo.connectors.handleEvent('iterable', { type: 'custom_event', payload: { eventName: 'subscription_upgraded', dataFields: { previousPlan: 'starter', newPlan: 'pro', mrr: 99.00 } }});Webhook हैंडलर
// Handle Iterable system webhooksapp.post('/webhooks/iterable', async (req, res) => { const event = req.body;
await tajo.connectors.handleWebhook('iterable', { type: event.eventName, payload: event });
res.status(200).send('OK');});दर सीमाएं
Iterable आपके प्लान के आधार पर दर सीमाएं लागू करता है:
| प्लान | दर सीमा | Bulk Endpoint सीमा |
|---|---|---|
| Growth | 500 अनुरोध/सेकंड | 500 अनुरोध/सेकंड |
| Enterprise | कस्टम | कस्टम |
विशिष्ट एंडपॉइंट सीमाएं:
| एंडपॉइंट | सीमा |
|---|---|
/users/update | 500 req/s |
/users/bulkUpdate | 500 req/s (1,000 उपयोगकर्ता प्रति अनुरोध) |
/events/track | 500 req/s |
/events/trackBulk | 500 req/s (8,000 इवेंट्स प्रति अनुरोध) |
/export/data.json | 4 समवर्ती अनुरोध |
Bulk एंडपॉइंट्स
दर सीमाओं के भीतर रहते हुए throughput को अधिकतम करने के लिए Tajo स्वचालित रूप से उपयोगकर्ता अपडेट (1,000 तक प्रति कॉल) और इवेंट ट्रैक्स (8,000 तक प्रति कॉल) को बैच करता है।
समस्या निवारण
सामान्य समस्याएं
| समस्या | कारण | समाधान |
|---|---|---|
| 401 Unauthorized | अमान्य API key | Iterable > Integrations > API Keys में key सत्यापित करें |
| उपयोगकर्ता सिंक नहीं हो रहे | Key प्रकार मेल नहीं | सुनिश्चित करें कि आप Server-side API key का उपयोग कर रहे हैं |
| गायब कैंपेन डेटा | अपर्याप्त अनुमतियां | API key में Campaigns Read अनुमति जोड़ें |
| Export timeout | बड़ा डेटा वॉल्यूम | निर्यात आकार को कम करने के लिए date range filters का उपयोग करें |
| डुप्लिकेट उपयोगकर्ता | असंगत पहचानकर्ता | प्राथमिक पहचानकर्ता के रूप में लगातार ईमेल का उपयोग करें |
डीबग मोड
connectors: iterable: debug: true log_level: verbose log_api_calls: trueकनेक्शन परीक्षण करें
tajo connectors test iterable# ✓ API connection successful# ✓ User data accessible# ✓ Campaign list readable# ✓ Event tracking operational# ✓ List management availableसर्वोत्तम प्रथाएं
- bulk एंडपॉइंट्स का उपयोग करें - बड़े डेटा वॉल्यूम के लिए हमेशा
bulkUpdateऔरtrackBulkको प्राथमिकता दें - ईमेल द्वारा डिडुप्लीकेट करें - Iterable और Brevo में सुसंगत पहचानकर्ता के रूप में ईमेल का उपयोग करें
- incrementally सिंक करें - ऐतिहासिक डेटा को पुन: प्रोसेस करने से बचने के लिए date ranges का उपयोग करें
- चैनल वरीयताओं को मैप करें - अनुपालन बनाए रखने के लिए opt-in/opt-out स्थिति सिंक करें
- export jobs की निगरानी करें - बड़े exports में समय लग सकता है; status polling सेट करें
- non-production project के साथ टेस्ट करें - प्रोडक्शन डेटा सिंक करने से पहले मैपिंग्स को मान्य करें
सुरक्षा
- API Key प्रमाणीकरण - granular अनुमतियों के साथ Server-side keys
- HTTPS Only - सभी API संचार TLS 1.2+ के माध्यम से एन्क्रिप्टेड
- Key रोटेशन - rotation के दौरान कई active API keys का समर्थन
- एन्क्रिप्टेड स्टोरेज - Tajo में रेस्ट पर API क्रेडेंशियल्स एन्क्रिप्टेड
- JWT Webhooks - सत्यापन के लिए JWT के साथ हस्ताक्षरित webhook payloads