Claude Platform Docs

Plugin Marketplaces

List Plugin Marketplaces
PluginMarketplaceListPage beta().organization().pluginMarketplaces().list(params = PluginMarketplaceListParams.none(), requestOptions = RequestOptions.none())
GET/v1/organizations/plugin_marketplaces

List the plugin marketplaces Plugins live in, newest first: the organization's own and its members' personal ones.

Get Plugin Marketplace
BetaPluginMarketplace beta().organization().pluginMarketplaces().retrieve(params = PluginMarketplaceRetrieveParams.none(), requestOptions = RequestOptions.none())
GET/v1/organizations/plugin_marketplaces/{marketplace_id}

Retrieve a plugin marketplace by ID.

Update Plugin Marketplace
BetaPluginMarketplace beta().organization().pluginMarketplaces().update(params, requestOptions = RequestOptions.none())
POST/v1/organizations/plugin_marketplaces/{marketplace_id}

Set the default installation setting of one of the organization's own plugin marketplaces. Every Plugin in it without a setting of its own gets this default as its organization-wide setting, including Plugins added later.

Validate Plugin Marketplace Repository
BetaPluginMarketplaceValidationReport beta().organization().pluginMarketplaces().validateRepository(params, requestOptions = RequestOptions.none())
POST/v1/organizations/plugin_marketplaces/validate_repository

Check whether a plugin marketplace held in a public GitHub repository would synchronize into claude.ai, without connecting or storing it.

Validate Plugin Marketplace Archive
BetaPluginMarketplaceValidationReport beta().organization().pluginMarketplaces().validateArchive(params, requestOptions = RequestOptions.none())
POST/v1/organizations/plugin_marketplaces/validate_archive

Check whether a plugin marketplace, uploaded as a .zip of the marketplace directory, would synchronize into claude.ai, without connecting or storing it.

Models
class BetaPluginMarketplace { type = "plugin_marketplace"; id; createdAt; /* 7 more */ }
class BetaPluginMarketplaceValidationPluginError { error; errorCode; name; }
String error

Why the plugin would be skipped by a synchronization.

String errorCode

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

String name

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

class BetaPluginMarketplaceValidationPluginWarning { errorCode; message; }
String errorCode

A stable identifier for the kind of warning.

String message

What would be left out, and why.

class BetaPluginMarketplaceValidationPluginWarnings { name; warnings; }
String name

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

The parts of the plugin a synchronization would leave out.

String errorCode

A stable identifier for the kind of warning.

String message

What would be left out, and why.

class BetaPluginMarketplaceValidationReport { type = "plugin_marketplace_validation_report"; commitSha; manifestError; /* 6 more */ }

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