Intercom کنیکٹر
متحدہ گاہک پیغام رسانی، گفتگو ٹریکنگ، اور آپ کے سپورٹ اور پروڈکٹ ڈیٹا سے چلنے والی engagement پر مبنی مارکیٹنگ آٹومیشن کے لیے Tajo کے ذریعے اپنے Intercom ورک اسپیس کو Brevo سے منسلک کریں۔
جائزہ
| خاصیت | قدر |
|---|---|
| پلیٹ فارم | Intercom |
| زمرہ | سپورٹ |
| سیٹ اپ کی پیچیدگی | درمیانی |
| آفیشل انٹیگریشن | ہاں |
| سنک شدہ ڈیٹا | رابطے، گفتگو، کمپنیاں، ایونٹس |
| API بنیادی URL | https://api.intercom.io |
خصوصیات
- رابطہ سنک - Brevo رابطوں کے ساتھ Intercom صارفین اور لیڈز کا دو طرفہ سنک
- گفتگو ٹریکنگ - سپورٹ سے چلنے والی segmentation کے لیے گفتگو ڈیٹا سنک کریں
- کمپنی میپنگ - account پر مبنی ورک فلوز کے لیے رابطوں کو کمپنیوں سے منسلک کریں
- کسٹم خصوصیات - Intercom کسٹم خصوصیات کو Brevo رابطہ فیلڈز پر میپ کریں
- ایونٹ ٹریکنگ - رویاتی targeting کے لیے کسٹم ایونٹس اور صارف سرگرمیاں سنک کریں
- ٹیگ سنک - Intercom ٹیگز کو Brevo فہرست رکنیت یا خصوصیات پر میپ کریں
- Messenger ڈیٹا - in-app پیغام رسانی engagement اور چیٹ تعاملات ٹریک کریں
- AI agent انٹیگریشن - AI agent گفتگو کے نتائج کو Brevo کے ساتھ سنک کریں
شرائط
شروع کرنے سے پہلے، یقینی بنائیں کہ آپ کے پاس ہے:
- Intercom ورک اسپیس (Starter, Pro, یا Premium plan)
- access token (private app) کے ساتھ Intercom ایپ یا OAuth ترتیب دیا گیا (public app)
- API رسائی کے ساتھ Brevo اکاؤنٹ
- Tajo اکاؤنٹ
تصدیق
Access Token (Private App)
پرائیویٹ انٹیگریشنز کے لیے جو آپ کے اپنے ورک اسپیس ڈیٹا تک رسائی حاصل کرتے ہیں۔
- Developer Hub > Your Apps > Create new app پر جائیں
- اپنے Intercom ورک اسپیس کے ساتھ منسلک کریں
- access token کاپی کریں
curl https://api.intercom.io/contacts \ -H "Authorization: Bearer {access_token}" \ -H "Content-Type: application/json" \ -H "Intercom-Version: 2.11"OAuth 2.0 (Public App)
ان انٹیگریشنز کے لیے جو دیگر گاہکوں کے Intercom ڈیٹا تک رسائی حاصل کرتے ہیں۔
# Authorization URLhttps://app.intercom.com/oauth?client_id={client_id}&state={state}
# Token exchangecurl -X POST https://api.intercom.io/auth/eagle/token \ -d "client_id={client_id}" \ -d "client_secret={client_secret}" \ -d "code={auth_code}"API Versioning
ہمیشہ اپنی درخواستوں میں Intercom-Version ہیڈر شامل کریں۔ Tajo default کے طور پر API version 2.11 استعمال کرتا ہے۔ breaking changes کے لیے Intercom changelog چیک کریں۔
تشکیل
بنیادی سیٹ اپ
connectors: intercom: enabled: true access_token: "${INTERCOM_ACCESS_TOKEN}" api_version: "2.11"
# Data sync options sync: contacts: true conversations: true companies: true events: true tags: true
# Sync direction direction: intercom_to_brevo
# Brevo list assignment lists: all_users: 35 active_conversations: 36 leads: 37فیلڈ میپنگ
Intercom رابطہ ڈیٹا کو Brevo رابطہ خصوصیات پر میپ کریں:
طے شدہ میپنگز
| Parameter | Type | Description |
|---|---|---|
email required | string | رابطہ ای میل پتہ (منفرد شناخت کنندہ) |
name optional | string | مکمل نام، FIRSTNAME/LASTNAME میں تقسیم |
phone optional | string | WhatsApp/SMS کے لیے SMS خصوصیت پر میپ ہوتا ہے |
role optional | string | رابطہ کی قسم: user یا lead |
company.name optional | string | منسلک کمپنی کا نام |
signed_up_at optional | timestamp | صارف سائن اپ تاریخ |
last_seen_at optional | timestamp | آخری فعال ٹائم اسٹیمپ |
custom_attributes optional | object | کسٹم خصوصیت key-value جوڑے |
کسٹم خصوصیت میپنگ
field_mapping: # Standard fields email: email name: FULLNAME phone: SMS
# Engagement fields signed_up_at: SIGNUP_DATE last_seen_at: LAST_ACTIVE session_count: SESSION_COUNT unsubscribed_from_emails: UNSUBSCRIBED
# Company fields company.name: COMPANY_NAME company.plan: COMPANY_PLAN company.size: COMPANY_SIZE
# Custom attributes custom_attributes.plan_tier: PLAN_TIER custom_attributes.feature_usage: FEATURE_USAGEAPI اینڈ پوائنٹس
Contacts API
| طریقہ | اینڈ پوائنٹ | تفصیل |
|---|---|---|
GET | /contacts | تمام رابطوں کی فہرست |
POST | /contacts | رابطہ بنائیں |
PUT | /contacts/{id} | رابطہ اپ ڈیٹ کریں |
GET | /contacts/{id} | رابطہ حاصل کریں |
POST | /contacts/search | رابطے تلاش کریں |
DELETE | /contacts/{id} | رابطہ archive کریں |
Conversations API
| طریقہ | اینڈ پوائنٹ | تفصیل |
|---|---|---|
GET | /conversations | گفتگو کی فہرست |
GET | /conversations/{id} | گفتگو حاصل کریں |
POST | /conversations | گفتگو بنائیں |
POST | /conversations/{id}/reply | گفتگو کا جواب دیں |
POST | /conversations/{id}/parts | گفتگو حصہ شامل کریں |
Companies API
| طریقہ | اینڈ پوائنٹ | تفصیل |
|---|---|---|
GET | /companies | کمپنیوں کی فہرست |
POST | /companies | کمپنی بنائیں یا اپ ڈیٹ کریں |
GET | /companies/{id} | کمپنی حاصل کریں |
GET | /companies/{id}/contacts | کمپنی رابطوں کی فہرست |
Events API
| طریقہ | اینڈ پوائنٹ | تفصیل |
|---|---|---|
POST | /events | ایونٹ submit کریں |
GET | /events?type=user&intercom_user_id={id} | صارف ایونٹس کی فہرست |
ایونٹس
گفتگو ایونٹس
| ایونٹ | ٹرگر | استعمال کا کیس |
|---|---|---|
conversation.created | نئی گفتگو شروع ہوئی | سپورٹ ٹکٹ الرٹ |
conversation.closed | گفتگو حل ہوئی | CSAT سروے ٹرگر |
conversation.rating.added | ریٹنگ submit کی گئی | اطمینان ٹریکنگ |
conversation.snoozed | گفتگو snooze کی گئی | فالو اپ شیڈولنگ |
رابطہ ایونٹس
| ایونٹ | ٹرگر | استعمال کا کیس |
|---|---|---|
contact.created | نیا رابطہ شامل | ویلکم سیریز |
contact.updated | رابطہ ڈیٹا تبدیل | خصوصیت سنک |
contact.deleted | رابطہ archive | کلین اپ |
contact.tag.created | رابطہ پر ٹیگ شامل | سیگمنٹ اپ ڈیٹ |
صارف ایونٹس
| ایونٹ | ٹرگر | استعمال کا کیس |
|---|---|---|
user.created | نیا صارف سائن اپ ہوا | آن بورڈنگ فلو |
user.email.updated | ای میل تبدیل ہوئی | رابطہ merge |
user.unsubscribed | ای میلز سے ان سبسکرائب | ترجیح اپ ڈیٹ |
کوڈ کی مثالیں
کنیکٹر کو انیشیلائز کریں
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Intercomawait tajo.connectors.connect('intercom', { accessToken: process.env.INTERCOM_ACCESS_TOKEN, apiVersion: '2.11'});رابطے اور گفتگو سنک کریں
// Full sync of contacts and conversation dataawait tajo.connectors.sync('intercom', { type: 'full', resources: ['contacts', 'conversations', 'companies'], since: '2023-01-01'});
// Check sync statusconst status = await tajo.connectors.status('intercom');console.log(status);// {// connected: true,// lastSync: '2024-01-15T10:30:00Z',// contactsSynced: 14200,// conversationsSynced: 28400,// companiesSynced: 2100// }Intercom Webhooks کو سنبھالیں
import crypto from 'crypto';
app.post('/webhooks/intercom', async (req, res) => { const signature = req.get('X-Hub-Signature'); const expectedSig = 'sha1=' + crypto .createHmac('sha1', process.env.INTERCOM_CLIENT_SECRET) .update(JSON.stringify(req.body)) .digest('hex');
if (signature !== expectedSig) { return res.status(401).send('Unauthorized'); }
await tajo.connectors.handleWebhook('intercom', { topic: req.body.topic, data: req.body.data });
res.status(200).send('OK');});شرح کی حدود
Intercom آپ کے پلان کی بنیاد پر شرح کی حدود لاگو کرتا ہے:
| پلان | شرح کی حد | تفصیلات |
|---|---|---|
| Starter | 20 درخواستیں/10 سیکنڈ | فی ایپ |
| Pro | 50 درخواستیں/10 سیکنڈ | فی ایپ |
| Premium | 100 درخواستیں/10 سیکنڈ | فی ایپ |
| Search اینڈ پوائنٹ | 1 درخواست/سیکنڈ | فی ایپ |
| Scroll اینڈ پوائنٹ | 1 درخواست/منٹ | فی ایپ |
اضافی حدود:
- بلک آپریشنز: 15 رابطے فی بلک درخواست
- ایونٹ سبمیشنز: 500 ایونٹس/سیکنڈ فی ورک اسپیس
- Webhook ڈیلیوری: 24 گھنٹوں کے لیے خودکار retry
- Data export: 1 بیک وقتی export
شرح کی حد جواب
Intercom Retry-After ہیڈر کے ساتھ 429 Too Many Requests واپس کرتا ہے۔ exponential backoff نافذ کریں اور retry window کا احترام کریں۔
ٹربل شوٹنگ
عام مسائل
| مسئلہ | وجہ | حل |
|---|---|---|
| 401 Unauthorized | غلط یا میعاد ختم token | Developer Hub میں access token دوبارہ بنائیں |
| رابطہ سنک نہیں ہوا | غائب ای میل فیلڈ | Intercom leads میں ای میل کی کمی ہو سکتی ہے؛ role کے ذریعے فلٹر کریں |
| گفتگو ڈیٹا خالی | ایپ میں گفتگو scope کی کمی | conversation read اجازتوں کے ساتھ دوبارہ authorize کریں |
| Webhook موصول نہیں ہوا | Webhook رجسٹرڈ نہیں | Developer Hub settings میں webhooks ترتیب دیں |
| API version mismatch | نئے ورژن میں breaking changes | Intercom-Version ہیڈر کے ساتھ API version pin کریں |
ڈیبگ موڈ
تفصیلی لاگنگ فعال کریں:
connectors: intercom: debug: true log_level: verbose log_webhooks: trueکنکشن ٹیسٹ کریں
tajo connectors test intercom# ✓ API connection successful# ✓ Contacts readable# ✓ Conversations readable# ✓ Companies readable# ✓ Webhooks registeredبہترین طرز عمل
- API version pin کریں - breaking changes سے بچنے کے لیے ہمیشہ
Intercom-Versionمتعین کریں - search API کو موثر طریقے سے استعمال کریں - ڈیٹا منتقلی کم کرنے کے لیے فلٹرز اور pagination استعمال کریں
- صارفین اور leads دونوں سنک کریں - Brevo میں مکمل funnel capture کریں
- گفتگو ٹیگز میپ کریں - سپورٹ کے بعد مارکیٹنگ سیگمنٹس کے لیے گفتگو ٹیگز استعمال کریں
- کسٹم ایونٹس ٹریک کریں - رویاتی targeting کے لیے Intercom کو اہم پروڈکٹ ایونٹس submit کریں
- رابطہ merges کو سنبھالیں - ڈپلیکیٹ رابطوں کے لیے merge لاجک نافذ کریں
سیکیورٹی
- Access Token - private apps کے لیے Bearer token تصدیق
- OAuth 2.0 - client secret کے ساتھ public apps کے لیے delegated اجازت
- Webhook توثیق -
X-Hub-Signatureکے ذریعے HMAC SHA-1 دستخط کی توثیق - TLS انکرپشن - تمام API مواصلات HTTPS کے ذریعے انکرپٹڈ
- ڈیٹا رسائی کنٹرول - فی ایپ تشکیل گرانولر ڈیٹا رسائی