Freshdesk کنیکٹر
سپورٹ اور مارکیٹنگ ڈیٹا کو متحد کرنے کے لیے Tajo کے ذریعے Freshdesk کو Brevo سے منسلک کریں۔ سپورٹ تعاملات کی بنیاد پر ٹارگٹڈ مواصلات کو طاقت دینے کے لیے گاہک سپورٹ ٹکٹس، رابطہ پروفائلز، اور اطمینان اسکورز سنک کریں۔
جائزہ
| خاصیت | قدر |
|---|---|
| پلیٹ فارم | Freshdesk |
| زمرہ | سپورٹ |
| سیٹ اپ کی پیچیدگی | آسان |
| آفیشل انٹیگریشن | نہیں |
| سنک شدہ ڈیٹا | ٹکٹس، رابطے، ایجنٹس، کمپنیاں |
| دستیاب اسکلز | 6 |
خصوصیات
- رابطہ سنک - Freshdesk رابطوں کا Brevo رابطہ فہرستوں سے دو طرفہ سنک
- ٹکٹ ایونٹ ٹریکنگ - ٹکٹ کی تخلیق، اپ ڈیٹ، اور resolution ایونٹس کو Brevo کو فارورڈ کریں
- CSAT سنک - گاہک اطمینان اسکورز کو Brevo رابطہ خصوصیات کے طور پر سنک کریں
- کمپنی سنک - Freshdesk کمپنیوں کو Brevo رابطہ segmentation پر میپ کریں
- ایجنٹ ڈیٹا - اندرونی ورک فلو آٹومیشن کے لیے ایجنٹ تفویضات ٹریک کریں
- کسٹم فیلڈز - Freshdesk کسٹم ٹکٹ اور رابطہ فیلڈز کو Brevo خصوصیات پر میپ کریں
شرائط
شروع کرنے سے پہلے، یقینی بنائیں کہ آپ کے پاس ہے:
- ایڈمن رسائی کے ساتھ Freshdesk اکاؤنٹ
- آپ کا Freshdesk API Key (Profile Settings میں ملتا ہے)
- آپ کا Freshdesk domain (مثلاً
yourcompany.freshdesk.com) - API رسائی کے ساتھ Brevo اکاؤنٹ
- API کریڈینشلز کے ساتھ Tajo اکاؤنٹ
تصدیق
API Key تصدیق
Freshdesk HTTP Basic Auth کے ذریعے API key تصدیق استعمال کرتا ہے۔ API key کو username کے طور پر استعمال کیا جاتا ہے جس میں کوئی بھی string (عام طور پر X) password کے طور پر ہوتی ہے۔
curl -u "YOUR_API_KEY:X" \ https://yourcompany.freshdesk.com/api/v2/ticketsیا Authorization ہیڈر میں Base64 encoding کا استعمال کرتے ہوئے:
curl https://yourcompany.freshdesk.com/api/v2/tickets \ -H "Authorization: Basic BASE64_ENCODED_API_KEY:X" \ -H "Content-Type: application/json"اپنی API Key تلاش کرنا
- اپنے Freshdesk اکاؤنٹ میں لاگ ان کریں
- اوپر دائیں کونے میں اپنی پروفائل تصویر پر کلک کریں
- Profile Settings پر جائیں
- آپ کی API Key دائیں جانب ظاہر ہوتی ہے
تشکیل
بنیادی سیٹ اپ
connectors: freshdesk: enabled: true domain: "yourcompany.freshdesk.com" api_key: "your-freshdesk-api-key"
# Data sync options sync: contacts: true tickets: true companies: true satisfaction_ratings: true
# Brevo list assignment lists: all_support_contacts: 30 open_tickets: 31 resolved_tickets: 32رابطہ فیلڈ میپنگ
Freshdesk رابطہ فیلڈز کو Brevo خصوصیات پر میپ کریں:
contact_mapping: email: email name: FULLNAME phone: SMS company_id: COMPANY job_title: JOB_TITLE twitter_id: TWITTER language: LANGUAGE time_zone: TIMEZONE
# Support metrics total_tickets: TICKET_COUNT open_tickets: OPEN_TICKETS avg_csat: CSAT_SCORE last_ticket_date: LAST_SUPPORT_DATE
# Custom fields custom_fields.account_type: ACCOUNT_TYPE custom_fields.subscription_tier: PLANٹکٹ ایونٹ میپنگ
Freshdesk ٹکٹ ایونٹس کو Brevo آٹومیشن ٹرگرز پر میپ کریں:
ticket_events: ticket_created: "support_ticket_created" ticket_updated: "support_ticket_updated" ticket_resolved: "support_ticket_resolved" ticket_closed: "support_ticket_closed" ticket_reopened: "support_ticket_reopened" satisfaction_rated: "csat_submitted" note_added: "support_note_added"API اینڈ پوائنٹس
| طریقہ | اینڈ پوائنٹ | تفصیل |
|---|---|---|
GET | /api/v2/tickets | تمام ٹکٹس کی فہرست |
POST | /api/v2/tickets | ٹکٹ بنائیں |
GET | /api/v2/tickets/{id} | مخصوص ٹکٹ حاصل کریں |
PUT | /api/v2/tickets/{id} | ٹکٹ اپ ڈیٹ کریں |
DELETE | /api/v2/tickets/{id} | ٹکٹ حذف کریں |
GET | /api/v2/contacts | تمام رابطوں کی فہرست |
POST | /api/v2/contacts | رابطہ بنائیں |
PUT | /api/v2/contacts/{id} | رابطہ اپ ڈیٹ کریں |
GET | /api/v2/companies | تمام کمپنیوں کی فہرست |
GET | /api/v2/agents | تمام ایجنٹس کی فہرست |
GET | /api/v2/surveys/satisfaction_ratings | CSAT ریٹنگز کی فہرست |
GET | /api/v2/search/tickets?query= | ٹکٹس تلاش کریں |
کوڈ کی مثالیں
Freshdesk کنیکٹر کو انیشیلائز کریں
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Freshdesk accountawait tajo.connectors.connect('freshdesk', { domain: 'yourcompany.freshdesk.com', apiKey: process.env.FRESHDESK_API_KEY});رابطوں کو Brevo میں سنک کریں
// Fetch Freshdesk contacts and sync to Brevoconst response = await fetch( 'https://yourcompany.freshdesk.com/api/v2/contacts?page=1&per_page=100', { headers: { 'Authorization': 'Basic ' + btoa(`${API_KEY}:X`), 'Content-Type': 'application/json' } });
const contacts = await response.json();// Each contact:// {// "id": 12345,// "name": "Jane Kim",// "email": "[email protected]",// "phone": "+15551234567",// "company_id": 678,// "job_title": "Product Manager",// "created_at": "2024-01-15T10:30:00Z"// }ٹکٹ ایونٹس ٹریک کریں
// Set up Freshdesk webhook to forward ticket events// Configure in Freshdesk Admin > Automations > Webhook
// Webhook handlerapp.post('/webhooks/freshdesk', async (req, res) => { const { ticket, event_type } = req.body;
await tajo.connectors.handleWebhook('freshdesk', { topic: event_type, payload: { ticketId: ticket.id, subject: ticket.subject, status: ticket.status, priority: ticket.priority, requesterEmail: ticket.requester.email, createdAt: ticket.created_at } });
res.status(200).send('OK');});گاہک کے ذریعے ٹکٹس تلاش کریں
// Search for all tickets from a specific customerconst response = await fetch( `https://yourcompany.freshdesk.com/api/v2/search/tickets?query=${query}`, { headers: { 'Authorization': 'Basic ' + btoa(`${API_KEY}:X`) } });
const { results, total } = await response.json();شرح کی حدود
| پلان | حد | تفصیلات |
|---|---|---|
| Sprout | 50 درخواستیں/منٹ | Free پلان |
| Blossom | 200 درخواستیں/منٹ | Starter پلان |
| Garden | 400 درخواستیں/منٹ | Growth پلان |
| Estate | 700 درخواستیں/منٹ | Pro پلان |
| Forest | 1,000 درخواستیں/منٹ | Enterprise پلان |
اضافی حدود:
| وسیلہ | حد |
|---|---|
| List اینڈ پوائنٹس | 30 صفحات فی کوئری |
| فی صفحہ | 100 ریکارڈز زیادہ سے زیادہ |
| Search API | 2 درخواستیں/سیکنڈ |
| بلک آپریشنز | 10 ریکارڈز/درخواست |
شرح کی حد ہیڈرز
Freshdesk جواب ہیڈرز میں شرح کی حد کی معلومات واپس کرتا ہے۔ X-RateLimit-Remaining کی نگرانی کریں اور حدود کے قریب پہنچنے پر backoff نافذ کریں۔
ٹربل شوٹنگ
| مسئلہ | وجہ | حل |
|---|---|---|
401 Unauthorized | غلط API key | Freshdesk Profile Settings میں API key کی تصدیق کریں |
403 Forbidden | ناکافی اجازتیں | یقینی بنائیں کہ API key ایڈمن اکاؤنٹ سے تعلق رکھتی ہے |
| رابطے سنک نہیں ہو رہے | غائب ای میل فیلڈ | Freshdesk رابطوں کو ای میل پتہ درکار ہے |
| ٹکٹس ظاہر نہیں ہو رہے | غلط domain | تصدیق کریں کہ آپ کا Freshdesk domain URL درست ہے |
| Search خالی واپس آ رہا ہے | کوئری syntax کی غلطی | double quotes کے ساتھ Freshdesk search query syntax استعمال کریں |
429 Too Many Requests | شرح کی حد سے تجاوز | پلان tier کی بنیاد پر شرح کی حد نافذ کریں |
| کسٹم فیلڈز غائب | فیلڈ فعال نہیں | یقینی بنائیں کہ کسٹم فیلڈز Freshdesk admin میں فعال ہیں |
بہترین طرز عمل
- ریئل ٹائم سنک کے لیے webhooks استعمال کریں - ٹکٹ ایونٹس پر webhooks ٹرگر کرنے کے لیے Freshdesk Automations ترتیب دیں
- CSAT اسکورز سنک کریں - segmentation کے لیے Brevo خصوصیات کے طور پر گاہک اطمینان ریٹنگز ٹریک کریں
- ٹکٹ اسٹیٹس کو فہرستوں پر میپ کریں - ٹکٹ اسٹیٹس کی بنیاد پر رابطوں کو Brevo فہرستوں کے درمیان خودکار طور پر منتقل کریں
- سپورٹ میٹرکس ٹریک کریں - فی رابطہ ٹکٹ کی تعداد، اوسط جواب کا وقت، اور resolution ریٹ سنک کریں
- search API کو احتیاط سے استعمال کریں - search API کی سخت شرح کی حدود ہیں؛ جب ممکن ہو تو نتائج کیش کریں
- بڑے exports کو پیجینیٹ کریں - ابتدائی sync کے لیے
pageاورper_pageپیرامیٹرز کے ساتھ pagination استعمال کریں
سیکیورٹی
- API key تصدیق - API key کے ساتھ سادہ HTTP Basic Auth
- HTTPS صرف - تمام API مواصلات کو TLS انکرپشن درکار ہے
- IP وائٹ لسٹنگ - Estate اور Forest plans پر دستیاب
- رول پر مبنی رسائی - API key اجازتیں ایجنٹ رول سے منسلک
- SOC 2 Type II - Freshdesk SOC 2 Type II سرٹیفائیڈ ہے
- GDPR کمپلائنس - ڈیٹا export اور حذف درخواستوں کی حمایت کرتا ہے