我正在寻找一个 Graph API 调用,它可以将 Sharepoint Online 中的所有网站返回给我。
查看枚举站点: https://learn.microsoft.com/en-us/graph/api/site-list?view=graph-rest-beta&tabs=http
GET https://graph.microsoft.com/beta/sites?filter=siteCollection/root ne null
它似乎没有返回基于组的网站或子网站。
查看网站搜索: https://learn.microsoft.com/en-us/graph/api/site-search?view=graph-rest-beta&tabs=http
GET https://graph.microsoft.com/beta/sites?search={query}
这可能更有希望,但没有解释“查询”应该如何构造或者它搜索什么。
我的想法是,由于所有站点 ID 都以租户域开头,因此我可以在该域上进行搜索,然后检索租户的每个站点和子站点。但我不确定如何执行该查询。
理想情况是这样的:
GET https://graph.microsoft.com/beta/sites?search=id like contoso.microsoft.com
我发现这篇文章提出了一个非常相似的问题。
“dvdsmpsn”做出了回应,他表示您可以通过此调用检索所有网站:
https://graph.microsoft.com/v1.0/sites?search=*
有趣的是,这在图形 API 的测试版中不起作用(目前)。
这实现了我想要的,所以我将其发布为答案,但它并不能完全回答应如何格式化搜索的问题,因此我将这个问题留给其他人(如果可以的话)来回答。
我注意到这个语法适用于测试版
https://graph.microsoft.com/v1.0/sites?search=All 使用 beta api