Claude Platform Docs

Plugin-Marketplace-Archiv validieren

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

Prüft, ob ein Plugin-Marketplace, hochgeladen als .zip-Datei des Marketplace-Verzeichnisses, in claude.ai synchronisiert werden würde, ohne ihn zu verbinden oder zu speichern.

Um stattdessen ein öffentliches GitHub-Repository zu prüfen, verwende Validate Plugin Marketplace Repository.

Der Bericht gibt an, ob marketplace.json wohlgeformt ist, welche Plugins eine Synchronisierung überspringen würde und warum, und welche Plugins nur teilweise synchronisiert würden, wobei einige Dateien ausgelassen werden. Ein Archiv, das nicht als Marketplace gelesen werden kann, wird gemeldet, nicht abgelehnt: Die Antwort ist ein Bericht mit valid: false. Plugin-Quellen außerhalb des Marketplaces werden anonym von GitHub abgerufen, daher wird eine private als nicht gefunden gemeldet; eine Quelle auf einem anderen Host wird hier nicht abgerufen, und der Bericht vermerkt, dass sie geprüft wird, wenn der Marketplace tatsächlich synchronisiert wird.

Im Aktivitäts-Feed der Compliance API wird nichts protokolliert.

Ein ausgearbeitetes Beispiel findest du unter Marketplace-Inhalte validieren im Leitfaden zur Plugins API.

Akzeptierte Anmeldedaten: ein Admin-API-Key mit dem Scope read:plugins oder write:plugins; read:org_audit und read:compliance_org_data gewähren keinen Zugriff.

Jede Anfrage muss den Beta-Header anthropic-beta: ce-plugins-2026-09-01 enthalten. Eine Anfrage ohne ihn gibt 404 zurück, genau so, als ob der Endpunkt nicht existieren würde. Die Plugins API befindet sich in der Beta und ist nur für Claude Enterprise-Organisationen verfügbar. Sie ist nicht für Claude Platform (Claude Console)-Organisationen oder für Organisationen mit aktivierter HIPAA-Readiness verfügbar.

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.

Plugin-Marketplace-Archiv validieren
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
}