For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
主导航

管理 API

以编程方式管理组织资源和管理工作流。

管理 API 可让您自动执行组织管理工作流,例如邀请用户、审查审计日志、管理项目和 API 密钥、设置支出限额和提醒、管理数据保留以及调整速率限制。您可以将其用于需要在控制台之外运行的后台管理自动化、安全工作流和运营工具。

有关端点的详细信息,请参阅管理 API 参考,其中包括管理 API 密钥邀请用户项目支出限额审计日志

在 SDK 中使用管理 API 密钥

要访问这些端点,请创建管理 API 密钥。管理 API 密钥不能用于非管理类端点。

以下 SDK 版本新增了对管理 API 的支持,因此您可能需要更新 SDK 版本:

  • Node:6.36.0
  • Python:2.34.0
  • Go:3.34.0
  • Ruby:0.61.0
  • Java:4.34.0

设置 OPENAI_ADMIN_KEY,然后初始化您所用语言的 SDK。

使用管理 API 密钥设置 SDK
import OpenAI from "openai";

const client = new OpenAI({
  adminAPIKey: process.env.OPENAI_ADMIN_KEY,
});

限制项目的模型访问权限

使用项目模型权限为项目设置允许列表或拒绝列表。将 mode 设置为 allow_list,即可仅允许使用列出的模型;或者将 mode 设置为 deny_list,以阻止使用列出的模型,同时允许使用其他可用模型。模型 ID 必须对组织可见,这也包括可见的微调模型快照。

设置项目模型允许列表或拒绝列表
const modelPermissions =
  await client.admin.organization.projects.modelPermissions.update("proj_abc", {
    mode: "allow_list",
    model_ids: ["gpt-4.1", "o3"],
  });

console.log(modelPermissions.mode);

设置组织支出限额

使用支出限额端点创建或替换您组织的每月硬性支出限额。以美分为单位设置 threshold_amount。以下示例将每月限额设为 100 美元:

curl -X POST https://api.openai.com/v1/organization/spend_limit \
  -H "Authorization: Bearer $OPENAI_ADMIN_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "threshold_amount": 10000,
    "currency": "USD",
    "interval": "month"
  }'

当已记录的支出达到硬性限额时,受影响的 API 请求会返回 429 错误。有关详细信息,请参阅支出限额指南

管理支出限额提醒

使用项目支出提醒,在项目支出达到阈值时通知您的团队。阈值金额以美分为单位。

创建项目支出限额提醒
const spendAlert = await client.admin.organization.projects.spendAlerts.create(
  "proj_abc",
  {
    currency: "USD",
    interval: "month",
    notification_channel: {
      recipients: ["billing@example.com"],
      type: "email",
      subject_prefix: "[OpenAI spend]",
    },
    threshold_amount: 50000,
  }
);

console.log(spendAlert.id);

管理数据保留

使用项目数据保留控制,为项目覆盖或继承组织的保留政策。将 retention_type 设置为 organization_default,即可继承组织设置。

设置项目数据保留
const dataRetention =
  await client.admin.organization.projects.dataRetention.update("proj_abc", {
    retention_type: "organization_default",
  });

console.log(dataRetention.type);

通过电子邮件邀请用户

使用邀请端点,向电子邮件地址发送加入组织的邀请。

通过电子邮件邀请用户
const invite = await client.admin.organization.invites.create({
  email: "user@example.com",
  role: "reader",
});

console.log(invite.id);

检索审计日志

使用审计日志端点,列出组织近期的用户操作和配置变更。

检索审计日志
const auditLogs = await client.admin.organization.auditLogs.list({
  limit: 10,
});

console.log(auditLogs.data);