> ## Documentation Index
> Fetch the complete documentation index at: https://docs.memorylake.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 管理密钥认证

> 认证您对管理 API 的请求

## 认证

所有管理 API 请求都需要通过 `Authorization` 头传递**管理密钥**。

### 获取管理密钥

1. 在 MemoryLake 控制台中打开 **API Key** 页面
2. 点击 **创建**
3. 将**密钥类型**选为**管理密钥**（该选项只对团队 Owner 和 Admin 可见）
4. 复制生成的密钥（格式：`sk-admin-` 后跟 64 位十六进制字符）

<Warning>
  管理密钥只在创建和轮换时显示一次。明文不会被存储 —— 任何人都无法再次取回。请安全存储。
</Warning>

### 管理密钥有何不同

* **形态可辨**：`sk-admin-<64 位十六进制字符>` —— 无论是肉眼还是密钥扫描工具，都能一眼把它与数据密钥（`sk-...`）区分开。
* **平面隔离**：管理密钥只能调用本管理 API，数据密钥只能调用产品 API。两者都无法跨到对方的平面。
* **仅限控制台签发**：管理 API 自身无法签发管理密钥，因此泄露的管理密钥永远无法用来签发出更多管理密钥。
* **绑定唯一团队**：团队由密钥本身决定，没有任何参数或请求头能指向另一个团队。
* **继承创建者的权限**：密钥以其创建者的角色行事。如果创建者失去了某项权限或退出了团队，该密钥也随之失去该权限。

### 使用管理密钥

在 `Authorization` 头中包含管理密钥：

```bash theme={null}
Authorization: Bearer YOUR_ADMIN_KEY
```

### 请求示例

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET 'https://app.memorylake.cn/openapi/admin/api/v1/team' \
    -H 'Authorization: Bearer sk-admin-xxxxxx'
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    'https://app.memorylake.cn/openapi/admin/api/v1/team',
    {
      headers: {
        'Authorization': `Bearer ${adminKey}`
      }
    }
  );

  const data = await response.json();
  ```
</RequestExample>

### 认证错误

```json Missing or invalid key (401) theme={null}
{
  "success": false,
  "message": "service account not found",
  "error_code": "UNAUTHORIZE"
}
```

在本 API 上使用数据密钥，会返回与未知密钥完全相同的 `401` —— 响应不会透露该密钥是否存在。
