API ส่วนที่เหลือของ Salesforce

Api Swn Thi Helux Khxng Salesforce



ในคู่มือนี้ เราจะพูดถึงวิธีการแทรกเรกคอร์ดลงใน Salesforce ด้วย REST API ผ่านเมธอด POST และ PUT http ใน Workbench ในส่วนหนึ่งของคู่มือนี้ เราจะพูดถึงวิธีใช้ Workbench และดึงข้อมูลเรกคอร์ดเฉพาะโดยใช้ sObject ดึงข้อมูลหลายเรกคอร์ดจากออบเจกต์โดยใช้คิวรี และดึงข้อมูลเรกคอร์ดโดยการเขียน REST API แบบกำหนดเองของ Apex

วิธีโพสต์

POST เป็นเมธอด http ซึ่งเพิ่มเรคคอร์ดเดียว/หลายเรคคอร์ดใน Salesforce ในแต่ละครั้ง เราสามารถแทรกบันทึกด้วย URI ผ่าน Apex REST API ที่กำหนดเองหรือโดยตรงจาก URI

ทรัพยากรส่วนที่เหลือที่กำหนดเองในเอเพ็กซ์

ในการเขียน REST ใน Apex เราต้องใช้คำอธิบายประกอบที่เข้าถึง REST API ในคลาส Apex ของคุณ







คำอธิบายประกอบ @HttpPost

วิธีนี้เรียกว่าเมื่อมีการส่ง HTTP POST ซึ่งเปิดใช้งานวิธี Apex ที่จะแสดงเป็นทรัพยากร REST จากนั้นจะสร้างทรัพยากรใหม่



ไวยากรณ์: @httpPost

ตัวอย่าง:



เขียนคลาส Apex “RestApi_Post_Record.apxc” ที่เกี่ยวข้องกับเมธอด REST “POST” เพื่อแทรกฟิลด์สถานะ ลำดับความสำคัญ และหัวเรื่องลงในออบเจกต์ “Case” ของ Salesforce





  1. สร้าง Post_Method ด้วยพารามิเตอร์สามตัว ได้แก่ สถานะ ลำดับความสำคัญ และหัวเรื่องของประเภทสตริง
  2. สร้างวัตถุ 'กรณี' โดยส่งพารามิเตอร์เหล่านี้
  3. ใช้การแทรก DML เพื่อแทรกบันทึกลงในออบเจกต์ “Case” ของ Salesforce
@RestResource(urlMapping='/v56.0/RestApi_Post_Record/')
RestApi_Post_Record ระดับโลก{

// REST - วิธีการโพสต์
@httpโพสต์
Case Post_Method แบบคงที่ทั่วโลก (ลำดับความสำคัญของสตริง, สถานะสตริง, หัวข้อสตริง){
เคส case_obj= เคสใหม่ (ลำดับความสำคัญ=ลำดับความสำคัญ สถานะ = สถานะ เรื่อง=เรื่อง);

// ใส่ DML
ใส่ case_obj;
ส่งคืน case_obj;
}
}

URI และผลลัพธ์:

ไปที่ Workbench และไปที่ REST Explorer ระบุ URI ต่อไปนี้และดำเนินการ:



/services/apexrest/v56.0/RestApi_Post_Record/

ระบุข้อมูลในเนื้อหาคำขอ:

{
'ลำดับความสำคัญ':'สูง',
'สถานะ':'ใหม่',
'เรื่อง':'ปัญหามือถือ'
}

เปิดเรกคอร์ดใน Salesforce (นำทางไปยังอ็อบเจ็กต์ “Case” จาก App Launcher)

แทรกบันทึกเดี่ยวโดยตรงจาก URI

ไปที่ REST Explorer ภายใต้แท็บ 'ยูทิลิตี้' และระบุ URI ต่อไปนี้และระบุบันทึกนี้ภายใต้เนื้อหาคำขอ:

/services/data/v56.0/sobjects/กรณี/

เนื้อหาคำขอ:

{
'ลำดับความสำคัญ':'ปานกลาง',
'สถานะ':'ใหม่',
'หัวเรื่อง':'ทีม Microsoft - ยังไม่มา'
}

ไปที่แท็บ “กรณีและปัญหา” ของ Salesforce และดูเรกคอร์ด

แทรกหลายระเบียนโดยตรงจาก URI

หากต้องการใส่หลายระเบียนในครั้งเดียว เราต้องระบุ URI ดังนี้ /services/data/v56.0/composite/tree/sObject

เนื้อหาคำขอเก็บบันทึกในรูปแบบต่อไปนี้:

'บันทึก' :[{
'attributes' : {'type' : 'Object', 'referenceId' : 'reference1'},
ฟิลด์:ค่า,
...
...
},{
'attributes' : {'type' : 'Object', 'referenceId' : 'reference1'},
ฟิลด์:ค่า,
...
...
}]
}

มาแทรกสองบันทึกลงในออบเจกต์ “Case” ของ Salesforce

URI: /services/data/v56.0/composite/tree/Case/

เนื้อหาคำขอ:

{
'บันทึก' :[{
'attributes' : {'type' : 'กรณี', 'referenceId' : 'reference1'},
'ลำดับความสำคัญ':'สูง',
'สถานะ':'ใหม่',
'หัวเรื่อง':'ปัญหาการออกแบบโรเตอร์เชิงกล',
'ประเภท':'ไฟฟ้า'
},{
'attributes' : {'type' : 'กรณี', 'referenceId' : 'reference2'},
'ลำดับความสำคัญ':'ต่ำ',
'สถานะ':'ใหม่',
'เรื่อง':'การสตาร์ทเครื่องกำเนิดไฟฟ้าหลังไฟฟ้าขัดข้อง' ,
'ประเภท':'ไฟฟ้า'
}]
}

บันทึกสองรายการถูกแทรกลงใน Salesforce ด้วย CaseNumber 00001038 และ 00001039

วิธีใส่

ตามที่เราได้กล่าวไว้ก่อนหน้านี้ PUT เป็นเมธอด http ซึ่งใช้เพื่อสร้าง/อัปเดตเรกคอร์ด ในคู่มือนี้ เราใช้วิธีนี้เพื่อสร้างบันทึก Salesforce ใหม่โดยใช้ REST API ที่กำหนดเอง

@httpพุท : เมธอดนี้ถูกเรียกเมื่อมีการส่ง HTTP PUT ซึ่งทำให้เมธอด Apex ถูกเปิดเผยเป็นทรัพยากร REST จากนั้นจึงสร้างทรัพยากรใหม่หรืออัปเดตทรัพยากรที่มีอยู่

ไวยากรณ์: @httpPut

ตัวอย่าง:

เขียนคลาส Apex “RestApi_Put_Record.apxc” ที่เกี่ยวข้องกับเมธอด REST “PUT” เพื่อแทรกฟิลด์สถานะ ลำดับความสำคัญ และคำอธิบายลงในอ็อบเจ็กต์ “Case” ของ Salesforce

@RestResource(urlMapping='/v56.0/RestApi_Put_Record/')
RestApi_Put_Record คลาสสากล{

// REST - ใส่เมธอด
@httpพุท
Case Put_Method แบบคงที่ทั่วโลก (ลำดับความสำคัญของสตริง, สถานะสตริง, หัวข้อสตริง){
เคส case_obj= เคสใหม่ (ลำดับความสำคัญ=ลำดับความสำคัญ สถานะ = สถานะ เรื่อง=เรื่อง);

// ใส่ DML
ใส่ case_obj;
ส่งคืน case_obj;
}
}

URI และผลลัพธ์:

ไปที่ Workbench และไปที่ REST Explorer ระบุ URI ต่อไปนี้และดำเนินการ:

/services/apexrest/v56.0/RestApi_Put_Record/

ระบุข้อมูลในเนื้อหาคำขอ:

{
'ลำดับความสำคัญ':'สูง',
'สถานะ':'ปิด',
'เรื่อง':'ต้องการคู่มือเครื่องบดผัก'
}

เปิดเรกคอร์ดใน Salesforce (นำทางไปยังอ็อบเจ็กต์ “Case” จาก App Launcher)

บทสรุป

ตอนนี้ คุณสามารถแทรกบันทึกลงใน Salesforce โดยใช้เมธอด http PUT และ POST เราได้เรียนรู้วิธีแทรกเรคคอร์ดโดยตรงใน Workbench และใช้ REST API แบบกำหนดเองผ่านคลาส Apex ตัวอย่างการใช้งานออบเจกต์ “Case” ของ Salesforce ในคู่มือนี้ ความแตกต่างที่แท้จริงระหว่าง PUT และ POST คือ POST ใช้เพื่อแทรกข้อมูลในขณะที่ PUT ใช้เพื่อแทรก/อัปเดตข้อมูล คำอธิบายประกอบ @httpPut ใช้สำหรับเมธอด PUT และคำอธิบายประกอบ @httpPost ใช้สำหรับเมธอด POST