Claude Platform Docs

Validasi Repositori Marketplace Plugin

$ ant beta:organization:plugin-marketplaces validate-repository
POST/v1/organizations/plugin_marketplaces/validate_repository

Memeriksa apakah marketplace plugin yang disimpan di repositori GitHub publik akan tersinkronisasi ke claude.ai, tanpa menghubungkan atau menyimpannya.

Untuk memeriksa .zip dari direktori marketplace sebagai gantinya, gunakan Validasi Arsip Marketplace Plugin.

Laporan menyebutkan apakah marketplace.json terbentuk dengan benar, plugin mana yang akan dilewati oleh sinkronisasi beserta alasannya, dan plugin mana yang hanya akan tersinkronisasi sebagian, dengan beberapa file tidak disertakan. Repositori yang tidak ada, bersifat privat, atau tidak memiliki branch atau commit tersebut dilaporkan, bukan ditolak: responsnya berupa laporan dengan valid: false. Sumber plugin di luar marketplace diambil secara anonim dari GitHub, sehingga sumber privat dilaporkan sebagai tidak ditemukan; sumber di host lain tidak diambil di sini, dan laporan mencatat bahwa sumber tersebut akan diperiksa saat marketplace benar-benar disinkronkan.

Tidak ada yang dicatat di feed aktivitas Compliance API.

Untuk contoh lengkap, lihat Memvalidasi konten marketplace di panduan Plugins API.

Kredensial yang diterima: kunci API Admin dengan scope read:plugins atau write:plugins; read:org_audit dan read:compliance_org_data tidak memberikan akses ini.

Setiap permintaan harus menyertakan header beta anthropic-beta: ce-plugins-2026-09-01. Permintaan tanpa header tersebut mengembalikan 404, persis seolah-olah endpoint tidak ada. Plugins API masih dalam tahap beta dan hanya tersedia untuk organisasi Claude Enterprise. API ini tidak tersedia untuk organisasi Claude Platform (Claude Console), atau untuk organisasi yang mengaktifkan kesiapan HIPAA.

Parameters
--repository-url: string

The https:// URL of a public repository on github.com that holds the marketplace. A URL longer than 2,048 characters, on any other host or scheme, with a port other than 443 or 80, with credentials in it, or that does not name exactly owner/repo (a trailing .git or / is accepted) is a 400. A private or missing repository is reported in the response, not refused.

minLength1
--ref: optional string

The branch to validate the tip of, or the full 40-character SHA of the commit to validate. When omitted, the branch a synchronization would read (usually the repository's default branch); if that is not the default branch, the report's ref says which branch was read. An empty string, a value longer than 255 characters, or one that contains .. or a character other than ASCII letters, digits, ., _, -, +, and /, is a 400. Any other value that is not a 40-character SHA is read as a branch name; if the repository has no such branch, the response is a report with valid: false, not a 400.

minLength1
--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.

Validasi Repositori Marketplace Plugin
ant beta:organization:plugin-marketplaces validate-repository \
  --api-key my-anthropic-api-key \
  --repository-url https://github.com/example-org/example-marketplace
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
}