תוסף Salesforce

אתם צופים במסמכי התיעוד של Apigee Edge.
אפשר לעבור אל מסמכי התיעוד של Apigee X.
מידע

גרסה: 2.0.2

גישה לנתונים בחשבון Salesforce. הוספה, עדכון, אחזור ושאילתות של נתונים.

התוכן הזה מספק הפניה להגדרת התוסף הזה ולשימוש בו.

דרישות מוקדמות

התוכן הזה מספק הפניה להגדרת התוסף הזה ולשימוש בו. לפני שמשתמשים בתוסף משרת proxy של API באמצעות מדיניות 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, בחלונית הניווט הימנית, עוברים אל Apps > App Manager (אפליקציות > מנהל האפליקציות).
    2. ברשימה, מוצאים את האפליקציה המקושרת שיצרתם.
    3. בתפריט הנפתח שמשמאל בשורה של האפליקציה, לוחצים על הצגה.
    4. בקטע API (Enable OAuth Settings) (ממשק API (הפעלת הגדרות OAuth)), מאתרים את Consumer Key (מפתח צרכן), מעתיקים את הערך שלו למקום בטוח לשימוש כשמגדירים את התוסף.

הגדרת אפליקציה מחוברת לגישה של התוסף

כדי שהתוסף של Salesforce יוכל לגשת ל-Salesforce, צריך ליצור אפליקציה מקושרת של Salesforce שדרכה התוסף יוכל להתחבר ל-Salesforce.

ב-Salesforce, אפליקציה מקושרת מאפשרת לאפליקציות חיצוניות להתחבר ל-Salesforce באמצעות ממשקי API.

כדי להגדיר אפליקציה מקושרת

  1. נכנסים לחשבון Salesforce.
  2. לוחצים על סמל גלגל השיניים בפינה השמאלית העליונה ואז על הגדרה.
  3. בחלונית הניווט הימנית, מרחיבים את האפשרויות אפליקציות > המרכז לניהול אפליקציות.
  4. בדף המרכז לניהול אפליקציות, לוחצים על אפליקציה מקושרת חדשה.
  5. בקטע מידע בסיסי, ממלאים את שדות החובה. הערכים האלה הם לצרכים של ניהול חשבונות, והתוסף לא משתמש בהם.
  6. בקטע API (Enable OAuth Settings) (ממשק API (הפעלת הגדרות OAuth)), מסמנים את תיבת הסימון Enable OAuth Settings (הפעלת הגדרות OAuth).
  7. מזינים כתובת URL לקריאה חוזרת (callback), למרות שהתוסף לא משתמש בה. אפשר להשתמש ב-http://localhost/ או במארח אחר של placeholder.
  8. מסמנים את תיבת הסימון שימוש בחתימות דיגיטליות.
  9. בקטע Use digital signatures (שימוש בחתימות דיגיטליות), לוחצים על Choose File (בחירת קובץ) כדי לאתר ולהעלות את salesforce.crt שיצרתם קודם.
  10. בקטע Selected OAuth Scopes (היקפי הרשאות נבחרים של OAuth), מוסיפים את ההיקפים הבאים כדי שיופיעו בקטע Selected OAuth Scopes:
    • גישה לנתונים וניהול שלהם (API)
    • ביצוע בקשות בשמכם בכל שלב (refresh_token, offline_access)
  11. לוחצים על שמירה. אם יש שגיאות, יכול להיות שתצטרכו ליצור מחדש את קובץ salesforce.crt ולהעלות אותו.
  12. בדף האפליקציה שמופיע, לוחצים על ניהול.
  13. בדף 'ניהול אפליקציות' של האפליקציה שיצרתם, לוחצים על עריכת מדיניות.
  14. בקטע מדיניות OAuth, לוחצים על התפריט הנפתח משתמשים מורשים ואז על משתמשים שאושרו על ידי האדמין מורשים מראש.
  15. לוחצים על שמירה.
  16. חוזרים לדף האפליקציה, ובקטע פרופילים לוחצים על ניהול פרופילים.
  17. בדף הקצאת פרופיל לאפליקציה, מסמנים את התיבות של פרופילי המשתמשים שיכולים להשתמש באפליקציה הזו.

    חשוב לבחור פרופיל שמתאים למשתמש ששם המשתמש שלו ישמש להגדרת התוסף. כמו כן, צריך לוודא שלפחות למשתמשים עם הרשאת אדמין יש גישה לאפליקציה הזו.

    אפשר לראות את הגדרות הפרופיל של המשתמש ב-Salesforce. באזור הגדרה, מרחיבים את האפשרות משתמשים > משתמשים, מאתרים את המשתמש שהתוסף ייצג ואז מאתרים את הפרופיל שלו בעמודה פרופיל.

  18. לוחצים על שמירה.

מידע על Salesforce

Salesforce היא פלטפורמה לניהול קשרי לקוחות (CRM). מערכת לניהול קשרי לקוחות (CRM) עוזרת לחברות להבין את הצרכים של הלקוחות ולפתור בעיות באמצעות ניהול טוב יותר של מידע ואינטראקציות עם לקוחות – והכול בפלטפורמה אחת שתמיד נגישה מכל מחשב או מכשיר.

פעולות

insert

הוספת רשומות כסוגי 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 של הרשומות שרוצים להוסיף. מחרוזת ללא. כן.
רשומות מערך של רשומות sObject ב-JSON. מקסימום: 1,000. מערך ללא. כן.
allOrNone true כדי שהעדכון כולו ייכשל אם חלק כלשהו בעדכון ייכשל. בוליאני false לא.

תשובה

מערך results עם תוצאות מפעולת ההוספה.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
נכס תיאור סוג ברירת מחדל חובה
results[*].id מזהה ה-sObject שנוצר לרשומה החדשה. מחרוזת ללא. כן.
results[*].success true אם הוספת הרשומה הצליחה. בוליאני ללא. כן.
results[*].errors מערך של שגיאות, אם יש כאלה, שזוהו במהלך הביצוע. מערך ללא. כן.

עדכון

עדכון רשומות ב-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 של הרשומות לעדכון. מחרוזת ללא. כן.
רשומות מערך של רשומות sObject ב-JSON. כל רשומה שרוצים לעדכן צריכה לכלול את ערך המזהה של הרשומה. מקסימום: 1,000. מערך ללא. כן.
allOrNone true כדי שהעדכון כולו ייכשל אם חלק כלשהו בעדכון ייכשל. בוליאני false לא.

תשובה

מערך results שמכיל את התוצאות מהעדכון.

{
  results: [
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
פרמטר תיאור סוג ברירת מחדל חובה
results[*].id מזהה ה-sObject שנוצר לרשומה המעודכנת. מחרוזת ללא. כן.
results[*].success true אם הוספת הרשומה הצליחה. בוליאני ללא. כן.
results[*].errors מערך של שגיאות, אם יש כאלה, שזוהו במהלך הביצוע. מערך ללא. כן.

אחזור

אחזור רשומות כאובייקטים מסוג 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 סוג אובייקט s של הרשומות לאחזור. מחרוזת ללא. כן.
מזהים מערך של מזהי sObject של רשומות לאחזור. מקסימום: 1,000. מערך ללא. כן.
allOrNone true אם חלק כלשהו מהבקשה נכשל, הפעולה כולה נכשלת. בוליאני false לא.

תשובה

records מערך של אובייקטים מסוג sObject שמיוצגים כ-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 מספר הרשומות שהוחזרו על ידי השאילתה. מספר שלם ללא. כן.
רשומות מערך של רשומות שהוחזרו כאובייקטים מסוג sObject ב-JSON. מקסימום: 1,000. מערך ללא. כן.
סיום true אם פעולת השאילתה הסתיימה. בוליאני ללא. כן.

list

רשימת רשומות 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 שמכיל אובייקטים של sObject שמופיעים ברשימה כ-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 סוג אובייקט s של הרשומות שרוצים למחוק. מחרוזת ללא. כן.
מזהים מערך של מזהי sObject של רשומות למחיקה. מקסימום: 1,000. מערך ללא. כן.

תשובה

מערך results שמכיל את תוצאות הפעולה.

{
  results:[
    { id: '0011U00000LQ76KQAT', success: true, errors: [] },
    { id: '0011U00000LQ76LQAT', success: true, errors: [] }
  ]
}
נכס תיאור סוג ברירת מחדל חובה
results[*].id מזהה sObject של הרשומה שצוינה. מחרוזת ללא. כן.
results[*].success true אם הפעולה הצליחה עבור הרשומה. בוליאני ללא. כן.
results[*].errors מערך של שגיאות, אם יש כאלה, שזוהו במהלך הביצוע. מערך ללא. כן.

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. מחרוזת ללא. כן.
id [מזהה] המזהה של האפליקציה המקושרת. מחרוזת ללא. כן.
tokenType הסוג של טוקן הגישה. מחרוזת פרמטרים לרשת כן.

הסבר על ההגדרות

כשמגדירים ופורסים את התוסף הזה לשימוש בשרתי proxy ל-API, צריך להשתמש בפרטים הבאים.

מאפיינים נפוצים של תוספים

המאפיינים הבאים קיימים בכל תוסף.

נכס תיאור ברירת המחדל נדרש
name השם שבחרת לתצורה הזו של התוסף. ללא כן
packageName השם של חבילת התוסף כפי שהוא סופק על ידי Apigee Edge. ללא כן
version מספר הגרסה של חבילת התוסף שממנה מגדירים את התוסף. ללא כן
configuration ערך הגדרה ספציפי לתוסף שרוצים להוסיף. מאפיינים לחבילת תוספים זו ללא כן

מאפיינים של חבילת התוספים הזו

מזינים ערכים למאפייני ההגדרה הבאים שספציפיים לתוסף הזה.

נכס תיאור ברירת מחדל חובה
כתובת ה-URL של שרת ההרשאות כתובת האתר שבה משתמשים כשמקבלים הרשאה מ-Salesforce. בדרך כלל זה הנתיב https://login.salesforce.com ללא. כן.
טוקן צרכן של אפליקציה מחוברת מפתח הצרכן שסופק על ידי Salesforce לאפליקציה המקושרת שיצרתם. הוראות לאחזור אסימון הצרכן מופיעות בקטע תנאים מוקדמים. ללא. כן.
פרטי כניסה כשמזינים את התוכן הזה במסוף Apigee Edge, זה התוכן של הקובץ salesforce.key שיצרתם בשלבים. כששולחים אותו באמצעות Management API, זהו ערך בקידוד Base64 שנוצר מקובץ salesforce.key. ללא. כן.
שם המשתמש של המשתמש ב-Salesforce שם המשתמש שמשויך לאפליקציה המקושרת שיצרתם. התוסף של Salesforce ישתמש בזה כדי לקבל הרשאה מ-Salesforce. ללא. כן.