Microsoft Graph 特定于服务的节流限制

Microsoft Graph 同时对所有 API 调用施加两类限制:

  • 适用于所有服务的全局限制
  • 适用于单个服务的特定于服务的限制

任何请求均可根据多个限制进行评估,具体取决于限制范围(所有租户中的每个应用、所有应用的每个租户、每个租户的每个应用等)、请求类型(GET、 POST、PATCH等)以及其他因素。 即将达到的第一个限制会触发阻止行为。

下表指出了全局限制:

请求类型 所有租户中的每个应用
任何 每 10 秒 130,000 个请求

本文其余部分概述了每个 Microsoft Graph 服务的特定于服务的限制。

注意

本文中所述的特定限制可能会发生变化。

在此部分中,术语 租户 是指安装应用程序的 Microsoft 365 组织。 对于单租户应用程序,此租户可以与创建应用程序的租户相同;对于多租户应用程序,它可以是不同的租户。

作业服务限制

请求类型 每个租户每个应用限制 所有应用的每个租户的使用限制
任何 每 10 秒 350 个请求 每 10 秒 700 个请求
任何 每 3,600 秒 10,000 个请求 每 3,600 秒 20,000 个请求
POST /publish 每 10 秒 25 个请求 每 10 秒 25 个请求

上述限制适用于下列资源:

预订服务限制

Bookings 服务对每个应用 ID 和邮箱组合应用限制,特别是在某个特定应用访问特定 Booking 邮箱时。 超过一个邮箱的限制不会影响应用程序访问另一个邮箱的能力。

限制 适用对象
四个并发请求 v1.0 和 beta 终结点

上述限制适用于下列资源:

云通信服务限制

资源 每个应用的限制
通话 每个应用程序、每个租户在 15 秒内提出 50,000 个请求
会议信息 每月 2,000 场会议/用户
状态 30 秒内 10,000 个请求,每个租户每个应用程序
虚拟事件 在 30 秒的时间段内,所有租户的每个应用 750 GET 个请求,以及 30 秒内所有租户的每个应用 15 Create个 、 Update请求 Delete

通话记录限制

下表列出的限制适用于以下资源:

限制类型 限制
每个应用程序适用于所有租户 每 20 秒 15,000 个请求
所有应用程序的每个租户 每 20 秒 10,000 个请求
每个租户的每个应用程序 每 20 秒 1,500 个请求
每条通话记录 每 20 秒 40 个请求
列出通话记录 每 20 秒 40 个请求

PSTN 通话记录限制

下表列出的限制适用于以下资源:

限制类型 限制
每个租户 每 60 秒 1,000 个请求
每个租户的每个应用程序 每 60 秒 200 个请求
按集合 每 60 秒 50 个请求

Excel 服务限制

有关 Excel 服务限制的说明和最佳实践,请参阅 减少限制错误。 此外,还存在以下限制。

请求类型 所有租户的每个应用限制 每个租户每个应用限制
任何 每 10 秒 5000 个请求 每 10 秒 1500 个请求

上述限制适用于下列资源:

教育版服务限制

请求类型 所有租户的每个应用限制 每个租户每个应用限制
任何 每 20 秒 400,000 个请求 每 10 秒 35,000 个请求

上述限制适用于下列资源:

Exchange 邮件跟踪服务限制

限制类型 限制
每个租户 每 5 分钟 100 个请求

上述限制适用于下列资源:

文件和列表服务限制

有关 OneDrive 和 SharePoint 的服务限制,请参阅 避免在 SharePoint 中受到限制或阻止

上述信息适用于以下资源:

身份和访问报告服务限制

请求类型 所有租户的每个应用限制 每个租户每个应用限制
任何 每 10 秒 122 个请求 每 10 秒 5 个请求
GET signInActivity 每分钟 10 个请求 每分钟 10 个请求

上述限制适用于下列资源:

标识和访问报告最佳做法

当 Microsoft Entra ID 在给定时间范围内收到来自租户或应用的过多调用时,系统会限制 Microsoft Entra 报告 API。 如果服务响应时间过长,调用也可能受到限制。 如果尽管应用了 处理限制的最佳做法,但请求仍然失败并出现 429 Too Many Requests 错误代码,请尝试减少返回的数据量。 首先尝试以下方法:

  • 使用筛选器将查询定位到所需数据。 例如,如果只需要特定类型的事件或部分用户,请使用 $filter$select 查询参数筛选出其他事件,从而减小响应对象的大小并减少限制风险。
  • 如果需要一组广泛的 Microsoft Entra ID 报告数据,请使用 createdDateTime$filter限制在单个调用中查询的登录事件数。 然后,循环访问下一个时间跨度,直到获得所需的所有记录。 例如,如果受到限制,则可以从请求三天数据的调用开始,然后以更短的时间跨度循环访问,直到请求不再受到限制。
  • $select=signInActivity列出用户”操作上的参数可能会导致比标准 Microsoft 图形 API 调用更严格的限制。 若要避免这些限制,请仅在必要时使用此参数。 如果需要登录活动数据,请用于 $top=500 获取每页最多 500 个用户,而不是默认的 100 个用户。 这可减少所需的 API 调用总数。

身份和访问服务限制

模式

限制基于令牌存储桶算法,后者通过添加各个请求的成本来实现。 然后将请求成本的总和与预定的限额进行比较。 仅限制超过限制的请求受到限制。 如果超出任何限制,响应为 429 Too Many Requests。 即使未达到以下限制、服务承受重大负载或基于特定租户的数据量,也可以收到 429 Too Many Requests 响应。 下表列出了现有限制。

限制类型 资源单元配额 写入配额
应用 + 租户对 S:每 10 秒 3,500 ResourceUnit
M:每 10 秒 5,000 ResourceUnit
L:每 10 秒 8,000 ResourceUnits
每 2 分钟 30 秒 3,000 个请求
应用程序 每 20 秒 150,000 ResourceUnit 每 5 分钟 35,000 个请求
租户 不适用 每 5 分钟 18,000 个请求

注意

应用程序 + 租户对限制因运行请求的租户中的用户数而异。 租户规模定义如下:S - 小于 50 个用户,M - 50 至 500 个用户之间,L - 500 个以上用户。


上述限制适用于下列资源:


下表列出了基本请求费用。 未列出的任何请求的基础成本为 1。

操作 请求路径 基本资源单位成本 写入成本
GET applications 2 0
GET applications/{id}/extensionProperties 2 0
GET contracts 3 0
POST directoryObjects/getByIds 5 0
GET domains/{id}/domainNameReferences 4 0
POST getObjectsById 5 0
GET groups/{id}/members 3 0
GET groups/{id}/transitiveMembers 5 0
POST isMemberOf 4 0
POST me/checkMemberGroups 4 0
POST me/checkMemberObjects 4 0
POST me/getMemberGroups 2 0
POST me/getMemberObjects 2 0
GET me/licenseDetails 2 0
GET me/memberOf 2 0
GET me/ownedObjects 2 0
GET me/transitiveMemberOf 2 0
GET oauth2PermissionGrants 2 0
GET oauth2PermissionGrants/{id} 2 0
GET servicePrincipals/{id}/appRoleAssignments 2 0
GET subscribedSkus 3 0
GET users 2 0
GET 表中未列出的任何身份路径 1 0
POST 表中未列出的任何身份路径 1 1
PATCH 表中未列出的任何身份路径 1 1
PUT 表中未列出的任何身份路径 1 1
DELETE 表中未列出的任何身份路径 1 1

重要

请求路径上的 POST、PATCH 和 DELETE applications 操作的成本取决于 signInAudience 类型。 对于AzureADMyOrgAzureADMultipleOrgssignInAudience的应用,每 5 分钟 70,000 个请求;而对于signInAudienceAzureADandPersonalMicrosoftAccountPersonalMicrosoftAccount的应用,成本为每分钟 60 个请求。

影响请求费用的其他因素:

  • 使用 $select 可将成本降低 1
  • 使用 $expand 可将成本增加 1
  • 使用值小于 20 的 $top 会使成本降低1
  • 在 Microsoft Entra ID B2C 租户中创建用户会使成本增加 4

注意

  • 请求费用不能低于 1。 适用于从 me/ 开始的请求路径的任何请求费用也适用于以 users/{id | userPrincipalName}/开头的等效请求。
  • 使用 $select for directoryObjects/getByIdsgetObjectsById 结果为 2 个 ResourceUnits。

其他标头

请求标头

  • x-ms-throttle-priority - 如果标头不存在或设置为任何其他值,则表示正常请求。 我们建议将优先级 high 用户启动的请求设置优先级。 此标头可以具有以下值之一:
    • 低 - 指示请求的优先级较低。 限制此请求不会导致出现用户可见的故障。
    • 正常 - 如果未提供任何值,则为默认值。 表示请求是默认优先级。
    • 高 - 表示请求具有高优先级。 限制此请求会导致出现用户可见的故障。

注意

如果限制请求,则首先限制低优先级请求,其次限制普通优先级请求,最后限制高优先级请求。 使用优先级请求标头不会更改限制。

正常响应请求

  • x-ms-resource-unit - 指示用于此请求的资源单位。 值为正整数。
  • x-ms-throttle-limit-percentage - 仅当应用程序消耗了超过其限制的 0.8 时才返回。 该值的范围是 0.8 到 1.8,是使用限制的百分比。 调用方可以使用此值设置警报并采取措施。
    • 0.8 表示使用的是已授予限制的 80%。
    • 1.0 指示正在使用授予限制的 100%。 你开始看到限制。
    • 1.2 指示 20% 的传入请求受到限制。
    • 1.8 表示 80% 的传入请求受到限制。

受限制的响应请求

  • x-ms-throttle-scope - 例如。 Tenant_Application/ReadWrite/9a3d526c-b3c1-4479-ba74-197b5c5751ae/0785ef7c-2d7a-4542-b048-95bcab406e0b 指示采用下列格式 <Scope>/<Limit>/<ApplicationId>/<TenantId|UserId|ResourceId> 的限制范围:
    • 范围:(字符串,必填)
      • Tenant_Application - 当前应用程序对特定租户的所有请求。
      • 租户 - 当前租户的所有请求,与应用程序无关。
      • 应用程序 - 当前应用程序的所有请求。
    • 限制: (字符串,必需)
      • 读取:读取范围请求 (GET)
      • 写入:写入范围请求 (POST、PATCH、PUT、DELETE...)
      • ReadWrite:所有范围请求(任何)
    • ApplicationId (Guid、必填)
    • TenantId|UserId|ResourceId: (Guid、必填)
  • x-ms-throttle-information - 指示限制的原因,可以有任何值(字符串)。 提供该值是为了进行诊断和故障排除,其中一些示例包括:
    • CPULimitExceeded - 限制因为超过 cpu 应用的限值。
    • WriteLimitExceeded - 限制因为超过写入限值。
    • ResourceUnitLimitExceeded - 限制因为超过已分配资源单位的限值。

身份和访问数据策略操作服务限制

请求类型 每个租户的使用限制
发布于 exportPersonalData 每天任何科目 1,000 个请求,每个科目每天 100 个
任何其他请求 每小时 10,000 个请求

上述限制适用于下列资源:

注意

前面列出的资源不会在响应时429 Too Many Requests返回Retry-After标头。

标识和访问设备操作服务限制

请求类型 每个租户每个应用限制 每个租户每个用户的限制
发布、修补、删除 每 2 分钟 30 秒 3,000 个请求 每 10 秒 25 个请求

上述限制适用于 设备 资源的写入配额。

身份保护和条件访问服务限制

请求类型 所有应用的每个租户的使用限制
任何 每秒一个请求

注意

前面列出的资源不会在响应时429 Too Many Requests返回Retry-After标头。

身份提供程序的服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
任何 每 1 分钟 300 个请求 每 1 分钟 200 个请求

上述限制适用于下列资源:

行业数据 ETL 服务限制

行业数据服务将按需 运行 限制为每 12 小时最多成功启动 5 次。

信息保护服务限制

以下限制适用于 /informationProtection 上的所有请求。

对于电子邮件,资源是唯一的网络消息 ID/收件人对。 例如,如果在 15 分钟内多次向同一个人发送具有相同邮件 ID 的电子邮件,则会触发下表中列出的每个资源限制。 但是,每 15 分钟最多可以提交 150 封唯一电子邮件(租户限制)。

操作 每个租户的使用限制 每个资源(电子邮件、URL、文件)的使用限制
POST 每 15 分钟 150 个请求,每 24 小时 10,000 个请求 每 15 分钟 1 个请求,每 24 小时 3 个请求

见解服务限制

以下限制适用于 me/insightsusers/{id}/insights 上的所有请求。

限制 适用对象
10 分钟内 10,000 个 API 请求 v1.0 和 beta 终结点
四个并发请求 v1.0 和 beta 终结点

上述限制适用于下列资源:

Intune服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

适用于工作服务限制的 Intune android

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 应用服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 审核服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 数据服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 捆绑包服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune chromebook 同步服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 公司条款服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 设备配置 V2 服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 设备配置服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 设备注册服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 设备意图服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 设备服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 400 个请求 每 20 秒 200 个请求
任何 每 20 秒 4000 个请求 每 20 秒 2000 个请求

上述限制适用于下列资源:

Intune 终结点保护服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 注册服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune GPAnalytics 服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 托管应用服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 通知服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune ODJ 服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 合作伙伴集成服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune rbac 服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 远程协助服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 电话服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune TEM 服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 疑难解答服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 解锁服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune 更新服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

Intune wip 服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

邀请管理器服务限制

以下限制适用于 /invitations 上的所有请求。

操作 所有应用的每个租户的使用限制
任何操作 每 5 秒 150 个请求

Microsoft 365 报表服务限制

以下限制适用于 /reports 上的所有请求。

操作 每个租户每个应用限制 所有应用的每个租户的使用限制
任何请求(CSV) 每10分钟14个请求 每10分钟40个请求
任何请求(JSON、beta) 每10分钟100个请求 不适用

上述限制分别适用于每个报表 API。 例如,在 10 分钟内对 Microsoft Teams 用户活动报告 API 的请求和对 Outlook 用户活动报告 API 的请求,对于每个 API 都算作 14 个请求中的一个请求,而不是两个 API 的 14 个请求中的两个。

上述限制适用于所有 使用情况报表 资源。

Microsoft Teams 服务限制

Microsoft Teams 跨四个独立维度应用限制。 当请求超过适用于请求 的任何限制时 ,它将受到限制,因此请始终为方案达到的最低限制进行设计。

Dimension 重要内容 当它通常适用时
按应用 ) 每个租户中对一个应用 (客户端 ID 的所有请求进行汇总。 为许多客户提供服务的多租户应用。
每个应用/租户 来自单个租户中一个应用的请求。 最常达到的极限。
每资源 针对单个团队、频道或聊天的请求。 将流量集中在一个对话上的应用。
每用户 代表单个用户发出的请求。 委派 (用户) 权限方案。

除非另有说明,否则限制表示为每秒请求数 (rps) 。

每个限制都在一个短的突增窗口内进行评估。 此外,还会在较长的时段内评估列出值的约 83% 的持续限制,因此仍可限制以列出的速率连续运行的工作负载。 将稳态流量大小调整到低于列出的限制,并使用指数退避。

破折号 (-) 表示未为该维度定义专用限制。 请求仍受 默认限制 和同一行中的任何其他限制的约束。

Teams

请求 按应用 每个应用/租户 每资源 每用户
GET /teams/{team-id} 1500 rps 30 rps 每团队 4 rps -
GET /me/joinedTeams or /users/{user-id}/joinedTeams 300 rps 30 rps - -
POST /teams 100 rps 10 rps - -
PUT /groups/{team-id}/team 150 rps 6 rps - -
PATCH /teams/{team-id} 300 rps 30 rps 每团队 4 rps -
POST /teams/{team-id}/clone 150 rps 6 rps - -
POST /teams/{team-id}/completeMigration 100 rps 10 rps - -

频道

请求 按应用 每个应用/租户 每资源 每用户
GET /teams/{team-id}/channels 1200 rps 60 rps 每团队 4 rps -
GET /teams/{team-id}/channels/{channel-id} 600 rps 30 rps 每个通道 1 rps -
GET /teams/{team-id}/channels/{channel-id}/members 1200 rps 60 rps 每个通道 1 rps -
POST /teams/{team-id}/channels 100 rps 10 rps 每团队 4 rps -
PATCH /teams/{team-id}/channels/{channel-id} 300 rps 30 rps 每个通道 1 rps -
删除 /teams/{team-id}/channels/{channel-id} 150 rps 15 rps 每个通道 1 rps -
POST /teams/{team-id}/channels/{channel-id}/completeMigration 100 rps 10 rps - -

频道消息

请求 按应用 每个应用/租户 每资源 每用户
GET /teams/{team-id}/channels/{channel-id}/messages 200 rps 20 rps 每个通道 1 rps -
POST /teams/{team-id}/channels/{channel-id}/messages 500 rps 50 rps 每个通道 1 rps 1 rps
发布 /teams/{team-id}/channels/{channel-id}/messages/{message-id}/replies 500 rps 50 rps 每个通道 1 rps 1 rps

上表中的 POST 限制由常规邮件发送和 邮件导入共享。 每个用户的限制不适用于导入。

聊天

请求 按应用 每个应用/租户 每资源 每用户
GET /chats、/me/chats 或 /users/{user-id}/chats 200 rps 20 rps - 1 rps
GET /chats/{chat-id} 2000 rps 200 rps 每次聊天 1 rps 5 rps
POST /聊天 200 rps 20 rps - -
PATCH /chats/{chat-id} 300 rps 30 rps 每次聊天 1 rps -
删除 /聊天/{chat-id} 10 rps 1 rps 每次聊天 1 rps -
POST /chats/{chat-id}/removeAllAccessForUser 300 rps 30 rps 每次聊天 1 rps 1 rps

聊天消息

请求 按应用 每个应用/租户 每资源 每用户
GET /chats/{chat-id}/messages 200 rps 20 rps 每次聊天 1 rps -
POST /chats/{chat-id}/messages 200 rps 20 rps 每次聊天 1 rps 1 rps
PATCH /chats/{chat-id}/messages/{message-id} 300 rps 30 rps 每次聊天 1 rps -
POST /chats/{chat-id}/messages/{message-id}/softDeleteundoSoftDelete 300 rps 30 rps 每次聊天 1 rps -
GET /chats/{chat-id}/messages/{message-id}/hostedContents 500 rps 50 rps 每次聊天 1 rps -
GET /chats/{chat-id}/messages/{message-id}/hostedContents/{id}/$value 600 rps 60 rps 每次聊天 1 rps -

Members

请求 按应用 每个应用/租户 每资源 每用户
GET /teams/{team-id}/members 1200 rps 60 rps 每团队 4 rps -
POST /teams/{team-id}/members 300 rps 30 rps 每个团队每分钟 4 个请求 -
POST /teams/{team-id}/members/add 100 rps 10 rps 每个团队每分钟 4 个请求 -
POST /chats/{chat-id}/members 300 rps 30 rps 每次聊天每分钟 4 个请求 -
删除 /chats/{chat-id}/members/{membership-id} 300 rps 30 rps 每次聊天每分钟 4 个请求 -

应用、选项卡和权限授予

请求 按应用 每个应用/租户 每资源 每用户
获取 已安装适用于团队聊天用户的应用 1500 rps 30 rps 每个聊天或频道 1 rps -
GET permissionGrants for team or chat 1500 rps 30 rps 每个聊天或频道 1 rps -
POST 已安装适用于团队聊天用户的应用 300 rps 30 rps 每个聊天或频道 1 rps -
删除 已安装适用于团队聊天用户的应用 150 rps 15 rps 每个聊天或频道 1 rps -
频道聊天的 GET 选项卡 600 rps 30 rps 每个聊天或频道 1 rps -
频道聊天的 POST 选项卡 300 rps 30 rps 每个聊天或频道 1 rps -
“补丁 ”选项卡 300 rps 30 rps 每个聊天或频道 1 rps -
删除频道聊天的选项卡 150 rps 15 rps 每个聊天或频道 1 rps -
GET /appCatalogs/teamsApps 1500 rps 30 rps - -
POST /appCatalogs/teamsApps 300 rps 30 rps - -
删除 /appCatalogs/teamsApps/{app-id} 150 rps 15 rps - -

活动源通知

请求 按应用 每个应用/租户 每资源 每用户
POST /teams/{team-id}/sendActivityNotification 50 rps 5 rps 每团队 4 rps -
POST /chats/{chat-id}/sendActivityNotification 50 rps 5 rps 每次聊天 1 rps -
POST /users/{user-id}/teamwork/sendActivityNotification 50 rps 5 rps - -
POST /teamwork/sendActivityNotificationToRecipients 20 rps 2 rps - -

批量邮件检索

这些 API 专为导出和合规性方案而设计,有各自的更高限制。

请求 按应用 每个应用/租户 每资源 每用户
GET /teams/{team-id}/channels/getAllMessages or /channels/allMessages 1000 rps 200 rps - -
GET /users/{user-id}/chats/getAllMessages or /chats/allMessages 1000 rps 200 rps - -
GET /teams/{team-id}/channels/getAllRetainedMessages 1000 rps 200 rps - -
GET /users/{user-id}/chats/getAllRetainedMessages 1000 rps 200 rps - -
GET /copilot/users/{user-id}/interactionHistory/getAllEnterpriseInteractions 1500 rps 30 rps - -

排班

请求 按应用 每个应用/租户 每资源 每用户
GET /teams/{team-id}/schedule 以及此路径下的所有 API 600 rps 30 rps - -
POST /teams/{team-id}/schedule 和此路径下的所有 API 300 rps 30 rps - -
PUT /teams/{team-id}/schedule 和此路径下的所有 API 300 rps 30 rps - -

Sections

请求 按应用 每个应用/租户 每资源 每用户
/users/{user-id}/teamwork/sections 下的所有分区管理 API - 5 rps - -

所有分区操作(包括节、节项、重新排序操作和增量查询)共享单个限制。

默认限制

上表中未列出的任何 Microsoft Teams 请求都会使用这些限制。

请求类型 按应用 每个应用/租户 每资源 每用户
GET 1500 rps 30 rps 每个聊天或频道 1 rps 1 rps
发布、放置和修补 300 rps 30 rps 每个聊天或频道 1 rps 1 rps
DELETE 150 rps 15 rps 每个聊天或频道 1 rps 1 rps

另请参阅 Microsoft Teams 限制投票要求

上述限制适用于下列资源:

多租户管理服务限制

请求类型 所有应用的每个租户的使用限制 每个租户每个应用限制
POST, PUT, DELETE, PATCH 每 20 秒 200 个请求 每 20 秒 100 个请求
任何 每 20 秒 2000 个请求 每 20 秒 1000 个请求

上述限制适用于下列资源:

OneNote 服务限制

限制类型 每个用户的每个应用程序的限制(委派的上下文) 每个应用程序的限制(仅应用程序上下文)
请求率 每 1 分钟 120 个请求和每 1 小时 400 个请求 每 1 分钟 240 个请求和每 1 小时 800 个请求
并发请求 5 个并发请求 20 个并发请求

上述限制适用于下列资源:

可在 OneNote API 限制及避免方法 中找到有关最佳做法的附加信息。

注意

前面列出的资源不会在响应时429 Too Many Requests返回Retry-After标头。

开放和架构扩展服务限制

请求类型 每个租户每个应用限制
任何 每 10 秒 455 个请求

上述限制适用于下列资源:

Outlook 服务限制

Outlook 服务限制适用于公有云和 国家/地区云部署

每个邮箱的限制

Outlook 服务对每个应用 ID 和邮箱组合(即访问特定用户或组邮箱的特定应用)应用限制。 超过一个邮箱的限制不会影响应用程序访问另一个邮箱的能力。

限制 适用对象
10 分钟内 10,000 个 API 请求 v1.0 和 beta 终结点
四个并发请求 v1.0 和 beta 终结点
150 兆字节 (MB) 在 5 分钟内上传 (补丁、发布、放置) v1.0 和 beta 终结点

Outlook 服务资源

API 资源
搜索 API(预览版)
  • 外部项(Microsoft 搜索)
  • 配置文件 API
  • 照片
  • 日历 API
  • 事件
  • eventMessage
  • calendar
  • calendarGroup
  • outlookCategory
  • attachment
  • place(预览)
  • 邮件 API
  • 邮件
  • mailFolder
  • mailSearchFolder
  • messageRule
  • outlookCategory
  • attachment
  • 邮箱导入和导出 API
  • mailbox
  • mailboxItem
  • mailboxFolder
  • exchangeSettings
  • 个人联系人 API
  • contact
  • contactFolder
  • outlookCategory
  • 社交和工作场所智能
  • person
  • 待办事项任务 API(预览版)
  • outlookTask
  • outlookTaskFolder
  • outlookTaskGroup
  • outlookCategory
  • attachment
  • JSON 批处理的 Outlook 服务限制

    当应用发出由多个无序的单个请求组成的对 Outlook 服务的 JSON 批处理请求时,默认情况下,Microsoft Graph 一次从批处理向 Outlook 服务发送最多四个单独的请求,而不考虑这些请求的目标邮箱。 Outlook 服务可以随时并行执行这些请求,也可以与目标邮箱无关。 由于 Microsoft Graph 最多只发送四个要并行运行的请求,因此无论使用何种应用,该批处理的执行都保持 在同一邮箱的 Outlook 并发限制范围内。

    或者,应用可以使用 dependsOn 属性对批处理中的请求进行排序。 Microsoft Graph 按照指定的顺序一次从批次中向 Outlook 服务发送一个请求,Outlook 按顺序执行批处理中的每个请求。

    换言之,当面向 同一邮箱时,允许多个批处理请求并行运行的应用可以使用以下任一方法:

    • 如果不必对单个请求进行排序,请同时运行单个批处理中的单独请求。
    • 使用该 dependsOn 属性对批处理中的请求进行排序,并最多同时运行四个此类批处理请求。

    Places 服务限制

    以下 Places API 的限制为每秒 3 次调用:

    Project Rome 服务限制

    请求类型 所有应用的每个用户的限制
    GET 每 5 分钟 400 个请求,每天 12,000 个请求
    POST, PUT, PATCH, DELETE 每 5 分钟 100 个请求,或每天 8,000 个请求

    上述限制适用于下列资源:

    安全检测和事件服务限制

    以下限制适用于 /security 上的所有请求。

    操作 每个租户每个应用限制
    任何对 alertsecurityActions、 的操作 secureScore 每分钟 150 个请求
    tiIndicator 上的任何操作 每分钟 1,000 个请求
    secureScoresecureScorecontrolProfile 上的任何操作 10 分钟内 10,000 个 API 请求
    secureScoresecureScorecontrolProfile 上的任何操作 四个并发请求

    安全性电子数据展示服务限制

    以下限制适用于 /security/eDiscoveryCases 上的所有请求。

    操作 每个租户每个应用限制
    任何 每分钟 5 个请求

    服务通信服务限制

    以下限制适用于/admin/serviceAnnouncement/下任何类型的服务通信请求。

    请求类型 每个租户每个应用限制
    任何 每 60 秒 240 个请求
    任何 每小时 800 个请求

    订阅服务

    请求类型 所有租户的每个应用限制 每个租户每个应用限制
    POST, PUT, DELETE, PATCH 每 20 秒 2000 个请求 每 20 秒 500 个请求
    POST /reauthorize subscription by ID 每 20 秒 4000 个请求 每 20 秒 1000 个请求
    按 ID 获取订阅 每 20 秒 2000 个请求 每 20 秒 500 个请求
    获取订阅列表 每 20 秒 40 个请求 每 20 秒 25 个请求

    上述限制适用于 订阅 资源。

    任务和计划服务限制

    Planner 的服务限制不可用。

    上述信息适用于以下资源:

    Viva Engage 服务限制

    Viva Engage API 调用受速率限制,允许每个用户在 30 秒的时间段内每个应用 10 个请求。 超过速率限制时,所有后续请求将返回响应 429 Too Many Requests 代码。

    Windows 365 服务限制

    请求类型 所有应用或用户的每个租户的限制 每个租户的每个应用或用户的限制
    列出云电脑 每 60 秒 180 个请求 每 60 秒 162 个请求
    获取云电脑 每 60 秒 540 个请求 每 60 秒 486 个请求

    从 2025 年 9 月 30 日开始,每个应用/每个用户的每个租户限制将减少到每个租户总限制的一半,以防止单个用户或应用消耗租户中的所有配额。

    请求类型 所有应用或用户的每个租户的限制 每个租户的每个应用或用户的限制
    列出云电脑 每 60 秒 180 个请求 每 60 秒 90 个请求
    获取云电脑 每 60 秒 540 个请求 每 60 秒 270 次请求