适用于 Customer Insights - Data 的 Dataverse API
如果您已经在使用 Customer Insights - Data API,如查询客户个人资料或获取客户细分成员身份,我们建议您将 API 迁移到 Dataverse API。 Dataverse API 即将提供对查询元数据的支持,如获取客户细分定义和工作流管理。
如果您刚开始使用 API 查询数据,我们建议您改用 Dataverse API。
重要提示
建议仅使用 Dataverse API 读取数据 (GET),而不写入数据 (POST/PATCH/PUT),因为它可能会导致出现 Customer Insights - Data 处理问题。
Dataverse API 具有以下优点:
扩展的筛选和排序功能
改进的规模和性能
跨 Dynamics 365 和 Power Platform 应用的一致 API 体验
示例查询
要开始使用 Dataverse API,在 Azure 中创建应用程序注册,并请求 Dataverse 权限,同时在 Customer Insights - Data 上授予您的应用的查看者权限。
修改查询示例,使其在目标环境中能够正常工作:
{serviceRoot}:
{Organization URI}/api/data/v9.2/
,其中,{组织 URI} 是与您的环境关联的 Dataverse 租户的 URI。 例如:https://{mydvorg}.crm.dynamics.com
{CID}:统一客户记录的 GUID。 例如:
ce759201f786d590bf2134bff576c369
。{AlternateKey}:数据源中客户记录的主键标识符。 例如:
CNTID_1002
。{DSname}:带有被引入到 Customer Insights - Data 的数据源的表名称的字符串。 例如:
Website_contacts
。{SegmentName}:具有客户细分的输出表名称的字符串。 例如:
Male_under_40
。{CookieId}:每个网站访问者的标识符,在使用 Web 跟踪脚本时自动生成。 例如:
3f43317e-d1ef-4cd3-9917-2d3342111d1a
。
客户
CustomerProfile 表和客户细分成员身份的示例查询。
查询类型 | 示例 | 备注 |
---|---|---|
获取所有客户 | {serviceRoot}/msdynci_customerprofiles |
|
按 ID 获取客户 | {serviceRoot}/msdynci_customerprofiles?$filter=msdynci_customerid eq '{CID}' |
|
按备用键获取客户 | {serviceRoot}/msdynci_customerprofiles?$filter={msdynci_alternate_column} eq '{AK}' |
备用键以 msdynci_DSname_TableName_PrimaryKeyColumnName 格式保存在统一客户表中 |
获取客户的选定属性 | {serviceRoot}/msdynci_customerprofiles?$select=msdynci_fullname&$filter=msdynci_customerid eq '{CID}' |
|
按 ID 获取客户 (In) | {serviceRoot}/msdynci_customerprofiles?$filter=msdynci_customerid eq '{CID1}' or msdynci_customerid eq '{CID2}' |
|
按备用键获取客户 (In) | {serviceRoot}/msdynci_customerprofiles?$filter={msdynci_alternate_column} eq '{AK1}' or {msdynci_alternate_column} eq '{AK2}' |
|
搜索客户 | {serviceRoot}/msdynci_customerprofiles?$filter=contains(msdynci_lastname,'string')&$top=10 |
|
获取属于某一客户细分成员的所有客户 | {serviceRoot}/msdynci_segmentmemberships?$filter=contains(msdynci_segments,'\"{SegmentName}\"')&$select=msdynci_customerid |
|
获取属于某一客户细分成员的客户 | {serviceRoot}/msdynci_segmentmemberships?$filter=contains(msdynci_segments,'\"{SegmentName}\"') and msdynci_customerid eq '{CID}'&$select=msdynci_customerid |
|
获取客户的所有客户细分成员身份 | {serviceRoot}/msdynci_segmentmemberships?$filter=msdynci_customerid eq '{CID}'&$select=msdynci_segments |
Web 个性化
基于 CookieId 的对网站进行个性化的示例查询。 响应将同时返回已知客户和未知客户。 为 Web 跟踪和个性化创建的表在 Dataverse 中提供。
查询类型 | 示例 | 备注 |
---|---|---|
按 CookieId 获取客户 | {serviceRoot}/msdynci_p13nprofile(cookieid='{cookieId}') |
|
按 CookieId 获取客户,包括客户细分、度量和活动 | {serviceRoot}/msdynci_p13nprofile(cookieid='{cookieId}',include=['segmentmembership','measures','unifiedactivity']) |
|
按 CookieId 获取客户的最近(最后 10 次)页面查看 | {serviceRoot}/msdynci_pageviews(cookieid='{cookieId}',top=10) |
此查询可更改为返回多达 200 个最近的页面视图 |
按 CookieId 获取客户的最近(最后 10 次)页面点击 | {serviceRoot}/msdynci_pageclicks(cookieid='{cookieId}',top=10) |
此查询可更改为返回多达 200 个最近的页面单击次数 |
统一活动
UnifiedActivity 表的示例查询。
查询类型 | 示例 | 备注 |
---|---|---|
获取客户的所有活动 | {serviceRoot}/msdynci_p13nprofile?$filter=msdynci_customerid eq '{CID}' |
|
获取客户在一个时间段内的所有活动 | {serviceRoot}/msdynci_p13nprofile?$filter=msdynci_customerid eq '{CID}' and msdynci_activitytime gt 2017-01-01T00:00:00Z and msdynci_activitytime lt 2017-01-01T00:00:00Z |
|
获取客户的所有 activityType 活动 | {serviceRoot}/msdynci_p13nprofile?$filter=msdynci_customerid eq '{CID}' and msdynci_activitytype eq '{ActivityType}' |
|
获取客户的所有 activityDisplayName 活动 | {serviceRoot}/msdynci_p13nprofile?$filter=msdynci_customerid eq '{CID}' and msdynci_activitytypedisplay eq '{ActivityDisplayName}' |
|
获取客户的所有活动并进行排序 | {serviceRoot}/msdynci_p13nprofile?$filter=msdynci_customerid eq '{CID}'&$orderby=msdynci_activitytime asc |
其他示例
其他表的示例查询。
查询类型 | 示例 | 备注 |
---|---|---|
获取客户的所有度量 | {serviceRoot}/msdynci_customermeasures?$filter=msdynci_customerid eq '{CID}' |
|
获取扩充的客户品牌 | {serviceRoot}/msdynci_enrichments?$filter=msdynci_customerid eq '{CID}' and msdynci_enrichmentprovider eq 'BrandShareOfVoiceFromMicrosoft' |
|
获取扩充的客户兴趣 | {serviceRoot}/msdynci_enrichments?$filter=msdynci_customerid eq '{CID}' and msdynci_enrichmentprovider eq 'InterestShareOfVoiceFromMicrosoft' |
|
获取客户的 AI 模型结果 | {serviceRoot}/msdynci_predictions?$filter=msdynci_customerid eq '{CID}' and msdynci_modelprovider eq 'ChurnModel' |
后续步骤
大多数 Customer Insights - Data 表在 Dataverse 中提供。 有关详细信息,请参阅 Dataverse 中的表。
Dataverse 为测试 API 提供广泛的支持,例如,通过 Insomnia。 有关详细信息,请参阅结合使用 Insomnia 与 Dataverse Web API。
有关 Dataverse API 服务限制的更多信息,请参阅 Microsoft Dataverse 限制概述。
有关如何使用 Dataverse API 的更多信息,请参阅使用 Web API 查询数据。