Pipedrive कनेक्टर
Pipedrive कनेक्टर
अपनी सेल्स पाइपलाइन को मार्केटिंग ऑटोमेशन से जोड़ने के लिए Tajo के माध्यम से Pipedrive को Brevo से कनेक्ट करें। CRM स्टेज परिवर्तनों द्वारा ट्रिगर होने वाले लाइफसाइकल अभियानों को सक्षम करने के लिए कॉन्टैक्ट्स, डील्स, संगठनों, और गतिविधियों को सिंक करें।
अवलोकन
| गुण | मान |
|---|---|
| प्लेटफ़ॉर्म | Pipedrive |
| श्रेणी | CRM |
| सेटअप जटिलता | आसान |
| आधिकारिक इंटीग्रेशन | नहीं |
| सिंक किया गया डेटा | व्यक्ति, डील्स, संगठन, गतिविधियां |
| उपलब्ध स्किल्स | 8 |
विशेषताएं
- कॉन्टैक्ट सिंक - Pipedrive व्यक्तियों को Brevo कॉन्टैक्ट्स में द्विदिशीय सिंक
- डील स्टेज ट्रैकिंग - डील पाइपलाइन स्टेज परिवर्तनों के आधार पर Brevo ऑटोमेशन ट्रिगर करें
- संगठन सिंक - Pipedrive संगठनों को Brevo कंपनी एट्रिब्यूट्स में मैप करें
- गतिविधि ट्रैकिंग - Pipedrive गतिविधियों (कॉल, ईमेल, मीटिंग्स) को Brevo इवेंट्स के रूप में फॉरवर्ड करें
- कस्टम फ़ील्ड्स - Pipedrive कस्टम फ़ील्ड्स को Brevo कॉन्टैक्ट एट्रिब्यूट्स में मैप करें
- पाइपलाइन रिपोर्टिंग - मार्केटिंग एट्रिब्यूशन के लिए डील पाइपलाइन डेटा प्राप्त करें
- लीड सिंक - नर्चर अभियानों के लिए Pipedrive लीड्स को Brevo में इंपोर्ट करें
- वेबहुक ऑटोमेशन - Pipedrive वेबहुक्स के माध्यम से रीयल-टाइम अपडेट
पूर्वावश्यकताएं
शुरू करने से पहले, सुनिश्चित करें कि आपके पास है:
- एडमिन एक्सेस वाला एक Pipedrive खाता
- आपका Pipedrive API Token (Settings > Personal preferences > API में पाया जाता है)
- OAuth ऐप्स के लिए: Client ID और Client Secret के साथ एक पंजीकृत Pipedrive ऐप
- API एक्सेस वाला एक Brevo खाता
- API क्रेडेंशियल्स वाला एक Tajo खाता
प्रमाणीकरण
API Token
सबसे सरल प्रमाणीकरण विधि। अपना API Token Pipedrive में Settings > Personal preferences > API के तहत ढूंढें।
curl "https://api.pipedrive.com/v1/persons?api_token=YOUR_API_TOKEN"OAuth 2.0 (ऐप्स के लिए अनुशंसित)
प्रोडक्शन एप्लिकेशन्स के लिए, OAuth 2.0 का उपयोग करें:
# Authorization URLhttps://oauth.pipedrive.com/oauth/authorize?client_id=CLIENT_ID&redirect_uri=REDIRECT_URI
# Token exchangecurl -X POST https://oauth.pipedrive.com/oauth/token \ -d "grant_type=authorization_code" \ -d "code=AUTH_CODE" \ -d "redirect_uri=REDIRECT_URI" \ -u "CLIENT_ID:CLIENT_SECRET"access token प्राप्त करने के बाद:
curl "https://api.pipedrive.com/v1/persons" \ -H "Authorization: Bearer ACCESS_TOKEN"कॉन्फ़िगरेशन
बुनियादी सेटअप
connectors: pipedrive: enabled: true api_token: "your-pipedrive-api-token" company_domain: "yourcompany" # yourcompany.pipedrive.com
# Data sync options sync: persons: true deals: true organizations: true activities: true leads: true
# Brevo list assignment lists: all_contacts: 60 qualified_leads: 61 customers: 62 churned: 63व्यक्ति फ़ील्ड मैपिंग
Pipedrive व्यक्ति फ़ील्ड्स को Brevo कॉन्टैक्ट एट्रिब्यूट्स में मैप करें:
person_mapping: email: email name: FULLNAME first_name: FIRSTNAME last_name: LASTNAME phone: SMS org_id.name: COMPANY
# Deal-related computed fields won_deals_count: WON_DEALS lost_deals_count: LOST_DEALS open_deals_count: OPEN_DEALS closed_deals_count: CLOSED_DEALS total_revenue: LTV
# Custom fields (use Pipedrive field key) custom_fields.lead_source: LEAD_SOURCE custom_fields.industry: INDUSTRY custom_fields.company_size: COMPANY_SIZEडील स्टेज मैपिंग
Pipedrive पाइपलाइन स्टेज को Brevo लिस्ट असाइनमेंट्स से मैप करें:
deal_stage_mapping: # stage_id -> brevo_list_id 1: 61 # Lead In 2: 61 # Contact Made 3: 62 # Proposal Made 4: 62 # Negotiations Started "won": 63 # Won -> Customers list "lost": 64 # Lost -> Win-back listवेबहुक कॉन्फ़िगरेशन
webhooks: - event_action: "added" event_object: "person" brevo_event: "contact_created" - event_action: "updated" event_object: "person" brevo_event: "contact_updated" - event_action: "added" event_object: "deal" brevo_event: "deal_created" - event_action: "updated" event_object: "deal" brevo_event: "deal_updated" - event_action: "merged" event_object: "person" brevo_event: "contact_merged" - event_action: "added" event_object: "activity" brevo_event: "activity_logged"API एंडपॉइंट्स
| मेथड | एंडपॉइंट | विवरण |
|---|---|---|
GET | /v1/persons | व्यक्तियों को सूचीबद्ध करें |
POST | /v1/persons | एक व्यक्ति बनाएं |
PUT | /v1/persons/{id} | एक व्यक्ति अपडेट करें |
DELETE | /v1/persons/{id} | एक व्यक्ति हटाएं |
GET | /v1/deals | डील्स सूचीबद्ध करें |
POST | /v1/deals | एक डील बनाएं |
PUT | /v1/deals/{id} | एक डील अपडेट करें |
GET | /v1/organizations | संगठन सूचीबद्ध करें |
POST | /v1/organizations | एक संगठन बनाएं |
GET | /v1/activities | गतिविधियां सूचीबद्ध करें |
POST | /v1/activities | एक गतिविधि बनाएं |
GET | /v1/leads | लीड्स सूचीबद्ध करें |
GET | /v1/pipelines | पाइपलाइन्स सूचीबद्ध करें |
GET | /v1/stages | पाइपलाइन स्टेज सूचीबद्ध करें |
GET | /v1/itemSearch | सभी आइटम्स में खोज करें |
POST | /v1/webhooks | एक वेबहुक बनाएं |
GET | /v1/recents | हाल ही में संशोधित आइटम प्राप्त करें |
कोड उदाहरण
Pipedrive कनेक्टर प्रारंभ करें
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Pipedrive accountawait tajo.connectors.connect('pipedrive', { apiToken: process.env.PIPEDRIVE_API_TOKEN, companyDomain: 'yourcompany'});व्यक्तियों को Brevo में सिंक करें
// Fetch persons from Pipedriveconst response = await fetch( `https://api.pipedrive.com/v1/persons?start=0&limit=100&api_token=${API_TOKEN}`);
const { data, additional_data } = await response.json();// data: [{ id, name, first_name, last_name, email, phone, org_id, ... }]// additional_data.pagination: { start, limit, more_items_in_collection }डील स्टेज परिवर्तन ट्रैक करें
// Webhook handler for deal updatesapp.post('/webhooks/pipedrive', async (req, res) => { const { meta, current, previous } = req.body;
if (meta.object === 'deal' && meta.action === 'updated') { // Detect stage change if (current.stage_id !== previous.stage_id) { await tajo.connectors.handleWebhook('pipedrive', { topic: 'deal.stage_changed', payload: { dealId: current.id, dealTitle: current.title, previousStage: previous.stage_id, newStage: current.stage_id, personId: current.person_id, value: current.value, currency: current.currency } }); } }
res.status(200).send('OK');});Pipedrive में खोज करें
// Global search across persons, deals, and organizationsconst response = await fetch( `https://api.pipedrive.com/v1/itemSearch?term=${query}&item_types=person,deal&api_token=${API_TOKEN}`);
const { data } = await response.json();// Returns matching persons, deals, and organizationsदर सीमाएं
| प्लान | सीमा | विवरण |
|---|---|---|
| Essential | 80 अनुरोध/10 सेकंड | प्रति API टोकन |
| Advanced | 100 अनुरोध/10 सेकंड | प्रति API टोकन |
| Professional | 200 अनुरोध/10 सेकंड | प्रति API टोकन |
| Power | 200 अनुरोध/10 सेकंड | प्रति API टोकन |
| Enterprise | 400 अनुरोध/10 सेकंड | प्रति API टोकन |
| OAuth apps | 80 अनुरोध/2 सेकंड | प्रति access token |
अतिरिक्त सीमाएं:
| संसाधन | सीमा |
|---|---|
| प्रति पेज | अधिकतम 500 रिकॉर्ड्स |
| वेबहुक्स | प्रति खाता 40 |
| बल्क डिलीट | 100 आइटम/अनुरोध |
| खोज | मानक दर सीमाएं |
दर सीमा हेडर्स
Pipedrive X-RateLimit-Limit, X-RateLimit-Remaining, और X-RateLimit-Reset हेडर्स देता है। जब X-RateLimit-Remaining शून्य के करीब पहुंच जाए तो बैकऑफ लागू करें।
समस्या निवारण
| समस्या | कारण | समाधान |
|---|---|---|
401 Unauthorized | अमान्य API टोकन | Pipedrive Settings > API में टोकन पुन: जनरेट करें |
403 Forbidden | खाता अनुमतियां | सुनिश्चित करें कि खाते को API उपयोग के लिए एडमिन एक्सेस है |
| व्यक्तियों में ईमेल गायब | रिकॉर्ड पर कोई ईमेल नहीं | सिंक से पहले मान्य ईमेल वाले व्यक्तियों को फ़िल्टर करें |
| कस्टम फ़ील्ड्स मैप नहीं हो रहे | गलत फ़ील्ड key | Pipedrive के फ़ील्ड key (hash) का उपयोग करें, नाम नहीं |
| वेबहुक्स प्राप्त नहीं हुए | फायरवॉल ब्लॉक कर रहा है | सुनिश्चित करें कि वेबहुक URL HTTPS पर सार्वजनिक रूप से सुलभ है |
| डुप्लिकेट व्यक्ति | कई ईमेल रिकॉर्ड्स | सिंक से पहले Pipedrive के merge API का उपयोग करें |
429 Too Many Requests | दर सीमा पार | X-RateLimit-Reset हेडर का उपयोग करके बैकऑफ लागू करें |
सर्वोत्तम प्रथाएं
- प्रोडक्शन के लिए OAuth का उपयोग करें - प्रोडक्शन एप्लिकेशन्स के लिए API टोकन के बजाय OAuth 2.0 को प्राथमिकता दें
- डील स्टेज परिवर्तनों को ट्रैक करें - पाइपलाइन स्टेज परिवर्तनों पर Brevo ऑटोमेशन ट्रिगर करने के लिए वेबहुक्स का उपयोग करें
- कस्टम फ़ील्ड्स मैप करें - विश्वसनीय फ़ील्ड मैपिंग के लिए Pipedrive कस्टम फ़ील्ड keys (नहीं names) का उपयोग करें
- पेजिनेशन हैंडल करें -
startऔरlimitपैरामीटर्स का उपयोग करें;more_items_in_collectionकी जांच करें - Recents एंडपॉइंट का उपयोग करें - फुल एक्सपोर्ट्स के बजाय इंक्रीमेंटल सिंक के लिए
/v1/recentsपोल करें - सिंक से पहले डिडुप्लिकेट करें - Brevo में सिंक करने से पहले Pipedrive में डुप्लिकेट व्यक्तियों को मर्ज करें
- सैंडबॉक्स खातों का उपयोग करें - इंटीग्रेशन्स का परीक्षण करने के लिए एक डेवलपर सैंडबॉक्स खाता बनाएं
सुरक्षा
- API token प्रमाणीकरण - व्यक्तिगत उपयोग के लिए सरल टोकन-आधारित एक्सेस
- OAuth 2.0 - थर्ड-पार्टी एप्लिकेशन्स के लिए सुरक्षित प्रत्यायोजित एक्सेस
- केवल HTTPS - सभी API संचार के लिए TLS एन्क्रिप्शन आवश्यक
- वेबहुक HTTPS - वेबहुक्स केवल HTTPS एंडपॉइंट्स को डिलीवर किए जाते हैं
- भूमिका-आधारित एक्सेस - Pipedrive अनुमतियां उपयोगकर्ता भूमिकाओं का पालन करती हैं
- SOC 2 प्रमाणित - Pipedrive SOC 2 अनुपालन बनाए रखता है
- GDPR अनुपालन - डेटा निर्यात और हटाने के अनुरोधों का समर्थन करता है