Claude Platform Docs

Update Plugin Marketplace

$client->beta->organization->pluginMarketplaces->update(string marketplaceID, DefaultInstallationPreference defaultInstallationPreference, ?list<AnthropicBeta> betas): PluginMarketplace
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.

Pass it as default_installation_preference. A member's personal marketplace cannot be updated here (403).

Accepted credentials: an Admin API key with the write:plugins scope.

Every request must include the beta header anthropic-beta: ce-plugins-2026-09-01. A request without it returns 404, exactly as if the endpoint did not exist. The Plugins API is in beta and is available to Claude Enterprise organizations only. It is not available to Claude Platform (Claude Console) organizations, or to organizations with HIPAA readiness enabled.

Parameters
marketplaceID: string⁠Path parameter

ID of the plugin marketplace (prefixed marketplace_).

defaultInstallationPreference: DefaultInstallationPreference

The organization-wide installation setting every Plugin in the marketplace without one of its own gets: one of required, auto_install, available, not_available. Once set it can be changed but not removed.

betas?:optional list<AnthropicBeta>⁠Header parameter

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

Returns
class PluginMarketplace { $type = 'plugin_marketplace'; $id; $createdAt; /* 7 more */ }
"plugin_marketplace" type

Always plugin_marketplace.

string id

The plugin marketplace's ID, prefixed marketplace_.

\Datetime createdAt

RFC 3339.

?DefaultInstallationPreference defaultInstallationPreference

Organization plugin marketplace: the organization-wide setting every Plugin in it with no setting of its own gets. Null for a member's personal plugin marketplace. One of required, auto_install, available, not_available; a value this API does not yet name is returned as stored.

?\Datetime lastSyncEndedAt

RFC 3339. When the most recent synchronization attempt to finish did so, whatever its outcome; for a repository plugin marketplace no synchronization has run on yet, when it was created. Null for a plugin marketplace that is not synchronized from a repository.

?string lastSyncReadSha

The commit the last synchronization attempt that reached the repository read, whether or not its content was then accepted (see sync_status); an attempt that ends failed_auth or failed_transient leaves it unchanged. Null until an attempt has first read the repository, and for a plugin marketplace that is not synchronized from a repository.

string name

Fixed for the plugin marketplace's lifetime.

Owner owner

The organization, or the member whose personal plugin marketplace it is.

Source source

Where the plugin marketplace's Plugins come from: manual when they are uploaded; github, gitlab or public_git when they are synchronized from the Git repository the owner connected, into which nothing can be uploaded; directory is Anthropic's own catalog, which this API does not list. A value this API does not yet name is returned as stored.

?SyncStatus syncStatus

Outcome of the plugin marketplace's most recent synchronization: one of success, in_progress, failed_content, failed_transient, failed_auth, failed_limits; a value this API does not yet name is returned as stored. Null until a synchronization is first attempted — so always for a manual plugin marketplace.

Update Plugin Marketplace
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Anthropic\Client;
use Anthropic\Beta\AnthropicBeta;

$client = new Client(apiKey: 'my-anthropic-api-key');

$betaPluginMarketplace = $client
  ->beta
  ->organization
  ->pluginMarketplaces
  ->update(
  'marketplace_id',
  defaultInstallationPreference: 'available',
  betas: [AnthropicBeta::MESSAGE_BATCHES_2024_09_24],
);

var_dump($betaPluginMarketplace);
Returns Examples
Response 200
{
  "id": "marketplace_01HxQ3v9KpZ2mTn8RwLc4Ys7",
  "created_at": "2026-03-14T09:26:53.589793Z",
  "default_installation_preference": "available",
  "last_sync_ended_at": "2026-03-14T09:26:53.589793Z",
  "last_sync_read_sha": "9fceb02d0ae598e95dc970b74767f19372d61af8",
  "name": "engineering-tools",
  "owner": {
    "type": "organization"
  },
  "source": "github",
  "sync_status": "success",
  "type": "plugin_marketplace"
}