Salesforce एक्सटेंशन

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

वर्शन: 2.0.2

आपके Salesforce खाते में मौजूद डेटा को ऐक्सेस करना. डेटा को इंसर्ट, अपडेट, वापस पाने, और क्वेरी करने की सुविधा.

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

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

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

  1. RSA 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. API (OAuth सेटिंग चालू करें) में जाकर, OAuth सेटिंग चालू करें चेकबॉक्स को चुनें.
  7. हालांकि, इसका इस्तेमाल एक्सटेंशन नहीं करता है, लेकिन कॉलबैक यूआरएल डालें. http://localhost/ या किसी अन्य प्लेसहोल्डर होस्ट का इस्तेमाल किया जा सकता है.
  8. डिजिटल हस्ताक्षर इस्तेमाल करें चेकबॉक्स चुनें.
  9. डिजिटल हस्ताक्षर इस्तेमाल करें में जाकर, फ़ाइल चुनें पर क्लिक करें. इसके बाद, पहले जनरेट किया गया salesforce.crt ढूंढें और उसे अपलोड करें.
  10. चुने गए OAuth के दायरे सेक्शन में, इन्हें जोड़ें, ताकि ये चुने गए OAuth के दायरे में शामिल हो जाएं:
    • अपना डेटा ऐक्सेस और मैनेज करना (एपीआई)
    • किसी भी समय आपकी ओर से अनुरोध पूरे करना (refresh_token, offline_access)
  11. सेव करें पर क्लिक करें. अगर कोई गड़बड़ी है, तो आपको salesforce.crt फ़ाइल को फिर से जनरेट करके अपलोड करना पड़ सकता है.
  12. इसके बाद, ऐप्लिकेशन के पेज पर मैनेज करें पर क्लिक करें.
  13. आपने जिस ऐप्लिकेशन को अभी बनाया है उसके App Manager पेज पर, नीतियों में बदलाव करें पर क्लिक करें.
  14. OAuth की नीतियां में जाकर, अनुमति वाले उपयोगकर्ता ड्रॉप-डाउन पर क्लिक करें. इसके बाद, एडमिन से मंज़ूरी पा चुके उपयोगकर्ताओं को पहले से अनुमति मिली हुई है पर क्लिक करें.
  15. सेव करें पर क्लिक करें.
  16. ऐप्लिकेशन पेज पर वापस जाएं. इसके बाद, प्रोफ़ाइलें में जाकर, प्रोफ़ाइलें मैनेज करें पर क्लिक करें.
  17. ऐप्लिकेशन प्रोफ़ाइल असाइनमेंट पेज पर, उन उपयोगकर्ता प्रोफ़ाइलों के लिए चेक बॉक्स चुनें जो इस ऐप्लिकेशन का इस्तेमाल कर सकती हैं.

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

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

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

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

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

कार्रवाइयां

इंसर्ट करें

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

सिंटैक्स

<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>

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

पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
sobject उन रिकॉर्ड का sObject टाइप जिन्हें शामिल करना है. स्ट्रिंग कोई नहीं. हां.
रिकॉर्ड JSON में sObject रिकॉर्ड की ऐरे. ज़्यादा से ज़्यादा: 1,000. Array कोई नहीं. हां.
allOrNone true का इस्तेमाल करके, अपडेट के किसी भी हिस्से के पूरा न होने पर पूरे अपडेट को फ़ेल किया जा सकता है. बूलियन गलत नहीं.

जवाब

यह एक results कैटगरी है. इसमें इंसर्ट ऑपरेशन के नतीजे शामिल होते हैं.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
प्रॉपर्टी ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
results[*].id नए रिकॉर्ड के लिए जनरेट किया गया sObject आईडी. स्ट्रिंग कोई नहीं. हां.
results[*].success true अगर रिकॉर्ड डाला जा सका, तो. बूलियन कोई नहीं. हां.
results[*].errors अगर कोई गड़बड़ी होती है, तो उसे इस कलेक्शन में शामिल किया जाता है. 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>

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

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

जवाब

अपडेट से मिले नतीजों वाला results अरे.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
results[*].id अपडेट किए गए रिकॉर्ड के लिए जनरेट किया गया sObject आईडी. स्ट्रिंग कोई नहीं. हां.
results[*].success true अगर रिकॉर्ड डाला जा सका, तो. बूलियन कोई नहीं. हां.
results[*].errors अगर कोई गड़बड़ी होती है, तो उसे इस कलेक्शन में शामिल किया जाता है. 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>

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

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

जवाब

JSON के तौर पर दिखाए गए sObjects का records कलेक्शन. ध्यान दें कि ऑब्जेक्ट की सभी प्रॉपर्टी को 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>

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

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

जवाब

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

{
  totalSize: 2,
  records: [
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76KQAT',
      Name: 'AccountName1'
    },
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76LQAT',
      Name: 'AccountName2'
    }
  ],
  done: true
}
पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
totalSize क्वेरी से मिले रिकॉर्ड की संख्या. पूर्णांक कोई नहीं. हां.
रिकॉर्ड JSON में sObjects के तौर पर दिखाए गए रिकॉर्ड की ऐरे. ज़्यादा से ज़्यादा: 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>

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

पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
sobject सूची में शामिल किए जाने वाले रिकॉर्ड का sObject टाइप. स्ट्रिंग कोई नहीं. हां.
सीमा ज़्यादा से ज़्यादा इतने रिकॉर्ड दिखाए जा सकते हैं. पूर्णांक 1000 नहीं.
ऑफ़सेट सूची में शामिल किए जाने वाले रिकॉर्ड के लिए ऑफ़सेट. पूर्णांक 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>

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

पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
sobject मिटाए जाने वाले रिकॉर्ड का sObject टाइप. स्ट्रिंग कोई नहीं. हां.
ids मिटाए जाने वाले रिकॉर्ड के लिए sObject आईडी का कलेक्शन. ज़्यादा से ज़्यादा: 1,000. Array कोई नहीं. हां.

जवाब

कार्रवाई के नतीजों वाली results कैटगरी.

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

getAccessToken

Salesforce.com API का ऐक्सेस टोकन पाएं. इसका इस्तेमाल 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"
}
प्रॉपर्टी ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
accessToken ऐक्सेस टोकन. स्ट्रिंग कोई नहीं. हां.
दायरा वे स्कोप जिनके लिए टोकन ऐक्सेस देता है. स्ट्रिंग कोई नहीं. हां.
instanceUrl Salesforce संगठन की ओर से इस्तेमाल किए गए इंस्टेंस का यूआरएल. स्ट्रिंग कोई नहीं. हां.
आईडी कनेक्ट किए गए ऐप्लिकेशन का आईडी. स्ट्रिंग कोई नहीं. हां.
tokenType ऐक्सेस टोकन का टाइप. स्ट्रिंग धारक हां.

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

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

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

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

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

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

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

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