Claude Platform Docs

プラグインマーケットプレイスアーカイブの検証

$ ant beta:organization:plugin-marketplaces validate-archive
POST/v1/organizations/plugin_marketplaces/validate_archive

マーケットプレイスディレクトリの .zip としてアップロードされたプラグインマーケットプレイスがclaude.aiに同期されるかどうかを、接続や保存を行わずに確認します。

代わりに公開GitHubリポジトリを確認するには、プラグインマーケットプレイスリポジトリの検証を使用してください。

レポートには、marketplace.json が正しい形式かどうか、同期時にどのプラグインがスキップされるかとその理由、どのプラグインが一部のファイルを除いて部分的にのみ同期されるかが示されます。マーケットプレイスとして読み取れないアーカイブは、拒否されるのではなくレポートされます。レスポンスは valid: false のレポートになります。マーケットプレイス外のプラグインソースはGitHubから匿名で取得されるため、非公開のものは見つからないとレポートされます。その他のホスト上のソースはここでは取得されず、マーケットプレイスが実際に同期されるときに確認される旨がレポートに記載されます。

Compliance APIのアクティビティフィードには何も記録されません。

具体例については、Plugins APIガイドのマーケットプレイスコンテンツの検証を参照してください。

受け入れられる認証情報: read:plugins または write:plugins スコープを持つAdmin APIキー。read:org_audit と read:compliance_org_data ではアクセスできません。

すべてのリクエストにベータヘッダー anthropic-beta: ce-plugins-2026-09-01 を含める必要があります。含まれていないリクエストは、エンドポイントが存在しない場合とまったく同じく 404 を返します。Plugins APIはベータ版であり、Claude Enterprise組織のみが利用できます。Claude Platform(Claude Console)組織、またはHIPAA対応が有効になっている組織では利用できません。

Parameters
--archive: string

A .zip of the marketplace directory (its contents at the root, or wrapped in one folder as a Git host's download produces), sent as a file part with a filename; DEFLATE- or STORE-compressed, at most 32 MB. A part sent without a filename, a second archive part, or any other form field is a 400; a larger archive is a 413.

formatbinary
--beta: optional array of AnthropicBeta⁠Header parameter

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

Returns
beta_plugin_marketplace_validation_report: object{ type: "plugin_marketplace_validation_report", commit_sha, manifest_error, 6 more }

The outcome of validating plugin marketplace content: a report, not a stored object, so nothing in it can be retrieved afterwards.

type: "plugin_marketplace_validation_report"

Always plugin_marketplace_validation_report.

commit_sha: string

The full SHA of the commit that was validated: for a repository, the commit that was read; for an uploaded archive, the commit recorded in the archive's comment (as a Git host's download writes it; not verified), else null.

manifest_error: string

Set when nothing could be validated: the repository or archive could not be read, or marketplace.json is missing, malformed or over a limit. Null otherwise.

manifest_error_code: string

A stable identifier for manifest_error; null when that is.

plugin_errors: array of BetaPluginMarketplaceValidationPluginError { error, error_code, name }

One entry per plugin a synchronization would skip entirely, keyed by the plugin's name in marketplace.json.

error: string

Why the plugin would be skipped by a synchronization.

error_code: string

A stable identifier for the reason — the value to branch on.

name: string

The plugin's name, as its entry in marketplace.json declares it.

plugin_warnings: array of BetaPluginMarketplaceValidationPluginWarnings { name, warnings }

One entry per plugin that would synchronize with some of its contents left out, keyed by the plugin's name in marketplace.json.

name: string

The plugin's name, as its entry in marketplace.json declares it.

warnings: array of BetaPluginMarketplaceValidationPluginWarning { error_code, message }

The parts of the plugin a synchronization would leave out.

error_code: string

A stable identifier for the kind of warning.

message: string

What would be left out, and why.

ref: string

For a repository, the branch that was read by name: the one requested, or else the branch a synchronization of this repository is set to read. Null when no branch is named or set and the repository's default branch was read, for a request by commit SHA, and for an uploaded archive.

total_plugin_count: number

How many plugins marketplace.json declares; 0 when it could not be read.

valid: boolean

True when marketplace.json is well-formed and no plugin would be skipped; warnings never make it false.

プラグインマーケットプレイスアーカイブの検証
ant beta:organization:plugin-marketplaces validate-archive \
  --api-key my-anthropic-api-key \
  --archive 'Example data'
Returns Examples
Response 200
{
  "commit_sha": "9fceb02d0ae598e95dc970b74767f19372d61af8",
  "manifest_error": "manifest_error",
  "manifest_error_code": "marketplace_sync_manifest_not_found",
  "plugin_errors": [
    {
      "error": "error",
      "error_code": "marketplace_sync_plugin_missing_manifest",
      "name": "name"
    }
  ],
  "plugin_warnings": [
    {
      "name": "name",
      "warnings": [
        {
          "error_code": "marketplace_sync_zipball_symlink_dangling",
          "message": "message"
        }
      ]
    }
  ],
  "ref": "main",
  "total_plugin_count": 0,
  "type": "plugin_marketplace_validation_report",
  "valid": false
}