Valider le dépôt d'une marketplace de plugins
Vérifiez si une marketplace de plugins hébergée dans un dépôt GitHub public se synchroniserait dans claude.ai, sans la connecter ni la stocker.
Pour vérifier plutôt un fichier .zip du répertoire de la marketplace, utilisez Valider l'archive d'une marketplace de plugins.
Le rapport indique si marketplace.json est bien formé, quels plugins une synchronisation ignorerait et pourquoi, et quels plugins ne se synchroniseraient que partiellement, certains fichiers étant omis. Un dépôt manquant, privé ou ne comportant pas la branche ou le commit indiqué est signalé, et non refusé : la réponse est un rapport avec valid: false. Les sources de plugins situées en dehors de la marketplace sont récupérées anonymement depuis GitHub ; une source privée est donc signalée comme introuvable. Une source hébergée sur un autre hôte n'est pas récupérée ici, et le rapport indique qu'elle sera vérifiée lors de la synchronisation effective de la marketplace.
Rien n'est enregistré dans le flux d'activité de l'API Compliance.
Pour un exemple détaillé, consultez Valider le contenu d'une marketplace dans le guide de l'API Plugins.
Identifiants acceptés : une clé API Admin avec la portée read:plugins ou write:plugins ; read:org_audit et read:compliance_org_data n'y donnent pas accès.
Chaque requête doit inclure l'en-tête bêta anthropic-beta: ce-plugins-2026-09-01. Une requête sans cet en-tête renvoie 404, exactement comme si le point de terminaison n'existait pas. L'API Plugins est en bêta et n'est disponible que pour les organisations Claude Enterprise. Elle n'est pas disponible pour les organisations Claude Platform (Claude Console), ni pour les organisations pour lesquelles la conformité HIPAA est activée.
Parameters
Returns
import os
from anthropic import Anthropic
client = Anthropic(
api_key=os.environ.get(
"ANTHROPIC_API_KEY"
), # This is the default and can be omitted
)
beta_plugin_marketplace_validation_report = (
client.beta.organization.plugin_marketplaces.validate_repository(
repository_url="https://github.com/example-org/example-marketplace",
)
)
print(beta_plugin_marketplace_validation_report.valid){
"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
}Returns Examples
{
"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
}