Aller au contenu principal

enterprise_ai.applications

Source : sdks/python/src/enterprise_ai/applications/__init__.py. Retour à l'index de la référence du SDK Python.

remarque

Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.

Classe ApplicationsClient​

/v1/applications.

Resource

ApplicationsClient.activate​

activate(app_id: str, deployment_id: str) -> Any

Activer un déploiement approuvé. Active le déploiement une fois son approbation accordée (la séparation des tâches est appliquée par le domaine des approbations ; une approbation manquante est auditée comme refus) : le déploiement actif précédent de l'environnement est retiré et l'application passe à active. 409 application_suspended ; 404 application_deployment_not_found. Demande tenant_admin, developer ou application_owner. Audité sous application.deployment.activate avec l'approbateur.

Route : /v1/applications/{app_id}/deployments/{deployment_id}/activate (POST).

NomTypeDéfautRequisDescription
app_idstrouiIdentifiant (UUID) ou nom de l'application.
deployment_idstrouiIdentifiant (UUID) du déploiement.

Retour : Any. Réponse JSON décodée de l'opération « Activer un déploiement approuvé ».

Erreurs levées : les erreurs typées du transport (Erreurs).

ApplicationsClient.create​

create(name: str, kind: str, origin: str | None = None, owner: str | None = None, project: str | None = None, risk_level: str | None = None, agents: list[str] | None = None, models: list[str] | None = None, tools: list[str] | None = None, mcp_servers: list[str] | None = None, plugins: list[str] | None = None, environments: list[str] | None = None) -> Any

Enregistrer une application. Crée l'application (201). Un external_agent est toujours d'origine third_party. Le propriétaire est par défaut l'appelant, le projet l'en-tête X-Project. Un nom déjà utilisé répond 409 conflict. Demande tenant_admin, developer ou application_owner. Audité sous application.create.

Route : /v1/applications (POST).

NomTypeDéfautRequisDescription
namestrouiNom, unique dans le tenant : minuscules, chiffres, ., _, -, 1 à 128 caractères.
kindstrouiagent_app, assistant, workflow ou external_agent.
originstr | NoneNonenoninternal (par défaut) ou third_party ; forcé à third_party pour un external_agent.
ownerstr | NoneNonenonPropriétaire de l'application. Par défaut : l'appelant.
projectstr | NoneNonenonProjet de l'application. Par défaut : l'en-tête X-Project de la requête.
risk_levelstr | NoneNonenonlow, medium (par défaut) ou high.
agentslist[str] | NoneNonenonAgents accordés à l'application (noms ou motifs).
modelslist[str] | NoneNonenonModèles que ses agents externes peuvent utiliser (identifiants ou motifs).
toolslist[str] | NoneNonenonOutils que ses agents externes peuvent invoquer (noms ou motifs comme crm.*).
mcp_serverslist[str] | NoneNonenonServeurs MCP que ses agents externes peuvent appeler (noms ou motifs).
pluginslist[str] | NoneNonenonPlugins accordés à l'application (noms ou motifs).
environmentslist[str] | NoneNonenonEnvironnements où elle peut être déployée (1 à 10). Par défaut ["dev"].

Retour : Any. Réponse JSON décodée de l'opération « Enregistrer une application ».

Erreurs levées : les erreurs typées du transport (Erreurs).

ApplicationsClient.create_external_agent​

create_external_agent(app_id: str, name: str, scopes: list[str] | None = None) -> Any

Enregistrer l'identité d'un agent tiers. Crée une clé d'API avec le rôle agent, liée à l'application et à son projet, avec les scopes tools:invoke, models:invoke plus ceux demandés (201). La clé figure dans api_key et n'est montrée qu'une fois. Demande tenant_admin. Audité sous application.external_agent.register.

Route : /v1/applications/{app_id}/external-agents (POST).

NomTypeDéfautRequisDescription
app_idstrouiIdentifiant (UUID) ou nom de l'application.
namestrouiNom de l'identité : minuscules, chiffres, ., _, - ; la clé est nommée app:<application>:<nom>.
scopeslist[str] | NoneNonenonScopes supplémentaires de la clé (20 au plus), ajoutés à tools:invoke et models:invoke.

Retour : Any. Réponse JSON décodée de l'opération « Enregistrer l'identité d'un agent tiers ».

Erreurs levées : les erreurs typées du transport (Erreurs).

ApplicationsClient.deploy​

deploy(app_id: str, version: str, environment: str, reason: str | None = None) -> Any

Demander un déploiement. Enregistre le déploiement d'une version dans un environnement de l'application et ouvre une approbation application_deployment pour tenant_admin ou security_officer (201, le déploiement porte approval_id). L'environnement doit être déclaré par l'application (400 invalid_request) ; la même version dans le même environnement répond 409 conflict ; une application suspendue ou retirée répond 409 application_suspended. Demande tenant_admin, developer ou application_owner. Audité sous application.deployment.create.

Route : /v1/applications/{app_id}/deployments (POST).

NomTypeDéfautRequisDescription
app_idstrouiIdentifiant (UUID) ou nom de l'application.
versionstrouiVersion à déployer (1 à 100 caractères).
environmentstrouiEnvironnement visé, parmi ceux de l'application (1 à 50 caractères).
reasonstr | NoneNonenonRaison de la demande de déploiement, montrée aux approbateurs (2000 caractères au plus).

Retour : Any. Réponse JSON décodée de l'opération « Demander un déploiement ».

Erreurs levées : les erreurs typées du transport (Erreurs).

ApplicationsClient.developer_kit​

developer_kit(application_id: str | None = None, agent_id: str | None = None, project: str | None = None) -> Any

Obtenir le kit du développeur. Kit du développeur d'une application, d'un agent ou d'un projet : valeurs, états et actions, jamais un secret. Indiquez exactement un paramètre parmi application_id, agent_id et project (400 invalid_request sinon). La réponse contient le subject (avec les modèles, outils, serveurs MCP, bases de connaissances et suites d'évaluation qu'il utilise), les neuf rows, les entrées env d'un fichier d'environnement (la clé d'API n'y est qu'un emplacement marqué secret), un summary des lignes prêtes et les next_steps (créer une clé, lancer les tests, lancer le red team). Une application ou un agent inconnu, ou un projet sans application, répond 404 not_found. Demande un principal de tenant (403 tenant_required) avec developer, application_owner ou tenant_admin (403 forbidden).

Route : /v1/developer/kit (GET).

NomTypeDéfautRequisDescription
application_idstr | NoneNonenonIdentifiant de l'application pour laquelle le kit est construit, 200 caractères au plus. Exclusif de agent_id et project.
agent_idstr | NoneNonenonIdentifiant de l'agent pour lequel le kit est construit, 200 caractères au plus ; ses ressources viennent du manifeste de sa version courante. Exclusif de application_id et project.
projectstr | NoneNonenonNom du projet, 200 caractères au plus : le kit fusionne les ressources de toutes les applications du projet. Exclusif de application_id et agent_id.

Retour : Any. Réponse JSON décodée de l'opération « Obtenir le kit du développeur ».

Erreurs levées : les erreurs typées du transport (Erreurs).

ApplicationsClient.get​

get(app_id: str) -> Any

Lire une application. Renvoie l'application et ses déploiements, du plus ancien au plus récent. 404 application_not_found.

Route : /v1/applications/{app_id} (GET).

NomTypeDéfautRequisDescription
app_idstrouiIdentifiant (UUID) ou nom de l'application.

Retour : Any. Réponse JSON décodée de l'opération « Lire une application ».

Erreurs levées : les erreurs typées du transport (Erreurs).

ApplicationsClient.list​

list() -> Any

Lister les applications. Applications du tenant dans l'ordre des noms, avec type, origine, statut, environnements et ressources accordées. Une seule page.

Route : /v1/applications (GET).

Cet élément ne prend aucun paramètre.

Retour : Any. Réponse JSON décodée de l'opération « Lister les applications ».

Erreurs levées : les erreurs typées du transport (Erreurs).

ApplicationsClient.set_status​

set_status(app_id: str, status: str, reason: str) -> Any

Suspendre ou retirer une application. Passe l'application à suspended ou retired, ainsi que ses déploiements actifs ; tout appel de passerelle de ses agents externes est refusé dès lors. Demande tenant_admin ou security_officer. Audité sous application.suspended ou application.retired.

Route : /v1/applications/{app_id}/status (POST).

NomTypeDéfautRequisDescription
app_idstrouiIdentifiant (UUID) ou nom de l'application.
statusstrouisuspended ou retired.
reasonstrouiRaison (1 à 2000 caractères) ; conservée sur une application suspendue.

Retour : Any. Réponse JSON décodée de l'opération « Suspendre ou retirer une application ».

Erreurs levées : les erreurs typées du transport (Erreurs).