OData 终结点提供描述服务功能的服务文档。 了解这些服务文档有助于使用正在使用的环境中可用的资源。
服务文档
GET对 Web API 终结点执行请求,以查看环境的服务文档。
Web API 终结点如下所示: https://yourorg.api.crm.dynamics.com/api/data/v9.2/ 此部分: yourorg.api.crm取决于你的环境。 请参阅 “查看开发人员资源 ”,了解如何查找它。
如果将 Insomnia 与建议的环境设置一起使用,只需使用 _.webapiurl 环境变量。
请参阅查看 CSDL $metadata 文档的说明。 使用 Insomnia,可以使用 XPath 查询筛选大型 XML 文档的结果。
你将看到如下所示的结果:
{
"@odata.context": "https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata",
"value": [
{
"name": "accountleadscollection",
"kind": "EntitySet",
"url": "accountleadscollection"
},
{
"name": "accounts",
"kind": "EntitySet",
"url": "accounts"
},
...
服务文档提供环境中可用的所有 EntitySet 的列表。 EntitySet 是指代 Dataverse 中表格的资源名称。 使用 URL 中的实体集名称对特定表中的数据执行操作。
小窍门
在本文档的结果上使用 Ctrl+F 查找正确的实体集名称。
实体集名称
始终使用 EntityMetadata.EntitySetName 属性值 ,而不是逻辑集合名称值。 默认情况下,实体集名称与表 EntityMetadata.LogicalCollectionName 属性值 匹配,但不依赖于此值。
更改实体集名称
如果具有想要使用不同的实体集名称进行寻址的自定义表,请更新表 EntityMetadata.EntitySetName 属性值 以使用不同的名称。 了解可以更改的表属性。
重要
仅在创建表时更改EntitySetName,并且在编写任何使用该表的代码之前。 更改名称会中断使用旧名称的任何代码。
CSDL $metadata 文档
若要检索公共架构定义语言(CSDL)$metadata文档,请追加 $metadata 到 Web API 终结点。
例如:https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata
此 XML 文档介绍可在环境中使用的所有表和操作。
重要
本文档是与 Web API 相关的所有内容的事实来源。 经常引用它。 使用本文档上的 Ctrl+F 查找所使用的特定EntityType、Action、Function或ComplexTypeEnumType。 名称区分大小写。
元数据注释
若要从$metadata获取更多信息,请在URL中添加?annotations=true。
例如:https://yourorg.api.crm.dynamics.com/api/data/v9.2/$metadata?annotations=true
将此参数设置为包含许多不同类型的批注,这些批注可能很有用。 默认情况下不包括大多数批注,因为它们会增加文档的总大小。
还可以通过添加 Prefer: odata.include-annotations="*" 请求标头来获取这些批注。 此请求标头适用于其他类型的请求。 查询 annotations=true 参数仅适用于$metadata文档。
服务命名空间。
在$metadata顶部附近,可以找到以下 XML 元素:
<edmx:DataServices>
<Schema Namespace="Microsoft.Dynamics.CRM" Alias="mscrm" xmlns="http://docs.oasis-open.org/odata/ns/edm">
此元素告知您服务中的所有项都在Microsoft.Dynamics.CRM命名空间中,并且mscrm是该命名空间的别名。 在某些情况下,需要使用对象的完全限定名称,以便使用命名空间值。
后续步骤
了解实体类型。
另见
Web API 类型和操作
Web API 实体类型
Web API 属性
Web API 导航属性
Web API动作
Web API 函数
Web API 复杂和枚举类型
使用 Dataverse Web API