برنامه افزودنی Salesforce, Extension Salesforce

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

نسخه: ۲.۰.۲

به داده‌های حساب Salesforce خود دسترسی داشته باشید. داده‌ها را وارد، به‌روزرسانی، بازیابی و جستجو کنید.

این محتوا مرجعی برای پیکربندی و استفاده از این افزونه ارائه می‌دهد.

پیش‌نیازها

این محتوا مرجعی برای پیکربندی و استفاده از این افزونه ارائه می‌دهد. قبل از استفاده از افزونه از یک پروکسی API با استفاده از خط‌مشی ExtensionCallout ، باید:

  1. یک کلید خصوصی یا جفت گواهی RSA x509 ایجاد کنید.

    هنگام پیکربندی افزونه، از کلید خصوصی (.key) به عنوان اعتبارنامه استفاده خواهید کرد. هنگام ایجاد یک برنامه متصل که به افزونه امکان دسترسی به Salesforce را می‌دهد، از فایل گواهی (.crt) استفاده خواهید کرد.

    openssl req -x509 -sha256 -nodes -days 36500 -newkey rsa:2048 -keyout salesforce.key -out salesforce.crt
    
    
  2. یک برنامه متصل تنظیم کنید.

    یک برنامه متصل به Salesforce دسترسی به افزونه Salesforce را فراهم می‌کند. برای تنظیم برنامه به دستورالعمل‌ها مراجعه کنید.

  3. کلید مصرف‌کننده را برای برنامه‌ی متصل دریافت کنید. افزونه هنگام احراز هویت با برنامه از این استفاده خواهد کرد.

    1. در تنظیمات Salesforce، در منوی سمت چپ، به Apps > App Manager بروید.
    2. در لیست، برنامه متصلی که ایجاد کرده‌اید را پیدا کنید.
    3. از منوی کشویی سمت راست در ردیف برنامه، روی «مشاهده» کلیک کنید.
    4. در قسمت API (فعال کردن تنظیمات OAuth) ، کلید مصرف‌کننده را پیدا کنید و مقدار آن را در مکانی امن کپی کنید تا هنگام پیکربندی افزونه از آن استفاده کنید.

یک برنامه متصل برای دسترسی توسط افزونه تنظیم کنید

قبل از اینکه افزونه Salesforce بتواند به Salesforce دسترسی پیدا کند، باید یک برنامه متصل به Salesforce ایجاد کنید که از طریق آن افزونه بتواند به Salesforce متصل شود.

در Salesforce، یک برنامه متصل، راهی برای برنامه‌های خارجی فراهم می‌کند تا از طریق APIها به Salesforce متصل شوند.

برای تنظیم یک برنامه متصل

  1. وارد Salesforce شوید.
  2. روی نماد چرخ دنده در بالا سمت راست کلیک کنید، سپس روی تنظیمات (Setup) کلیک کنید.
  3. در نوار ناوبری سمت چپ، Apps > App Manager را باز کنید.
  4. در صفحه مدیریت برنامه ، روی «برنامه متصل جدید» کلیک کنید.
  5. در قسمت اطلاعات پایه ، فیلدهای مورد نیاز را پر کنید. مقادیر برای حسابداری هستند؛ آنها توسط افزونه استفاده نمی‌شوند.
  6. در قسمت API (فعال کردن تنظیمات OAuth) ، کادر انتخاب Enable OAuth Settings را علامت بزنید.
  7. اگرچه توسط افزونه استفاده نمی‌شود، اما یک URL بازگشتی وارد کنید. می‌توانید http://localhost/ یا یک میزبان جایگزین دیگر استفاده کنید.
  8. کادر انتخاب « استفاده از امضاهای دیجیتال» را علامت بزنید.
  9. در قسمت «استفاده از امضاهای دیجیتال» ، روی «انتخاب فایل» کلیک کنید تا فایل salesforce.crt که قبلاً ایجاد کرده‌اید را پیدا کرده و آپلود کنید.
  10. در بخش Selected OAuth Scopes ، موارد زیر را اضافه کنید تا در زیر Selected OAuth Scopes قرار گیرند:
    • دسترسی و مدیریت داده‌های شما (API)
    • انجام درخواست‌ها از طرف شما در هر زمانی (refresh_token، offline_access)
  11. روی ذخیره کلیک کنید. در صورت وجود هرگونه خطا، ممکن است لازم باشد فایل salesforce.crt را دوباره ایجاد و آپلود کنید.
  12. در صفحه برنامه‌ای که ظاهر می‌شود، روی مدیریت کلیک کنید.
  13. در صفحه مدیریت برنامه برای برنامه‌ای که تازه ایجاد کرده‌اید، روی ویرایش سیاست‌ها کلیک کنید.
  14. در زیر سیاست‌های OAuth ، روی منوی کشویی Permitted Users کلیک کنید، سپس روی Admin approved users are pre-authorized کلیک کنید.
  15. روی ذخیره کلیک کنید.
  16. به صفحه برنامه برگردید، در قسمت پروفایل‌ها ، روی مدیریت پروفایل‌ها کلیک کنید.
  17. در صفحه اختصاص پروفایل برنامه ، کادرهای مربوط به پروفایل‌های کاربری که می‌توانند از این برنامه استفاده کنند را علامت بزنید.

    حتماً پروفایلی را انتخاب کنید که با نام کاربری که هنگام پیکربندی افزونه از آن استفاده خواهید کرد، مطابقت داشته باشد. همچنین مطمئن شوید که حداقل کاربران مدیر سیستم به این برنامه دسترسی دارند.

    شما می‌توانید تنظیمات پروفایل کاربر را در Salesforce مشاهده کنید. در قسمت تنظیمات ، Users > Users را باز کنید، کاربری را که افزونه نماینده آن خواهد بود پیدا کنید، سپس پروفایل او را در ستون Profile پیدا کنید.

  18. روی ذخیره کلیک کنید.

درباره سیلزفورس

Salesforce یک پلتفرم مدیریت ارتباط با مشتری (CRM) است. مدیریت ارتباط با مشتری به شرکت‌ها کمک می‌کند تا نیازهای مشتریان خود را درک کرده و با مدیریت بهتر اطلاعات و تعاملات مشتری، مشکلات را حل کنند - همه اینها در یک پلتفرم واحد که همیشه از هر دسکتاپ یا دستگاهی قابل دسترسی است.

اقدامات

درج

رکوردها را به عنوان انواع 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. حداکثر: ۱۰۰۰. آرایه هیچ کدام. بله.
همه یا هیچ کدام اگر هر بخشی از به‌روزرسانی با شکست مواجه شود، true به‌روزرسانی با شکست مواجه می‌شود. بولی نادرست خیر.

پاسخ

یک آرایه results با نتایج حاصل از عملیات درج.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
ملک توضیحات نوع پیش‌فرض مورد نیاز
نتایج[*].id شناسه sObject تولید شده برای رکورد جدید. رشته هیچ کدام. بله.
نتایج[*].موفقیت اگر درج آن رکورد موفقیت‌آمیز باشد، true . بولی هیچ کدام. بله.
نتایج[*].errors آرایه‌ای از خطاها، در صورت وجود، که در حین اجرا دریافت می‌شوند. آرایه هیچ کدام. بله.

به‌روزرسانی

به‌روزرسانی سوابق نیروی فروش.

نحو

<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. هر رکورد برای به‌روزرسانی باید شامل مقدار شناسه (ID) آن رکورد باشد. حداکثر: ۱۰۰۰. آرایه هیچ کدام. بله.
همه یا هیچ کدام اگر هر بخشی از به‌روزرسانی با شکست مواجه شود، true به‌روزرسانی با شکست مواجه می‌شود. بولی نادرست خیر.

پاسخ

یک آرایه results شامل نتایج حاصل از به‌روزرسانی.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
پارامتر توضیحات نوع پیش‌فرض مورد نیاز
نتایج[*].id شناسه sObject تولید شده برای رکورد به‌روزرسانی‌شده. رشته هیچ کدام. بله.
نتایج[*].موفقیت اگر درج آن رکورد موفقیت‌آمیز باشد، true . بولی هیچ کدام. بله.
نتایج[*].errors آرایه‌ای از خطاها، در صورت وجود، که در حین اجرا دریافت می‌شوند. آرایه هیچ کدام. بله.

بازیابی

رکوردها را به عنوان sObjects بر اساس شناسه (ID) آنها بازیابی می‌کند. تمام فیلدهای از نوع 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) برای بازیابی. حداکثر: ۱۰۰۰. آرایه هیچ کدام. بله.
همه یا هیچ کدام اگر هر بخشی از درخواست با شکست مواجه شود، کل عملیات با شکست true می‌شود. بولی نادرست خیر.

پاسخ

آرایه‌ای از records sObjects که به صورت JSON نمایش داده می‌شوند. توجه داشته باشید که تمام ویژگی‌های اشیاء در JSON گنجانده شده‌اند، حتی اگر مقدار ویژگی تهی باشد.

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

پرس‌وجوی SOQL

با استفاده از زبان پرس و جوی شیءگرای 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 برای پرس و جو. رشته هیچ کدام. بله.

پاسخ

نتایج پرس و جو.

{
  totalSize: 2,
  records: [
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76KQAT',
      Name: 'AccountName1'
    },
    {
      attributes: { attributes-of-record },
      Id: '0011U00000LQ76LQAT',
      Name: 'AccountName2'
    }
  ],
  done: true
}
پارامتر توضیحات نوع پیش‌فرض مورد نیاز
اندازه کل تعداد رکوردهای برگردانده شده توسط پرس و جو. عدد صحیح هیچ کدام. بله.
سوابق آرایه‌ای از رکوردهای برگشتی به صورت sObjects در JSON. حداکثر: ۱۰۰۰. آرایه هیچ کدام. بله.
انجام شده اگر عملیات پرس‌وجو کامل شده باشد، 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 رکوردهایی که قرار است لیست شوند. رشته هیچ کدام. بله.
حد حداکثر تعداد رکوردهایی که باید برگردانده شوند. عدد صحیح ۱۰۰۰ خیر.
جبران جبران برای رکوردهای لیست شده. عدد صحیح 0 خیر.

پاسخ

یک آرایه records حاوی sObject های لیست شده به صورت JSON.

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

دل

حذف رکوردها با شناسه‌های مشخص شده.

نحو

<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 رکوردهایی که قرار است حذف شوند. رشته هیچ کدام. بله.
شناسه‌ها آرایه‌ای از شناسه‌های شیء برای حذف رکوردها. حداکثر: ۱۰۰۰. آرایه هیچ کدام. بله.

پاسخ

یک آرایه results شامل نتایج عملیات.

{
  results:[
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
ملک توضیحات نوع پیش‌فرض مورد نیاز
نتایج[*].id شناسه شیء رکورد مشخص شده. رشته هیچ کدام. بله.
نتایج[*].موفقیت اگر عملیات برای رکورد موفقیت‌آمیز باشد، true . بولی هیچ کدام. بله.
نتایج[*].errors آرایه‌ای از خطاها، در صورت وجود، که در حین اجرا دریافت می‌شوند. آرایه هیچ کدام. بله.

دریافت توکن دسترسی

دریافت توکن دسترسی API Salesforce.com. می‌تواند برای پرس‌وجو از APIهای REST استفاده شود.

نحو

<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 نشانه دسترسی. رشته هیچ کدام. بله.
محدوده محدوده‌هایی که توکن در آنها دسترسی فراهم می‌کند. رشته هیچ کدام. بله.
آدرس نمونه نشانی اینترنتی (URL) برای نمونه‌ای که توسط سازمان Salesforce استفاده می‌شود. رشته هیچ کدام. بله.
شناسه شناسه برنامه متصل شده. رشته هیچ کدام. بله.
نوع توکن برای توکن دسترسی تایپ کنید. رشته حامل بله.

مرجع پیکربندی

هنگام پیکربندی و استقرار این افزونه برای استفاده در پروکسی‌های API، از موارد زیر استفاده کنید.

ویژگی‌های افزونه‌های رایج

ویژگی های زیر برای هر افزونه وجود دارد.

ویژگی شرح پیش فرض ضروری
name نامی که به این پیکربندی افزونه می‌دهید. هیچ یک آره
packageName نام بسته افزودنی همانطور که توسط Apigee Edge داده شده است. هیچ یک آره
version شماره نسخه بسته برنامه افزودنی که از آن یک برنامه افزودنی را پیکربندی می کنید. هیچ یک آره
configuration مقدار پیکربندی مخصوص افزونه ای که اضافه می کنید. به ویژگی های این بسته برنامه افزودنی مراجعه کنید هیچ یک آره

ویژگی‌های این بسته الحاقی

مقادیر مربوط به ویژگی‌های پیکربندی زیر را که مختص این افزونه هستند، مشخص کنید.

ملک توضیحات پیش‌فرض مورد نیاز
آدرس اینترنتی سرور احراز هویت آدرس اینترنتی (URL) مورد استفاده هنگام دریافت مجوز از Salesforce. معمولاً این https://login.salesforce.com است. هیچ کدام. بله.
کلید مصرف‌کننده برنامه متصل کلید مصرف‌کننده ارائه شده توسط Salesforce برای برنامه متصلی که ایجاد کرده‌اید. برای بازیابی کلید مصرف‌کننده خود، به دستورالعمل‌های زیر پیش‌نیازها مراجعه کنید. هیچ کدام. بله.
اعتبارنامه وقتی در کنسول Apigee Edge وارد می‌شود، این محتویات فایل salesforce.key است که در مراحل قبل ایجاد کرده‌اید. وقتی با استفاده از API مدیریت ارسال می‌شود، یک مقدار کدگذاری شده با base64 است که از فایل salesforce.key تولید شده است. هیچ کدام. بله.
نام کاربری کاربر Salesforce نام کاربری مرتبط با برنامه‌ی متصلی که ایجاد کرده‌اید . افزونه‌ی Salesforce از این برای دریافت مجوز از Salesforce استفاده خواهد کرد. هیچ کدام. بله.