Salesforce एक्सटेंशन

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

वर्शन: 1.0.5

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

{
  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 टाइप. स्ट्रिंग कोई नहीं. हां.
आईडी मिटाए जाने वाले रिकॉर्ड के 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 एपीआई का ऐक्सेस टोकन पाएं. इसका इस्तेमाल, 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 console में डालने पर, यह उस salesforce.key फ़ाइल का कॉन्टेंट होता है जिसे आपने ऊपर दिए गए चरणों में जनरेट किया था. मैनेजमेंट एपीआई के ज़रिए भेजे जाने पर, यह salesforce.key फ़ाइल से जनरेट की गई, base64 कोड में बदली गई वैल्यू होती है. कोई नहीं. हां.
Salesforce उपयोगकर्ता का उपयोगकर्ता नाम आपके बनाए गए कनेक्ट किए गए ऐप्लिकेशन से जुड़ा उपयोगकर्ता नाम. Salesforce एक्सटेंशन, Salesforce से अनुमति पाने के लिए इसका इस्तेमाल करेगा. कोई नहीं. हां.