תוסף Salesforce

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

גרסה: 1.0.5

לגשת לנתונים בחשבון 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), מאתרים את Consumer Key ומעתיקים את הערך שלו למקום בטוח לשימוש בזמן הגדרת התוסף.

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

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

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

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

  1. מתחברים ל-Salesforce.
  2. לוחצים על סמל גלגל השיניים בפינה השמאלית העליונה ואז על הגדרה.
  3. בתפריט הניווט הימני, מרחיבים את האפשרות אפליקציות > מנהל האפליקציות.
  4. בדף App Manager, לוחצים על New Connected App.
  5. בקטע מידע בסיסי, ממלאים את שדות החובה. הערכים מיועדים לצורכי חשבונאות, והתוסף לא משתמש בהם.
  6. בקטע API (Enable OAuth Settings), מסמנים את התיבה Enable OAuth Settings.
  7. למרות שהתוסף לא משתמש בה, מזינים כתובת URL לקריאה חוזרת (callback). אפשר להשתמש ב-http://localhost/ או במארח אחר של placeholder.
  8. מסמנים את התיבה שימוש בחתימות דיגיטליות.
  9. בקטע שימוש בחתימות דיגיטליות, לוחצים על בחירת קובץ כדי לאתר ולהעלות את הקובץ salesforce.crt שיצרתם מקודם.
  10. בקטע Selected OAuth Scopes, מוסיפים את ההרשאות הבאות כך שיופיעו בקטע Selected OAuth Scopes:
    • גישה לנתונים וניהול שלהם (API)
    • לבצע בקשות בשמכם בכל שלב (refresh_token, ‏ offline_access)
  11. לוחצים על שמירה. אם יש שגיאות, יכול להיות שתצטרכו ליצור מחדש את הקובץ salesforce.crt ולהעלות אותו.
  12. בדף האפליקציה שנפתח, לוחצים על ניהול.
  13. בדף 'ניהול אפליקציות' של האפליקציה שיצרתם, לוחצים על עריכת המדיניות.
  14. בקטע OAuth policies (מדיניות OAuth), לוחצים על התפריט הנפתח Permitted Users (משתמשים מורשים) ואז על Admin approved users are pre-authorized (משתמשים שאושרו על ידי האדמין קיבלו הרשאה מראש).
  15. לוחצים על שמירה.
  16. בדף האפליקציה, בקטע פרופילים, לוחצים על ניהול פרופילים.
  17. בדף Application Profile Assignment, מסמנים את התיבות של פרופילי המשתמשים שיכולים להשתמש באפליקציה הזו.

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

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

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

מידע על Salesforce

Salesforce היא פלטפורמה לניהול קשרי לקוחות (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 מערך של שגיאות, אם יש כאלה, שזוהו במהלך הביצוע. מערך ללא. כן.

אחזור

אחזור רשומות כ-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. מערך ללא. כן.
allOrNone true כדי לגרום לכישלון של כל הפעולה אם חלק כלשהו מהבקשה נכשל. בוליאני FALSE לא.

תשובה

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

תשובה

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

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

getAccessToken

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

מסמך עזר בנושא הגדרות

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

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

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

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

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

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

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