> This page is for 平台, version 旧版.
> For other versions, use one of these documentation indexes:
> - V4 (default): https://next.developer.frame.io/platform/v4/llms.txt
> - V4 实验版: https://next.developer.frame.io/platform/v4-experimental/llms.txt
> - 旧版: https://next.developer.frame.io/platform/v2/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://next.developer.frame.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://next.developer.frame.io/_mcp/server.

# 身份验证

## 概述




使用 Frame.io API 发起 API 调用时需要进行身份验证。Frame.io API 提供两种身份验证选择：



* **开发者令牌**：一种持久的持有者令牌，具有与生成它的个人用户相同的访问权限和许可。
* **OAuth 2 授权代码流程**，该流程允许 Frame.io 用户使用其凭据登录，并授权外部应用程序代表他们执行操作。




所有使用 API 的操作，无论通过哪种身份验证类型进行，最终都使用持有者令牌标头，并受权限范围的控制。





### 哪种身份验证类型最适合我的项目？

刚开始时，您需要为项目使用[开发者令牌](/authentication/developer-tokens)。**开发者令牌**与个人用户的帐户相关联，具有与创建它们的用户相同的访问权限，并受权限范围的限制。

这些适用于：



* 实验（因为您可以非常快速地创建和销毁它们）
* 所有操作都可以通过单个帐户/用户上下文完成的集成场景。

**OAuth 授权代码流程**适用于需要代表多个不同用户执行操作的外部托管应用程序。通过 OAuth 管理持有者令牌会产生一点额外开销，因此常见的做法是：先使用开发者令牌进行实验，然后再将工作重构为 OAuth 应用程序。
<Info>
  要继续，您需要一个 Frame.io 帐户。如果您还没有 Frame.io 帐户，可以前往 [Frame.io](https://frame.io) 并点击[**免费注册**](https://accounts.frame.io/welcome)来快速轻松地注册一个。
</Info>


## 开发者令牌



1. 使用您的 Frame.io 用户凭据登录 Frame.io [开发者门户](/)。
2. 您应该会看到欢迎界面。要创建新的开发者令牌，请点击 **Create a Token** 按钮。
3. 此时您将进入 Tokens 界面。点击 **New**。
4. 在新建令牌界面上，您需要为令牌提供描述和权限范围。对于 **DESCRIPTION**，我们建议选择一些能帮助您记住该令牌用途的内容。在 **SCOPES** 下，您可以选择此令牌应具有哪些具体的访问权限范围。在本演练中，只需点击 **Select all scopes**。您可以根据需要，稍后创建具有更具体权限和特权的令牌（有关更多信息，请参见[权限范围](/getting-started/key-concepts#scopes)）。
5. 向下滚动并点击**创建**按钮。如果操作成功，您将看到一个页面，其中包含有关您令牌的信息摘要。
6. 复制**令牌**字段中显示的字符串。**这就是您的新令牌**。请将其存放在安全的地方——它代表对您帐户的访问权限，一旦您离开此页面，将无法再次查看它。




此时，您应该会收到一封电子邮件，确认您已使用所选权限范围创建了一个令牌。




<Warning>
  Frame.io 令牌仅在初始创建时显示。如果您丢失了令牌，随时可以创建一个新的；但除了其描述和权限范围之外，您将永远无法再查看旧令牌。
</Warning>


### 测试您的新令牌




现在您已经有了令牌，让我们尝试使用持有者身份验证发起一个请求。我们将执行一个基本请求来获取有关您自己的信息：




<CodeBlocks>
  


**`cURL`**

```bash title="cURL"
curl -H "Authorization: Bearer <YOUR_TOKEN>" https://api.frame.io/v2/me
```





**`Python`**

```python title="Python"
import requests

url = "https://api.frame.io/v2/me"
headers = {
 "Authorization": "Bearer <YOUR_TOKEN>"
}

requests.GET(url,headers=headers)
```



</CodeBlocks>


作为响应，您应该会看到您的用户记录的 JSON 表示。





祝贺您！您刚刚完成了对 Frame.io API 的首次调用。🎉





## 什么是 OAuth 2？




OAuth2.0 是一种常见的身份验证协议，它使用户能够让一个应用程序以有限的方式与另一个应用程序进行交互，而无需直接共享凭据。此过程通常被称为用户通过一个特殊的登录界面“授予凭证”。





### OAuth 2 授权代码流程

OAuth 2 授权代码流程使用户能够向外部应用程序授予有限的访问权限。一个应用程序会根据其初始配置请求特定权限——就 Frame.io 而言，即该应用程序在[我们的开发者门户上注册](https://developer.frame.io/app/oauth_apps)时配置的权限。用户批准请求后，外部应用程序便可代表该用户进行操作。如需了解如何开始使用 OAuth 2 授权代码流程，请参阅此处：[设置 OAuth 2 身份验证代码流程](/platform/v2/oauth-2-code-authorization-flow)

### 关于 OAuth 2 的更多信息




如果您想了解更多关于 OAuth 2 的信息，以下提供了一些很好的资源：



* [OAuth2](https://oauth.net/2/)
* [授权代码流程](https://developer.okta.com/blog/2018/04/10/oauth-authorization-code-grant-type)