You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Microsoft Teams标签中获取OneNote笔记本/分区/页面ID

解决方案

前置校验

首先先确认你获取的Tab为OneNote官方嵌入标签,对比返回结构中teamsApp.id字段与OneNote官方Teams应用固定ID:08830273-8852-4185-83ec-b78eb48b9b03,一致即可按以下方法提取目标ID。

方法1:直接解析entityId字段(最高效)

OneNote嵌入Teams标签时,configuration.entityId字段为固定分隔格式,用|分隔不同层级的ID:

  • 仅嵌入笔记本时格式为:{笔记本ID}|
  • 嵌入分区时格式为:{笔记本ID}|{分区ID}|
  • 嵌入单页时格式为:{笔记本ID}|{分区ID}|{页面ID}
    直接按分隔符拆分即可拿到对应ID,无需额外调用接口。

方法2:解析contentUrl/websiteUrl字段

如果entityId为空或格式异常,可从两个URL字段的查询参数中提取目标ID:
OneNote嵌入链接的固定参数规则为:

https://onenote.officeapps.live.com/xxx?notebookId={编码后的笔记本ID}&sectionId={编码后的分区ID}&pageId={编码后的页面ID}
将对应参数值做URL解码后,即可获得可用的ID。

方法3:调用Graph API补全/验证信息

如果需要验证ID有效性,或补充获取更多OneNote资源信息,可调用对应接口:

  • 如果你嵌入的是团队所属的OneNote(Teams团队对应Microsoft 365组,组ID=团队ID),调用:
    GET /groups/{{团队ID}}/onenote/notebooks/{{解析得到的笔记本ID}}
    
  • 如果你嵌入的是个人OneNote,调用:
    GET /me/onenote/notebooks/{{解析得到的笔记本ID}}
    

调用以上接口需要提前申请Notes.Read或Notes.ReadWrite、TeamsTab.Read.All接口权限。


内容的提问来源于stack exchange,提问作者Kannan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 21:15:03