广告商 API 的速率限制与 REST API v1.1 类似,如下所述:REST API v1.1 速率限制。与 REST API v1.1 不同,每个端点的限制没有进行编程索引。端点速率限制和重置窗口通过 HTTP 响应标头进行传输。 广告 API 中的所有速率限制均采用 OAuth 1.0A。
用户级别和广告账号级别限制
速率限制有两种类型:用户令牌级别和广告账号级别。一部分端点可使用广告账号级别速率限制。 用户令牌是用于验证和调用广告 API 的 OAuth 访问令牌。每个用户令牌对一个或多个广告账号有权限访问。
响应标头中返回广告账号级别速率限制时,开发者应使用该限制,只有找不到广告账号限制时才使用用户级别限制。
用户级别速率限制通过以下标头表示:x-rate-limit-limit、x-rate-limit-remaining 和 x-rate-limit-reset
对于启用广告账号速率限制的端点,速率限制通过以下标头表示:x-account-rate-limit-limit、x-account-rate-limit-remaining 和 x-account-rate-limit-reset。
仅会为 GET 端点提供广告账号级别速率限制,以允许应用程序从访问多个广告账号的单个用户令牌同步实体数据(如广告活动或行项目对象)。写操作不保证使用相同的广告账号级别速率限制。
对于使用广告账号级别速率限制的端点,用户级别速率限制已设置为高值,其表示你的整个应用程序的全局配额。广告账号级别速率限制可用时,应优先用于控制你的请求量。
最佳实践
1) 在你的数据库中保存上次同步时间戳,请求数据的时间,请求数据时(如果适用),使用 sort_by=updated_at-desc 选项请求数据以允许你在达到早于你的上一次同步时间戳的数据后停止同步进程。这可以避免重复同步相同的数据。
2) 在单个请求中请求多个实体:一些端点允许你指定逗号分隔值列表,来检索多条相似的数据。这能减少进行的调用总数,从而更有效地利用速率限制。
3) 在请求中请求最大“计数”:强烈建议使用一些端点(如 GET accounts/:account_id/targeting_criteria)来调用最大计数值,以返回 1000 个对象,而非默认的 200 个对象。
分析同步
参阅分析速率限制指南,获取有关分析端点速率限制的更多信息。
常见问题
是否可以为特定广告账号或我们的应用程序提高速率限制?
通常来说,我们无法提高速率限制,设置这些限制是为了支持尽量多的广告账号。请首先实施本文档所列的最佳实践,如果在这之后速率限制仍影响你扩展业务或实现业务目标的能力,请联系你的 Twitter 广告 API 联系人并提供有关用例和相关请求的完整详细信息。
广告 API 速率限制表
广告 API 速率限制
端点类型 | 按端点或类别限定范围 | 每 1 分钟窗口速率限制 |
---|---|---|
写入(POST、PUT、DELETE) | 类别 | 450 |
受众 | 端点 | 1500 |
端点类型 | 按端点或类别限定范围 | 每 15 分钟窗口速率限制 |
---|---|---|
分析(同步) | 类别 | 250 |
核心实体读取(行项目、广告活动等) 其他账号读取(其他具有 :account_id 的 GET 端点) |
端点(广告账号级别) 端点(部分广告账号级别) |
10,000 2000 |
定位标准(除以下外) | 类别 | 400 |
定位标准(tv_markets、tv_shows) | 端点 | 2000 |
受众洞察 | 类别 | 400 |
关键词洞察 | 类别 | 500 |
全局读取(没有 :account_id 的 GET 端点) | 端点 | 5 |