ส่วนขยาย Salesforce

คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่ เอกสารประกอบเกี่ยวกับ Apigee X.
ข้อมูล

เวอร์ชัน: 1.0.2

เข้าถึงข้อมูลในบัญชี Salesforce แทรก อัปเดต เรียก และค้นหาข้อมูล

เนื้อหานี้มีข้อมูลอ้างอิงสำหรับการกำหนดค่าและการใช้ส่วนขยายนี้

ข้อกำหนดเบื้องต้น

เนื้อหานี้มีข้อมูลอ้างอิงสำหรับการกำหนดค่าและการใช้ส่วนขยายนี้ ก่อนที่จะใช้ส่วนขยายจากพร็อกซี API โดยใช้นโยบาย ชิ้นงานข้อความไฮไลต์ คุณต้องดำเนินการต่อไปนี้

  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 ให้ไปที่แอป > ในแถบการนำทางด้านซ้าย App Manager
    2. หาแอปที่เชื่อมต่อที่คุณสร้างไว้ในรายการ
    3. จากเมนูแบบเลื่อนลงทางด้านขวาในแถวของแอปพลิเคชัน คลิกดู
    4. ในส่วน API (เปิดใช้การตั้งค่า OAuth) ให้ค้นหาคีย์ผู้ใช้ และคัดลอกค่าไปยังที่ที่ปลอดภัยสำหรับใช้ในเมื่อกำหนดค่าส่วนขยาย

ตั้งค่าแอปที่เชื่อมต่อเพื่อเข้าถึงผ่านส่วนขยาย

ก่อนที่ส่วนขยาย Salesforce จะสามารถเข้าถึง Salesforce ได้ คุณจะต้องสร้างแอปที่เชื่อมต่อของ Salesforce ซึ่งส่วนขยายดังกล่าวสามารถเชื่อมต่อกับ Salesforce ได้

ใน Salesforce แอปที่เชื่อมต่อจะช่วยให้แอปพลิเคชันภายนอกเชื่อมต่อกับ Salesforce ผ่าน API ได้

วิธีตั้งค่าแอปที่เชื่อมต่อ

  1. เข้าสู่ระบบ Salesforce
  2. คลิกไอคอนรูปเฟืองที่ด้านขวาบน แล้วคลิกตั้งค่า
  3. ในการนำทางด้านซ้าย ให้ขยายแอป > App Manager
  4. ในหน้า App Manager ให้คลิกแอปที่เชื่อมต่อใหม่
  5. กรอกข้อมูลในช่องที่ต้องกรอกในส่วนข้อมูลพื้นฐาน ค่านี้ใช้สำหรับการทำบัญชี ส่วนขยายก็จะไม่ใช้
  6. ในส่วน API (เปิดใช้การตั้งค่า OAuth) ให้เลือกช่องทำเครื่องหมายเปิดใช้การตั้งค่า OAuth
  7. ป้อน URL ของ Callback แม้ว่าส่วนขยายจะไม่ได้นำไปใช้งาน คุณจะใช้ http://localhost/ หรือโฮสต์ตัวยึดตำแหน่งอื่นๆ ก็ได้
  8. เลือกช่องทำเครื่องหมายใช้ลายเซ็นดิจิทัล
  9. ในส่วนใช้ลายเซ็นดิจิทัล ให้คลิกเลือกไฟล์ เพื่อค้นหาและอัปโหลด salesforce.crt ที่คุณสร้างไว้ก่อนหน้านี้
  10. ในส่วนขอบเขต OAuth ที่เลือก ให้เพิ่มข้อมูลต่อไปนี้เพื่อให้อยู่ภายใต้ขอบเขต OAuth ที่เลือก
    • เข้าถึงและจัดการข้อมูลของคุณ (API)
    • ส่งคำขอในนามของคุณได้ตลอดเวลา (refresh_token, Offline_access)
  11. คลิกบันทึก หากมีข้อผิดพลาด คุณอาจต้องสร้างและอัปโหลดไฟล์ salesforce.crt ใหม่
  12. ในหน้าแอปที่แสดง ให้คลิกจัดการ
  13. ในหน้า App Manager ของแอปที่คุณเพิ่งสร้าง ให้คลิกแก้ไขนโยบาย
  14. ในส่วนนโยบาย OAuth ให้คลิกเมนูแบบเลื่อนลงผู้ใช้ที่ได้รับอนุญาต แล้วคลิกผู้ใช้ที่ผู้ดูแลระบบอนุมัติได้รับอนุญาตล่วงหน้า
  15. คลิกบันทึก
  16. กลับไปที่หน้าแอป ในส่วนโปรไฟล์ ให้คลิกจัดการโปรไฟล์
  17. ในหน้าการกำหนดโปรไฟล์แอปพลิเคชัน ให้เลือกช่องทำเครื่องหมายสำหรับโปรไฟล์ผู้ใช้ที่สามารถใช้แอปพลิเคชันนี้

    ตรวจสอบว่าได้เลือกโปรไฟล์ที่สอดคล้องกับผู้ใช้ ซึ่งคุณจะใช้เมื่อกำหนดค่าส่วนขยาย นอกจากนี้ โปรดตรวจสอบด้วยว่า ผู้ใช้ที่เป็นผู้ดูแลระบบเป็นอย่างน้อยมีสิทธิ์เข้าถึงแอปพลิเคชันนี้

    คุณดูการตั้งค่าโปรไฟล์ของผู้ใช้ได้ใน 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 ใน JSON สูงสุด: 1,000 อาร์เรย์ ไม่มี ได้
allOrNone true เพื่ออัปเดตเพียงบางส่วนหากการอัปเดตส่วนใดล้มเหลว บูลีน เท็จ ไม่

คำตอบ

อาร์เรย์ 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 ใน JSON ระเบียนแต่ละรายการที่จะอัปเดตต้องมีค่ารหัสของระเบียน สูงสุด: 1,000 อาร์เรย์ ไม่มี ได้
allOrNone true เพื่ออัปเดตเพียงบางส่วนหากการอัปเดตส่วนใดล้มเหลว บูลีน เท็จ ไม่

คำตอบ

อาร์เรย์ 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 ที่จะเรียก สูงสุด: 1,000 อาร์เรย์ ไม่มี ได้
allOrNone true เพื่อให้การดำเนินการทั้งหมดล้มเหลวหากคำขอส่วนใดล้มเหลว บูลีน เท็จ ไม่

คำตอบ

อาร์เรย์ 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 จำนวนระเบียนที่แสดงผลโดยการค้นหา จำนวนเต็ม ไม่มี ได้
รายการ อาร์เรย์ของระเบียนที่แสดงผลเป็น 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 ของระเบียนที่จะแสดงรายการ สตริง ไม่มี ได้
ขีดจำกัด จำนวนระเบียนสูงสุดที่จะแสดง จำนวนเต็ม 1000 ไม่
หักลบ ออฟเซ็ตระเบียนที่จะแสดง จำนวนเต็ม 0 ไม่

คำตอบ

อาร์เรย์ records ที่มีรายการ sObjects เป็น 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 สำหรับระเบียนที่จะลบ สูงสุด: 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 พิมพ์โทเค็นเพื่อการเข้าถึง สตริง Bearer ได้

ข้อมูลอ้างอิงการกำหนดค่า

ใช้สิ่งต่อไปนี้เมื่อคุณกำหนดค่าและทำให้ส่วนขยายนี้ใช้งานได้เพื่อใช้ในพร็อกซี API

คุณสมบัติทั่วไปของส่วนขยาย

พร็อพเพอร์ตี้ต่อไปนี้มีอยู่ในส่วนขยายทุกรายการ

พร็อพเพอร์ตี้ คำอธิบาย ค่าเริ่มต้น ต้องระบุ
name ชื่อที่คุณกําหนดให้การกําหนดค่านี้ของส่วนขยาย ไม่มี ได้
packageName ชื่อแพ็กเกจส่วนขยายที่ระบุโดย Apigee Edge ไม่มี ได้
version หมายเลขเวอร์ชันของแพ็กเกจส่วนขยายที่คุณกําหนดค่าส่วนขยาย ไม่มี ได้
configuration ค่าการกําหนดค่าเฉพาะสําหรับส่วนขยายที่คุณกําลังเพิ่ม ดูพร็อพเพอร์ตี้สําหรับแพ็กเกจส่วนขยายนี้ ไม่มี ได้

พร็อพเพอร์ตี้ของแพ็กเกจส่วนขยายนี้

ระบุค่าสำหรับพร็อพเพอร์ตี้การกำหนดค่าต่อไปนี้เฉพาะสำหรับส่วนขยายนี้

พร็อพเพอร์ตี้ คำอธิบาย ค่าเริ่มต้น ต้องระบุ
URL ของเซิร์ฟเวอร์การให้สิทธิ์ URL ที่จะใช้เมื่อได้รับสิทธิ์จาก Salesforce ราคาปกติคือ https://login.salesforce.com ไม่มี ได้
คีย์ผู้บริโภคของแอปที่เชื่อมต่อ รหัสผู้ใช้โดย Salesforce สำหรับแอปที่เชื่อมต่อที่คุณสร้างขึ้น โปรดดูวิธีการในข้อกำหนดเบื้องต้นในการเรียกข้อมูลคีย์ผู้บริโภค ไม่มี ได้
ข้อมูลเข้าสู่ระบบ เมื่อป้อนในคอนโซล Apigee Edge นี่จะเป็นเนื้อหาของไฟล์ salesforce.key ที่คุณสร้างในขั้นตอนด้านบน เมื่อส่งผ่าน API การจัดการ ค่านี้จะเป็นค่าที่เข้ารหัสฐาน 64 ซึ่งสร้างขึ้นจากไฟล์ salesforce.key ไม่มี ได้
ชื่อผู้ใช้ของผู้ใช้ Salesforce ชื่อผู้ใช้ที่เชื่อมโยงกับแอปที่เชื่อมต่อที่คุณสร้างขึ้น ส่วนขยาย Salesforce จะใช้สิ่งนี้เพื่อรับสิทธิ์จาก Salesforce ไม่มี ได้