Salesforce एक्सटेंशन

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

वर्शन: 1.0.3

अपने Salesforce खाते में डेटा ऐक्सेस करें. डेटा डालें, अपडेट करें, वापस पाएं, और क्वेरी करें.

इस कॉन्टेंट में, इस एक्सटेंशन को कॉन्फ़िगर करने और इसका इस्तेमाल करने का रेफ़रंस दिया गया है.

ज़रूरी शर्तें

इस कॉन्टेंट में, इस एक्सटेंशन को कॉन्फ़िगर करने और इसका इस्तेमाल करने का रेफ़रंस दिया गया है. एक्सटेंशन कॉल आउट नीति का इस्तेमाल करके, एपीआई प्रॉक्सी से एक्सटेंशन का इस्तेमाल करने से पहले:

  1. आरएसए x509 निजी कुंजी/सर्टिफ़िकेट का जोड़ा बनाएं.

    एक्सटेंशन कॉन्फ़िगर करते समय, आपको क्रेडेंशियल के तौर पर निजी कुंजी (.key) का इस्तेमाल करना होगा. कनेक्ट किया गया ऐसा ऐप्लिकेशन बनाते समय सर्टिफ़िकेट (.crt) फ़ाइल का इस्तेमाल किया जाएगा जो एक्सटेंशन को Salesforce का ऐक्सेस देगा.

    openssl req -x509 -sha256 -nodes -days 36500 -newkey rsa:2048 -keyout salesforce.key -out salesforce.crt
    
    
  2. कनेक्ट किया गया ऐप्लिकेशन सेट अप करना.

    Salesforce से कनेक्ट किया गया ऐप्लिकेशन, Salesforce एक्सटेंशन के लिए ऐक्सेस देगा. ऐप्लिकेशन सेट अप करने के लिए नीचे दिए गए निर्देश देखें.

  3. कनेक्ट किए गए ऐप्लिकेशन के लिए उपभोक्ता कुंजी पाएं. एक्सटेंशन, ऐप्लिकेशन से पुष्टि करते समय इसका इस्तेमाल करेगा.

    1. Salesforce सेटअप में, बाएं नेविगेशन में ऐप्लिकेशन > ऐप्लिकेशन मैनेजर पर जाएं.
    2. सूची में, अपने बनाए गए कनेक्ट किए गए ऐप्लिकेशन पर जाएं.
    3. ऐप्लिकेशन की पंक्ति में दाईं ओर मौजूद ड्रॉपडाउन से, देखें पर क्लिक करें.
    4. एपीआई (OAuth सेटिंग चालू करें) में, उपभोक्ता कुंजी का पता लगाएं और एक्सटेंशन कॉन्फ़िगर करते समय, इसकी वैल्यू को किसी सुरक्षित जगह पर कॉपी करें.

एक्सटेंशन की मदद से ऐक्सेस करने के लिए, कनेक्ट किए गए ऐप्लिकेशन सेट अप करना

Salesforce एक्सटेंशन को Salesforce से कनेक्ट करने से पहले, आपको Salesforce से कनेक्ट किया गया एक ऐप्लिकेशन बनाना होगा. इसके ज़रिए एक्सटेंशन, Salesforce से कनेक्ट हो सकेगा.

Salesforce में, कनेक्ट किया गया ऐप्लिकेशन, बाहरी ऐप्लिकेशन को एपीआई के ज़रिए Salesforce से कनेक्ट करने का तरीका बताता है.

कनेक्ट किए गए ऐप्लिकेशन को सेट अप करने के लिए

  1. Salesforce में लॉग इन करें.
  2. ऊपर दाईं ओर दिए गए गियर आइकॉन पर क्लिक करें. इसके बाद, सेटअप पर क्लिक करें.
  3. बाईं ओर मौजूद नेविगेशन में, ऐप्लिकेशन > ऐप्लिकेशन मैनेजर को बड़ा करें.
  4. ऐप्लिकेशन मैनेजर पेज में, कनेक्ट किया गया नया ऐप्लिकेशन पर क्लिक करें.
  5. बुनियादी जानकारी में जाकर, ज़रूरी फ़ील्ड भरें. वैल्यू, हिसाब-किताब रखने के लिए हैं. एक्सटेंशन, इनका इस्तेमाल नहीं करता है.
  6. एपीआई (OAuth सेटिंग चालू करें) में जाकर, OAuth सेटिंग चालू करें चेक बॉक्स चुनें.
  7. हालांकि, एक्सटेंशन में इसका इस्तेमाल नहीं किया गया है, लेकिन कॉलबैक यूआरएल डालें. http://localhost/ या किसी अन्य प्लेसहोल्डर होस्ट का इस्तेमाल किया जा सकता है.
  8. डिजिटल हस्ताक्षर का इस्तेमाल करें चेक बॉक्स चुनें.
  9. डिजिटल हस्ताक्षर इस्तेमाल करें में जाकर, पहले जनरेट किए गए salesforce.crt को ढूंढने और अपलोड करने के लिए, फ़ाइल चुनें पर क्लिक करें.
  10. चुने गए OAuth के स्कोप सेक्शन में, नीचे दी गई जानकारी जोड़ें, ताकि वे चुने गए OAuth के स्कोप में शामिल हों:
    • अपने डेटा (एपीआई) को ऐक्सेस और मैनेज करें
    • किसी भी समय अपनी ओर से अनुरोध करें (refresh_token, cloud_access)
  11. सेव करें पर क्लिक करें. अगर कोई गड़बड़ी दिखती है, तो आपको salesforce.crt फ़ाइल को फिर से जनरेट करना और अपलोड करना पड़ सकता है.
  12. खुलने वाले ऐप्लिकेशन पेज पर, मैनेज करें पर क्लिक करें.
  13. आपने अभी-अभी जो ऐप्लिकेशन बनाया है उसके ऐप्लिकेशन मैनेजर पेज पर, नीतियों में बदलाव करें पर क्लिक करें.
  14. OAuth की नीतियों में, अनुमति पा चुके उपयोगकर्ता ड्रॉपडाउन पर क्लिक करें. इसके बाद, एडमिन ने जिन उपयोगकर्ताओं को अनुमति दी है उन्हें पहले से अनुमति मिली हुई है पर क्लिक करें.
  15. सेव करें पर क्लिक करें.
  16. ऐप्लिकेशन पेज पर वापस आने के लिए, प्रोफ़ाइल में जाकर, प्रोफ़ाइल मैनेज करें पर क्लिक करें.
  17. ऐप्लिकेशन प्रोफ़ाइल असाइनमेंट पेज पर, उन उपयोगकर्ता प्रोफ़ाइल के चेक बॉक्स चुनें जो इस ऐप्लिकेशन का इस्तेमाल कर सकते हैं.

    जिस उपयोगकर्ता के उपयोगकर्ता नाम का इस्तेमाल एक्सटेंशन कॉन्फ़िगर करते समय किया जाएगा उसी प्रोफ़ाइल को चुनें. यह भी पक्का करें कि कम से कम सिस्टम एडमिन उपयोगकर्ताओं के पास इस ऐप्लिकेशन का ऐक्सेस हो.

    Salesforce में, उपयोगकर्ता की प्रोफ़ाइल सेटिंग देखी जा सकती है. सेटअप क्षेत्र में, उपयोगकर्ता > उपयोगकर्ता को बड़ा करें, उस उपयोगकर्ता का पता लगाएं जिसका एक्सटेंशन एक्सटेंशन करेगा और फिर प्रोफ़ाइल कॉलम में उसकी प्रोफ़ाइल ढूंढें.

  18. सेव करें पर क्लिक करें.

Salesforce के बारे में जानकारी

Salesforce एक कस्टमर रिलेशनशिप मैनेजमेंट (सीआरएम) प्लैटफ़ॉर्म है. कस्टमर रिलेशनशिप मैनेजमेंट, कंपनियों को अपने ग्राहकों की ज़रूरतों को समझने और उनकी समस्याओं को हल करने में मदद करता है. इसके लिए, यह ग्राहकों की जानकारी और उनके इंटरैक्शन को बेहतर तरीके से मैनेज करता है. यह सब कुछ एक ही प्लैटफ़ॉर्म पर किया जा सकता है. इस प्लैटफ़ॉर्म को किसी भी डेस्कटॉप या डिवाइस से हमेशा ऐक्सेस किया जा सकता है.

कार्रवाइयाँ

इंसर्ट करें

रिकॉर्ड को sObject type के तौर पर डालें.

सिंटैक्स

<Action>insert</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "records":[ records-to-insert ],
  "allOrNone": true | false
}]]></Input>

उदाहरण

<Action>insert</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "records":[
    { "Name": "MyAccountName" }
  ],
  "allOrNone": true
}]]></Input>

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
ऑब्जेक्ट शामिल किए जाने वाले रिकॉर्ड का sObject type. String कोई नहीं. हां.
रिकॉर्ड JSON में sObject रिकॉर्ड का कलेक्शन. ज़्यादा से ज़्यादा: 1,000. Array कोई नहीं. हां.
allOrNone अगर अपडेट का कोई भी हिस्सा फ़ेल हो जाता है, तो पूरा अपडेट न हो पाने के लिए true. बूलियन false नहीं.

जवाब

results कलेक्शन, जिसमें इंसर्ट करने की कार्रवाई के नतीजे शामिल हैं.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
प्रॉपर्टी ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
results[*].id नए रिकॉर्ड के लिए sObject आईडी जनरेट किया गया. String कोई नहीं. हां.
नतीजे[*].सफलता true, अगर वह रिकॉर्ड शामिल हो गया. बूलियन कोई नहीं. हां.
नतीजे[*].गड़बड़ियां स्क्रिप्ट चलाने के दौरान मिलने वाली गड़बड़ियों की संख्या. Array कोई नहीं. हां.

अपडेट करो

Salesforce के रिकॉर्ड अपडेट करें.

सिंटैक्स

<Action>update</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "records": [ records-to-update ],
  "allOrNone": true | false
}]]></Input>

उदाहरण

<Action>update</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "records":[
    { 
      "id":"0011U00000LQ76KQAT",
      "Name": "MyNewAccountName" 
    }
  ],
  "allOrNone": true
}]]></Input>

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
ऑब्जेक्ट अपडेट किए जाने वाले रिकॉर्ड का sObject type. String कोई नहीं. हां.
रिकॉर्ड JSON में sObject रिकॉर्ड का कलेक्शन. अपडेट किए जाने वाले हर रिकॉर्ड में, रिकॉर्ड के आईडी की वैल्यू शामिल होनी चाहिए. ज़्यादा से ज़्यादा: 1,000. Array कोई नहीं. हां.
allOrNone अगर अपडेट का कोई भी हिस्सा फ़ेल हो जाता है, तो पूरा अपडेट न हो पाने के लिए true. बूलियन false नहीं.

जवाब

results का कलेक्शन, जिसमें अपडेट के नतीजे शामिल हैं.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
results[*].id अपडेट किए गए रिकॉर्ड के लिए जनरेट किया गया sObject आईडी. String कोई नहीं. हां.
नतीजे[*].सफलता true, अगर वह रिकॉर्ड शामिल हो गया. बूलियन कोई नहीं. हां.
नतीजे[*].गड़बड़ियां स्क्रिप्ट चलाने के दौरान मिलने वाली गड़बड़ियों की संख्या. Array कोई नहीं. हां.

वापस लाओ

रिकॉर्ड को उनके आईडी के आधार पर sObjects के रूप में वापस पाएं. sObject टाइप के सभी फ़ील्ड दिखाता है.

सिंटैक्स

<Action>retrieve</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "ids":[ IDs-of-records-to-retrieve ]
}]]></Input>

उदाहरण

<Action>retrieve</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "ids":["0011U00000LQ76KQAT"]
}]]></Input>

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
ऑब्जेक्ट वापस पाने के लिए रिकॉर्ड का sObject type. String कोई नहीं. हां.
ids वापस पाने के लिए sObject ID रिकॉर्ड की कलेक्शन. ज़्यादा से ज़्यादा: 1,000. Array कोई नहीं. हां.
allOrNone अगर अनुरोध का कोई भी हिस्सा फ़ेल हो जाता है, तो पूरी कार्रवाई को true से पूरा नहीं किया जा सकेगा. बूलियन false नहीं.

जवाब

sObjects का records कलेक्शन, जिसे JSON के तौर पर दिखाया गया है. ध्यान दें कि JSON में ऑब्जेक्ट की सभी प्रॉपर्टी शामिल की जाती हैं, भले ही प्रॉपर्टी की वैल्यू शून्य हो.

{
  records: [
    { sobject-json },
    { sobject-json }
  ]
}

querySOQL

Salesforce ऑब्जेक्ट क्वेरी लैंग्वेज (SOQL) का इस्तेमाल करके Salesforce.com पर क्वेरी करें.

सिंटैक्स

<Action>querySOQL</Action>
<Input><![CDATA[{
  "soql": soql-query-statement
}]]></Input>

उदाहरण

<Action>querySOQL</Action>
<Input><![CDATA[{
  "soql": "SELECT Id, Name FROM Account"
}]]></Input>

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
Soql क्वेरी करने के लिए SOQL स्टेटमेंट. String कोई नहीं. हां.

जवाब

क्वेरी के नतीजे.

{
  totalSize: 2,
  records: [
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76KQAT',
      Name: 'AccountName1'
    },
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76LQAT',
      Name: 'AccountName2'
    }
  ],
  done: true
}
पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
totalSize क्वेरी से लौटाए गए रिकॉर्ड की संख्या. Integer कोई नहीं. हां.
रिकॉर्ड JSON में sObject के रूप में लौटाए गए रिकॉर्ड का कलेक्शन. ज़्यादा से ज़्यादा: 1,000. Array कोई नहीं. हां.
done अगर क्वेरी कार्रवाई पूरी हो गई है, तो true. बूलियन कोई नहीं. हां.

सूची

Salesforce.com के रिकॉर्ड की सूची बनाएं. दिए गए sObject प्रकार के सभी फ़ील्ड लौटाता है.

सिंटैक्स

<Action>list</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "limit": max-number-of-records,
  "offset": record-index-at-which-to-begin-response-set
}]]></Input>

उदाहरण

<Action>list</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "limit": 1000,
  "offset": 0
}]]></Input>

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
ऑब्जेक्ट सूची में रखे जाने वाले रिकॉर्ड का sObject type. String कोई नहीं. हां.
सीमा लौटाए जाने वाले रिकॉर्ड की ज़्यादा से ज़्यादा संख्या. Integer 1000 नहीं.
ऑफ़सेट रिकॉर्ड की सूची बनाने के लिए ऑफ़सेट. Integer 0 नहीं.

जवाब

records का कलेक्शन, जिसमें JSON के तौर पर लिस्ट किए गए sObject हैं.

{
  records: [
    { sobject-json },
    { sobject-json }
  ]
}

del

तय किए गए आईडी वाले रिकॉर्ड मिटाएं.

सिंटैक्स

<Action>del</Action>
<Input><![CDATA[{
  "sobject": records-sObject-type,
  "ids":[ IDs-of-records-to-retrieve ]
}]]></Input>

उदाहरण

<Action>del</Action>
<Input><![CDATA[{
  "sobject": "Account",
  "ids":["0011U00000LQ76KQAT"]
}]]></Input>

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
ऑब्जेक्ट मिटाए जाने वाले रिकॉर्ड का sObject type. String कोई नहीं. हां.
ids रिकॉर्ड मिटाने के लिए sObject ID की रेंज. ज़्यादा से ज़्यादा: 1,000. Array कोई नहीं. हां.

जवाब

results की कलेक्शन, जिसमें कार्रवाई के नतीजे शामिल हैं.

{
  results:[
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
प्रॉपर्टी ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
results[*].id दिए गए रिकॉर्ड का sObject ID. String कोई नहीं. हां.
नतीजे[*].सफलता अगर रिकॉर्ड के लिए कार्रवाई सफल रही, तो true. बूलियन कोई नहीं. हां.
नतीजे[*].गड़बड़ियां स्क्रिप्ट चलाने के दौरान मिलने वाली गड़बड़ियों की संख्या. Array कोई नहीं. हां.

getAccessToken

Salesforce.com एपीआई ऐक्सेस टोकन पाएं. इसका इस्तेमाल REST API से क्वेरी करने के लिए किया जा सकता है.

सिंटैक्स

<Action>getAccessToken</Action>
<Input><![CDATA[{}]]></Input>

अनुरोध के पैरामीटर

कोई नहीं.

जवाब

JSON में ऐक्सेस टोकन.

{
  "accessToken":"00D1U0000014m3hqswvoM22I5GTw9EJrztlZ8eSSka88Q",
  "scope":"api",
  "instanceUrl": "https://na85.salesforce.com",
  "id": "https://login.salesforce.com/id/00D1U0004564mutUAA/0051U43214qecVQAQ",
  "tokenType": "Bearer"
}
प्रॉपर्टी ब्यौरा Type डिफ़ॉल्ट ज़रूरी है
accessToken ऐक्सेस टोकन. String कोई नहीं. हां.
दायरा वे स्कोप जिनके तहत टोकन से ऐक्सेस मिलता है. String कोई नहीं. हां.
instanceUrl Salesforce संगठन में इस्तेमाल किए गए इंस्टेंस का यूआरएल. String कोई नहीं. हां.
id कनेक्ट किए गए ऐप्लिकेशन का आईडी. String कोई नहीं. हां.
tokenType ऐक्सेस टोकन के लिए टाइप करें. String धारक हां.

कॉन्फ़िगरेशन का रेफ़रंस

इस एक्सटेंशन को एपीआई प्रॉक्सी में इस्तेमाल करने के लिए, कॉन्फ़िगर और डिप्लॉय करते समय, इनका इस्तेमाल करें.

सामान्य एक्सटेंशन प्रॉपर्टी

हर प्रॉपर्टी के लिए नीचे दी गई प्रॉपर्टी मौजूद हैं.

प्रॉपर्टी जानकारी डिफ़ॉल्ट ज़रूरी है
name वह नाम, जिसे आप एक्सटेंशन का यह कॉन्फ़िगरेशन दे रहे हैं. कभी नहीं हां
packageName एक्सटेंशन पैकेज का नाम, जो Apigee Edge से दिया गया है. कभी नहीं हां
version उस एक्सटेंशन पैकेज का वर्शन नंबर जिससे आपको एक्सटेंशन कॉन्फ़िगर करना है. कभी नहीं हां
configuration आप जिस एक्सटेंशन को जोड़ रहे हैं उसके लिए खास तौर पर कॉन्फ़िगरेशन वैल्यू. इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी देखें कभी नहीं हां

इस एक्सटेंशन पैकेज की प्रॉपर्टी

इस एक्सटेंशन के लिए खास तौर पर, यहां दी गई कॉन्फ़िगरेशन प्रॉपर्टी की वैल्यू तय करें.

प्रॉपर्टी ब्यौरा डिफ़ॉल्ट ज़रूरी है
अनुमति देने वाले सर्वर का यूआरएल Salesforce से अनुमति पाने के लिए इस्तेमाल किया जाने वाला यूआरएल. आम तौर पर, यह https://login.salesforce.com होता है कोई नहीं. हां.
कनेक्ट किए गए ऐप्लिकेशन की उपभोक्ता कुंजी कनेक्ट किए गए ऐप्लिकेशन के लिए, Salesforce से मिली उपभोक्ता कुंजी. अपनी उपभोक्ता कुंजी को वापस पाने के लिए ज़रूरी शर्तें में दिए गए निर्देश देखें. कोई नहीं. हां.
क्रेडेंशियल जब इसे Apigee Edge कंसोल में डाला जाता है, तो यह Salesforce.key की उस फ़ाइल का कॉन्टेंट होता है जिसे आपने ऊपर दिए गए चरणों में जनरेट किया था. मैनेजमेंट एपीआई से भेजे जाने पर, यह base64 कोड में बदली गई वैल्यू है. इसे salesforce.key से जनरेट किया गया है. कोई नहीं. हां.
Salesforce उपयोगकर्ता का उपयोगकर्ता नाम कनेक्ट किए गए उस ऐप्लिकेशन से जुड़ा उपयोगकर्ता नाम जिसे आपने बनाया है. Salesforce एक्सटेंशन, इसका इस्तेमाल Salesforce से अनुमति पाने के लिए करेगा. कोई नहीं. हां.