Claude Platform Docs

创建插件

beta.organization.plugins.create(**kwargs) -> BetaPlugin
POST/v1/organizations/plugins

通过上传版本文件,创建组织拥有的插件及其第一个版本。

上传采用 multipart/form-data 格式:包含该版本的文件(files,每个部分以 files[] 发送),以及可选的 marketplace_id 和 release_notes。清单中的 name 会成为插件的 name,display_name、description 和 manifest_version 也来自清单。

name 可以包含小写字母(任何字母表)、数字和连字符,最多 64 个字符。大写字母、空格、下划线和其他标点符号会被拒绝。

name 在市场内必须唯一:已被占用的名称会返回 409,error_code 为 plugin_name_taken,并且当该名称由某个插件持有时,会在 details.plugin_id 中返回该插件的 ID。如果要进入组织库市场的插件中有某个技能与组织技能(管理员在 claude.ai 中为整个组织上传的技能)同名,也会被拒绝并返回 409:error_code 为 skill_name_taken,该名称位于 details.skill_name 中;请重命名该技能,或在 claude.ai 中移除该组织技能。返回 503 且 error_code 为 registration_pending 表示插件及其版本已存储(其 ID 位于 details 中),但尚无法在 claude.ai 中使用:请勿重试创建操作(重试会返回 plugin_name_taken);而应在已存储的插件上创建一个版本,这样即可完成该插件。

有关完整示例,请参阅 Plugins API 指南中的创建插件。

接受的凭据:具有 write:plugins 范围的 Admin API 密钥。

每个请求都必须包含 beta 标头 anthropic-beta: ce-plugins-2026-09-01。不带该标头的请求会返回 404,就像该端点不存在一样。Plugins API 处于 beta 阶段,仅适用于 Claude Enterprise 组织。它不适用于 Claude Platform(Claude Console)组织,也不适用于启用了 HIPAA 就绪的组织。

Parameters
files: Array[String]

The version's files: one part per file, the part's filename being the file's path within the Plugin (for example skills/review-pr/SKILL.md), or a single .zip or .plugin archive holding them all. On the wire each part is named files[], and a part named plain files is not read; with cURL, -F 'files[]=@SKILL.md;filename=skills/review-pr/SKILL.md'. The files must include the manifest, .claude-plugin/plugin.json.

marketplace_id: String

ID of the organization-owned plugin marketplace to create the Plugin in (prefixed marketplace_). It must be a manual marketplace, one whose Plugins are uploaded rather than synchronized from a repository. When omitted, the Plugin is created in the organization's library marketplace, an organization-owned manual marketplace created on first use.

release_notes: String

Release notes stored with the version and shown in its version history in claude.ai; up to 5,000 characters.

maxLength5000
betas: Array[AnthropicBeta]⁠Header parameter

This endpoint is in beta: requests must send ce-plugins-2026-09-01 in this header.

One of the following:
String = String
:"message-batches-2024-09-24"
:"prompt-caching-2024-07-31"
:"computer-use-2024-10-22"
:"computer-use-2025-01-24"
:"pdfs-2024-09-25"
:"token-counting-2024-11-01"
:"token-efficient-tools-2025-02-19"
:"output-128k-2025-02-19"
:"files-api-2025-04-14"
:"mcp-client-2025-04-04"
:"mcp-client-2025-11-20"
:"dev-full-thinking-2025-05-14"
:"interleaved-thinking-2025-05-14"
:"code-execution-2025-05-22"
:"extended-cache-ttl-2025-04-11"
:"context-1m-2025-08-07"
:"context-management-2025-06-27"
:"model-context-window-exceeded-2025-08-26"
:"skills-2025-10-02"
:"fast-mode-2026-02-01"
:"output-300k-2026-03-24"
:"user-profiles-2026-03-24"
:"user-profiles-2026-08-18"
:"user-profiles-2026-09-04"
:"advisor-tool-2026-03-01"
:"managed-agents-2026-04-01"
:"cache-diagnosis-2026-04-07"
:"dreaming-2026-04-21"
:"thinking-token-count-2026-05-13"
:"server-side-fallback-2026-06-01"
:"server-side-fallback-2026-07-01"
:"fallback-credit-2026-06-01"
:"fallback-credit-2026-07-01"
:"agent-memory-2026-07-22"
:"mid-conversation-tool-changes-2026-07-01"
:"compact-2026-01-12"
:"computer-use-2025-11-24"
:"mcp-tunnels-2026-06-22"
:"structured-outputs-2025-11-13"
:"task-budgets-2026-03-13"
:"thinking-display-updates-2026-08-18"
:"ce-user-management-2026-07-13"
:"mid-conversation-output-config-2026-07-01"
:"thinking-binding-controls-2026-08-01"
:"mid-conversation-system-clear-at-2026-08-21"
:"compact-2026-09-04"
:"inline-tools-2026-09-15"
:"mcp-client-2026-09-15"
:"ce-plugins-2026-09-01"
:"spend-limit-reads-2026-09-26"
:"telemetry-destinations-2026-08-11"
Returns
class BetaPlugin { type: :plugin, id, components, 16 more }
创建插件
require "anthropic"

anthropic = Anthropic::Client.new(api_key: "my-anthropic-api-key")

beta_plugin = anthropic.beta.organization.plugins.create(files: [StringIO.new("Example data")])

puts(beta_plugin)
Returns Examples
Response 200
{
  "id": "plugin_01JyHfbRkZvD1gW7oTqXc3Ne",
  "components": [
    {
      "description": "description",
      "name": "review-pr",
      "type": "skill"
    }
  ],
  "content_scan": {
    "assessment": "warn",
    "reason": "credential-exposure",
    "status": "completed"
  },
  "created_at": "2026-03-14T09:26:53.589793Z",
  "created_by": {
    "email_address": "user@example.com",
    "type": "user_actor",
    "user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q"
  },
  "description": "Reviews pull requests against your team's conventions.",
  "display_name": "Code Review Helper",
  "latest_version_id": "pluginver_01KaZmQpRsTuVwXyZ2b4c6d8",
  "manifest_version": "1.2.0",
  "marketplace_id": "marketplace_01HxQ3v9KpZ2mTn8RwLc4Ys7",
  "name": "code-review-helper",
  "organization_installation_preference": "available",
  "organization_installation_preference_inherited": true,
  "owner": {
    "type": "organization"
  },
  "reach": "contained",
  "served_version_id": "pluginver_01K9wPcHd4Rm2Tx8Vq6Ln3Sb",
  "served_version_pinned": true,
  "type": "plugin",
  "updated_at": "2026-03-14T09:26:53.589793Z"
}