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

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

نسخه: 1.0.3

به داده های موجود در حساب 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. از منوی کشویی سمت راست در ردیف برنامه، روی View کلیک کنید.
    4. در زیر API (فعال کردن تنظیمات OAuth) ، کلید مصرف کننده را پیدا کنید و مقدار آن را در مکانی امن برای استفاده در هنگام پیکربندی برنامه افزودنی کپی کنید.

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

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

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

برای راه اندازی یک برنامه متصل

  1. وارد Salesforce شوید.
  2. روی نماد چرخ دنده در سمت راست بالا کلیک کنید، سپس روی Setup کلیک کنید.
  3. در پیمایش سمت چپ، Apps > App Manager را گسترش دهید.
  4. در صفحه مدیر برنامه ، روی New Connected App کلیک کنید.
  5. در قسمت اطلاعات اولیه ، فیلدهای لازم را پر کنید. مقادیر برای حسابداری هستند. آنها توسط افزونه استفاده نمی شوند.
  6. در زیر API (فعال کردن تنظیمات OAuth) ، کادر فعال کردن تنظیمات OAuth را انتخاب کنید.
  7. اگرچه توسط برنامه افزودنی استفاده نمی شود، یک URL بازگشت به تماس وارد کنید. می‌توانید http://localhost/ یا یک میزبان مکان‌دار دیگر استفاده کنید.
  8. تیک گزینه Use Digital Signatures را انتخاب کنید.
  9. در زیر استفاده از امضای دیجیتال ، روی Choose File کلیک کنید تا salesforce.crt را که قبلاً ایجاد کرده‌اید پیدا کرده و آپلود کنید.
  10. در بخش Selected OAuth Scopes ، موارد زیر را اضافه کنید تا در قسمت Selected OAuth Scopes قرار گیرند:
    • دسترسی و مدیریت داده های خود (api)
    • در هر زمان درخواست‌ها را از طرف شما انجام دهید (refresh_token، offline_access)
  11. روی ذخیره کلیک کنید. در صورت وجود هر گونه خطا، ممکن است لازم باشد فایل salesforce.crt را دوباره تولید و آپلود کنید.
  12. در صفحه برنامه ایجاد شده، روی مدیریت کلیک کنید.
  13. در صفحه مدیر برنامه برای برنامه‌ای که به تازگی ایجاد کرده‌اید، روی ویرایش خط‌مشی‌ها کلیک کنید.
  14. در زیر خط‌مشی‌های OAuth ، روی منوی کرکره‌ای Permitted Users کلیک کنید، سپس روی کاربران تایید شده توسط Admin از پیش مجاز هستند کلیک کنید.
  15. روی ذخیره کلیک کنید.
  16. برگردید به صفحه برنامه، در قسمت نمایه‌ها ، روی مدیریت نمایه‌ها کلیک کنید.
  17. در صفحه Application Profile Assignment ، چک باکس های پروفایل های کاربری را که می توانند از این برنامه استفاده کنند، انتخاب کنید.

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

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

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

درباره Salesforce

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

پاسخ

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

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

به روز رسانی کنید

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

نحو

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

پاسخ

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

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

بازیابی

رکوردها را به عنوان sObject با شناسه آنها بازیابی کنید. تمام فیلدهای نوع 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 ID برای بازیابی. حداکثر: 1000. آرایه هیچ کدام. بله
همه یا هیچ true تا در صورت عدم موفقیت در هر بخشی از درخواست، کل عملیات با شکست مواجه شود. بولی نادرست خیر

پاسخ

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

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

querySOQL

Salesforce.com را با استفاده از Salesforce Object Query Language (SOQL) جستجو کنید.

نحو

<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 تعداد رکوردهای برگشتی توسط پرس و جو. عدد صحیح هیچ کدام. بله
سوابق آرایه ای از رکوردهای برگشتی به عنوان sObjects در JSON. حداکثر: 1000. آرایه هیچ کدام. بله
انجام شد 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 رکوردهایی که باید فهرست شوند. رشته هیچ کدام. بله
محدود کردن حداکثر تعداد رکورد برای بازگشت. عدد صحیح 1000 خیر
جبران آفست برای رکوردهای فهرست. عدد صحیح 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 رکوردهایی که باید حذف شوند. رشته هیچ کدام. بله
شناسه آرایه ای از شناسه های sObject برای حذف رکوردها. حداکثر: 1000. آرایه هیچ کدام. بله

پاسخ

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

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

getAccessToken

رمز دسترسی Salesforce.com API را دریافت کنید. می تواند برای پرس و جو از 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 نشانه دسترسی رشته هیچ کدام. بله
دامنه محدوده هایی که توکن در آن دسترسی را فراهم می کند. رشته هیچ کدام. بله
instanceUrl URL برای نمونه مورد استفاده توسط سازمان Salesforce. رشته هیچ کدام. بله
شناسه شناسه برنامه متصل رشته هیچ کدام. بله
tokenType برای نشانه دسترسی تایپ کنید. رشته حامل بله

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

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

ویژگی های رایج پسوند

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

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

ویژگی های این بسته افزونه

مقادیری را برای خصوصیات پیکربندی زیر مخصوص این افزونه مشخص کنید.

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