ตัวอย่างการสอบถาม OData
หมายเหตุ
ตาราง Customer Insights - Data ยังสามารถเข้าถึงได้โดยใช้ Dataverse API เราขอแนะนำให้คุณใช้ Dataverse API เพื่อสอบถามข้อมูล Customer Insights เนื่องจากมีการกรองที่ครอบคลุมมากขึ้น ปริมาณการประมวลผลที่มากขึ้น และมีเวลาแฝงต่ำกว่า สำหรับข้อมูลเพิ่มเติม โปรดดู Dataverse API สำหรับ Customer Insights
Open Data Protocol (OData) เป็นโปรโตคอลการเข้าถึงข้อมูลที่สร้างขึ้นบนโปรโตคอลหลัก เช่น HTTP ซึ่งใช้วิธีการที่ยอมรับกันทั่วไป เช่น REST สำหรับเว็บ มีไลบรารีและเครื่องมือหลายประเภทที่สามารถใช้เพื่อรับบริการ OData ได้
เพื่อช่วยคุณสร้างการใช้งานของคุณเองโดยยึดตาม API ของ Dynamics 365 Customer Insights - Data ตรวจสอบตัวอย่างข้อความค้นหาที่มีการร้องขอบ่อย
แก้ไขตัวอย่างการสอบถามเพื่อให้สามารถทำงานในสภาพแวดล้อมเป้าหมาย:
- {serviceRoot}:
https://api.ci.ai.dynamics.com/v1/instances/{instanceId}
: ที่ {instanceId} คือ GUID ของสภาพแวดล้อม Customer Insights - Data ที่คุณต้องการสอบถาม The ListAllInstances operation ให้คุณค้นหา {InstanceId} ที่คุณสามารถเข้าถึงได้ - {CID}: GUID ของเรกคอร์ดลูกค้าแบบรวม ตัวอย่าง:
ce759201f786d590bf2134bff576c369
- {AlternateKey}: ตัวระบุคีย์หลักของบันทึกลูกค้าในแหล่งข้อมูล ตัวอย่าง:
CNTID_1002
- {DSname}: สตริงที่มีชื่อตารางของแหล่งข้อมูลที่นำมาใช้กับ Customer Insights - Data ตัวอย่าง:
Website_contacts
- {SegmentName}: สตริงที่มีชื่อตารางเอาต์พุตของเซ็กเมนต์ใน Customer Insights - Data ตัวอย่าง:
Male_under_40
ลูกค้า
การสอบถามตัวอย่างสำหรับตาราง ลูกค้า
ชนิดการสอบถาม | ตัวอย่าง | หมายเหตุ |
---|---|---|
รหัสลูกค้ารายเดียว | {serviceRoot}/data/Customer?$filter=CustomerId eq '{CID}' |
|
คีย์สำรอง | {serviceRoot}/data/Customer?$filter={DSname_TableName_PrimaryKeyColumnName} eq '{AlternateKey}' |
คีย์สำรองยังคงอยู่ในตารางลูกค้าแบบรวม |
Select | {serviceRoot}/data/Customer?$select=CustomerId,FullName&$filter=customerid eq '1' |
|
ใน | {serviceRoot}/data/Customer?$filter=CustomerId in ('{CID1}',’{CID2}’) |
|
คีย์สำรอง + ใน | {serviceRoot}/data/Customer?$filter={DSname_TableName_PrimaryKeyColumnName} in ('{AlternateKey}','{AlternateKey}') |
|
การค้นหา | {serviceRoot}/data/Customer?$top=10&$skip=0&$search="string" |
ส่งกลับผลลัพธ์ 10 อันดับแรกสำหรับสตริงการค้นหา |
การเป็นสมาชิกเซ็กเมนต์ | {serviceRoot}/data/Customer?select=*&$filter=IsMemberOfSegment('{SegmentName}')&$top=10 |
ส่งคืนจำนวนแถวที่กำหนดไว้ล่วงหน้าจากตารางการแบ่งส่วน |
การเป็นสมาชิกเซ็กเมนต์สำหรับลูกค้า | {serviceRoot}/data/Customer?$filter=CustomerId eq '{CID}'&IsMemberOfSegment('{SegmentName}') |
ส่งคืนโปรไฟล์ลูกค้าหากพวกเขาเป็นสมาชิกของเซ็กเมนต์ที่กำหนด |
กิจกรรมแบบรวม
การสอบถามตัวอย่างสำหรับตาราง UnifiedActivity
ชนิดการสอบถาม | ตัวอย่าง | หมายเหตุ |
---|---|---|
กิจกรรมของ CID | {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq '{CID}' |
แสดงรายการกิจกรรมของโปรไฟล์ลูกค้าเฉพาะ |
กรอบเวลาของกิจกรรม | {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq '{CID}' and ActivityTime gt 2017-01-01T00:00:00.000Z and ActivityTime lt 2020-01-01T00:00:00.000Z |
กิจกรรมของโปรไฟล์ลูกค้าในกรอบเวลา |
ประเภทกิจกรรม | {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq '{CID}' and ActivityType eq '{ActivityName}' |
|
กิจกรรมโดยชื่อที่แสดง | {serviceRoot}/data/UnifiedActivity$filter=CustomerId eq ‘{CID}’ and ActivityTypeDisplay eq ‘{ActivityDisplayName}’ |
|
การเรียงลำดับกิจกรรม | {serviceRoot}/data/UnifiedActivity?$filter=CustomerId eq ‘{CID}’ & $orderby=ActivityTime asc |
เรียงกิจกรรมจากน้อยไปหามาก หรือมากไปหาน้อย |
กิจกรรมและการวัดทั้งหมดสำหรับลูกค้า | {serviceRoot}/data/Customer?$expand=UnifiedActivity,Customer_Measure&$filter=CustomerId eq '{CID}' |
กิจกรรมและการวัดเป็นคู่คีย์/ค่าเพิ่มเติมในโปรไฟล์ลูกค้าที่ส่งคืน |
จัดการเวิร์กโฟลว์
การสอบถามตัวอย่างที่เกี่ยวข้องกับกระบวนการใน Customer Insights - Data เช่น รีเฟรชแหล่งข้อมูล รวมข้อมูล หรือรับสถานะของงานการรวม
ชนิดการสอบถาม | ตัวอย่างเช่น | หมายเหตุ |
---|---|---|
รับรหัสแหล่งข้อมูล | {serviceRoot}/manage/datasources/v2 |
ส่งคืนแหล่งข้อมูลทั้งหมดในสภาพแวดล้อมของคุณ จากการตอบกลับ คุณสามารถตรวจสอบ 'FriendName' สำหรับแหล่งข้อมูลที่เฉพาะเจาะจง จากนั้นใช้ 'dataSourceId' |
รีเฟรชแหล่งข้อมูล | {serviceRoot}/manage/workflows/main/jobs?operationType=Ingestion&identifiers='{dataSourceId}'&forceRunRequested=true |
ใช้ 'dataSourceId' จากการตอบกลับข้างต้นเพื่อรีเฟรชแหล่งข้อมูล นี่คือการร้องขอ POST |
เรียกใช้การรีเฟรชแบบเต็ม | {serviceRoot}/manage/workflows/main/jobs?operationType=all&forceRunRequested=true |
รีเฟรชกระบวนการทั้งหมดในสภาพแวดล้อมของคุณ นี่คือการร้องขอ POST |
รับสถานะของกระบวนการ | {serviceRoot}/manage/workflows/main/jobs |
ตัวอย่างอื่น
การสอบถามตัวอย่างสำหรับตารางอื่นๆ
ชนิดการสอบถาม | ตัวอย่าง | หมายเหตุ |
---|---|---|
การวัด CID | {serviceRoot}/data/Customer_Measure?$filter=CustomerId eq '{CID}' |
|
แบรนด์ของ CID ที่เพิ่มความสมบูรณ์แล้ว | {serviceRoot}/data/BrandShareOfVoiceFromMicrosoft?$filter=CustomerId eq '{CID}' |
|
ความสนใจ CID ที่เพิ่มความสมบูรณ์แล้ว | {serviceRoot}/data/InterestShareOfVoiceFromMicrosoft?$filter=CustomerId eq '{CID}' |
|
ในส่วนคำสั่ง + ขยาย | {serviceRoot}/data/Customer?$expand=UnifiedActivity,Customer_Measure&$filter=CustomerId in ('{CID}', '{CID}') |
ข้อจำกัด
Customer Insights API ส่งคืนอ็อบเจกต์ได้สูงสุด 100 รายการตามค่าเริ่มต้น คุณสามารถแยกวิเคราะห์อ็อบเจกต์ที่ส่งคืนได้มากกว่า 100 รายการ โดยใช้เทคนิคการแบ่งหน้ามาตรฐาน หรือคุณสามารถส่งออกข้อมูลของคุณได้
การสอบถามต่อไปนี้ไม่ได้รับการสนับสนุน:
-
$filter
กับตารางต้นทางที่นำเข้า คุณสามารถเรียกใช้การสอบถาม $filter กับตารางของระบบที่ Customer Insights - Data สร้างขึ้นเท่านั้น -
$expand
จากการสอบถาม$search
ตัวอย่างเช่น:Customer?$expand=UnifiedActivity$top=10&$skip=0&$search="corey"
-
$expand
จาก$select
หากเลือกเฉพาะชุดย่อยของแอตทริบิวต์ ตัวอย่างเช่น:Customer?$select=CustomerId,FullName&$expand=UnifiedActivity&$filter=CustomerId eq '{CID}'
-
$expand
แบรนด์ที่เพิ่มข้อมูลหรือความเกี่ยวข้องด้านความสนใจสำหรับลูกค้าที่กำหนด ตัวอย่างเช่น:Customer?$expand=BrandShareOfVoiceFromMicrosoft&$filter=CustomerId eq '518291faaa12f6d853c417835d40eb10'
- สอบถามตารางผลลัพธ์ของโมเดลการคาดคะเนผ่านคีย์สำรอง ตัวอย่างเช่น:
OOBModelOutputTable?$filter=HotelCustomerID eq '{AK}'
-