介绍
我的凭据能保持有效多久?
默认情况下,除非你使用了offline.access 作用域,否则你通过带有 PKCE 的授权码流程创建的 access token 仅在两小时内有效。
刷新令牌
offline.access 作用域,将签发一个 OAuth 2.0 刷新令牌。使用该刷新令牌即可获取访问令牌;如果未包含此作用域,我们将不会生成刷新令牌。
使用刷新令牌获取新访问令牌的请求示例如下:
应用设置
机密客户端
作用域
| 作用域 | 说明 |
| tweet.read | 你可查看的所有 Tweet,包括受保护账户的 Tweet。 |
| tweet.write | 代表你发布 Tweet 和转推(Retweet)。 |
| tweet.moderate.write | 隐藏或取消隐藏对你 Tweet 的回复。 |
| users.email | 已认证用户的电子邮件地址。 |
| users.read | 你可查看的任何账户,包括受保护账户。 |
| follows.read | 关注你的人以及你关注的人。 |
| follows.write | 代表你关注或取消关注他人。 |
| offline.access | 在你撤销访问前保持与你账户的连接。 |
| space.read | 你可查看的所有 Space。 |
| mute.read | 你已静音的账户。 |
| mute.write | 代表你静音或取消静音账户。 |
| like.read | 你点赞过的 Tweet 以及你可查看的点赞。 |
| like.write | 代表你点赞或取消点赞 Tweet。 |
| list.read | 你创建或加入的列表、列表成员和列表关注者,包括私密列表。 |
| list.write | 代表你创建和管理列表。 |
| block.read | 你已屏蔽的账户。 |
| block.write | 代表你屏蔽或取消屏蔽账户。 |
| bookmark.read | 获取已认证用户已加书签的 Tweet。 |
| bookmark.write | 为 Tweet 添加书签或移除书签。 |
| media.write | 上传媒体。 |
速率限制
授权类型
OAuth 2.0 流程
术语表
| 术语 | 说明 |
| 授权类型 | OAuth 框架为不同用例规定了多种授权类型,并提供了创建新授权类型的机制。例如 authorization code、client credentials、device code 和 refresh token。 |
| 机密客户端 | 能够与授权服务器安全进行身份验证的应用,例如妥善保管其注册的客户端密钥。 |
| 公共客户端 | 无法使用已注册客户端密钥的客户端,例如在浏览器或移动设备中运行的应用。 |
| Authorization code 授权流程 | 机密客户端和公共客户端均可使用,通过授权码换取访问令牌。 |
| PKCE | authorization code 授权流程的扩展,用于防范多种攻击,并使公共客户端能够安全地执行 OAuth 交换。 |
| Client ID | 可在开发者门户的“密钥与令牌”部分、标题为“Client ID”的位置找到。若未看到,请直接联系我们的团队。生成授权 URL 需要使用 Client ID。 |
| 重定向 URI | 你的回调 URL。你需要通过精确匹配验证。 |
| Authorization code | 允许应用代表用户调用 API。称为 auth_code。一旦应用所有者从用户处收到已批准的 auth_code,该 auth_code 的有效期为 30 秒。你必须在 30 秒内将其交换为访问令牌,否则该 auth_code 将过期。 |
| 访问令牌 | 应用代表用户发起 API 请求时使用的令牌。 |
| 刷新令牌 | 允许应用通过刷新令牌流程在不提示用户的情况下获取新的访问令牌。 |
| Client Secret | 如果你选择的应用类型为机密客户端,你将在应用的“密钥与令牌”部分、“Client ID”下方获得一个“Client Secret”。 |