如何通过REST API获取Azure Purview所有业务资产GUID列表?
Azure Purview 获取所有业务资产GUID列表的正确REST API语法
正确的搜索端点与请求体
你之前使用的端点路径或API版本配置有误,以下是两种可行的实现方式:
方式1:使用Atlas搜索查询端点
POST 请求端点:
https://{{purview_account}}.catalog.purview.azure.com/api/atlas/v2/search/query
无需额外指定api-version参数(该端点默认适配对应版本,若需显式指定可使用2021-05-01-preview)
请求体(支持分页获取全量结果):
{ "keywords": "*", "limit": 100, "offset": 0, "includeClassification": false, "includeEntityHints": false, "typeName": "" // 可选:填入特定业务资产类型名(如"AzureSqlTable")实现精准筛选,留空返回所有类型 }
limit:单次请求最大返回数,上限为1000offset:分页偏移量,从0开始,每次累加limit值,直到返回结果为空,即可遍历完所有实体
方式2:使用实体批量查询端点
若需更直接获取GUID列表,可使用批量实体查询端点:
POST 请求端点:
https://{{purview_account}}.catalog.purview.azure.com/api/atlas/v2/entity/bulk
请求体:
{ "typeName": "", // 可选:限定资产类型 "offset": 0, "limit": 100, "sort": [ { "type": "ASC", "attributeName": "qualifiedName" } ] }
返回结果的entities数组中,每个对象的guid字段即为目标资产GUID。
新Data Map API适配(若使用新版Purview)
如果你的Purview账户已启用Data Map功能,可使用新端点:
POST 请求端点:
https://{{purview_account}}.purview.azure.com/datamap/api/search/query?api-version=2023-09-01
请求体需符合新规范:
{ "search": { "query": "*" }, "pagination": { "limit": 100, "offset": 0 } }
关键注意事项
- 确保Bearer Token关联的身份拥有Purview Data Curator或Purview Data Reader权限,否则会返回权限错误
- 全量资产查询必须通过分页实现,避免单次请求超时或结果截断
- 若仍返回404,检查Purview账户名称拼写是否正确,或确认Data Map功能是否已启用(针对新端点)
内容的提问来源于stack exchange,提问作者mo374z
相关产品推荐
相关产品推荐

