Aller au contenu principal

resources/agents.ts

Source : sdks/typescript/packages/sdk/src/resources/agents.ts. Retour à l'index de la référence du SDK TypeScript.

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.

Interface RunCreate​

Corps de POST /v1/agents/{id}/runs.

Doc

Champs :

NomTypeRequisDescription
task{ objective?: string; input?: unknown; task_id?: string } & DocnonTâche confiée à l'agent : objective, input et task_id sont conservés sur le run.
session_idstringnonSession à laquelle appartient le run.
budgetsDocnonBudgets du run.
retry_policyDocnonPolitique de nouvelle tentative : max_attempts (1 ou plus, 3 par défaut) et backoff_seconds (0 ou plus, 2 par défaut).
startbooleannonDémarrer les services une fois installés. Vrai par défaut.

Classe AgentsResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

AgentsResource.create​

create(body: Doc, opts?: CallOptions)

Enregistrer un agent ou une version. Applique un manifeste Agent : crée l'agent, ou ajoute une version à un agent existant et la rend courante. Le manifeste est validé selon le contrat v1 (422 invalid_manifest) ; le niveau de risque unacceptable est refusé (422 agent_risk_unacceptable) ; la même version avec un autre contenu est refusée (409 version_immutable). apply_status dans la réponse vaut created, version_added ou unchanged. Demande tenant_admin, developer ou application_owner ; l'appelant devient propriétaire ReBAC. Audité sous agent.apply.

Route : /v1/agents (POST).

NomTypeDéfautRequisDescription
bodyDocouiManifeste Agent (kind: Agent, metadata avec nom, version et propriétaire, spec).
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.delete​

delete(id: string, opts?: CallOptions)

Supprimer un agent. Supprime l'agent et ses versions. Demande le rôle tenant_admin et la relation ReBAC owner sur l'agent. Refusé avec 409 agent_has_active_runs tant qu'un run de l'agent est encore actif (en attente, en cours, en pause ou suspendu) ; 404 agent_not_found pour un agent inconnu. Audité sous agent.delete.

Route : /v1/agents/{agent_id} (DELETE).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.get​

get(id: string, opts?: CallOptions)

Lire un agent. Renvoie l'agent, le manifeste de sa version courante et runs, le nombre de ses runs par état. Demande la relation ReBAC viewer sur l'agent. 404 agent_not_found.

Route : /v1/agents/{agent_id} (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.iterate​

iterate(params?: ListParams, opts?: CallOptions)

Lister les agents. Agents du tenant, dans l'ordre des noms, paginés avec cursor. Tout principal du tenant peut l'appeler.

Route : /v1/agents (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.kill​

kill(id: string, body: { reason?: string } = {}, opts?: CallOptions)

Arrêter définitivement un agent. Kill switch : tous les runs actifs de l'agent sont annulés avec l'erreur killed et le statut de l'agent devient killed définitivement (il ne peut plus reprendre). Demande tenant_admin ou security_officer. 409 agent_killed s'il est déjà arrêté. La réponse liste affected_runs. Audité sous agent.kill.

Route : /v1/agents/{agent_id}/kill (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
body{ reason?: string }{}nonRaison facultative, conservée sur l'agent et dans le journal d'audit.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.list​

list(params?: ListParams, opts?: CallOptions)

Lister les agents. Agents du tenant, dans l'ordre des noms, paginés avec cursor. Tout principal du tenant peut l'appeler.

Route : /v1/agents (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.resume​

resume(id: string, opts?: CallOptions)

Demander la reprise d'un agent. Ouvre une approbation de promotion pour ramener un agent suspendu à active et répond 202 avec approval_id et status: pending_approval ; les approbateurs sont tenant_admin ou security_officer. Une fois approuvée, les runs suspendus par la suspension de l'agent reprennent. Demande tenant_admin ou security_officer. Refusé avec 409 agent_killed, ou 409 kill_switch_active tant qu'un confinement SOC retient l'agent (levé uniquement via POST /v1/soc/recoveries).

Route : /v1/agents/{agent_id}/resume (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.run​

run(id: string, body: RunCreate = {}, opts?: CallOptions)

Lancer un run d'un agent. Crée un run et renvoie son Execution Contract (201). Demande tenant_admin, developer ou agent, le scope agents:run et la relation ReBAC can_invoke. Étapes : 1. L'agent doit être active (sinon 409 agent_not_active, audité comme refus). 2. La politique agent.run est évaluée avec le risque, le propriétaire et la finalité de l'agent et la data_classification de la tâche (403 policy_denied). 3. Le budget est celui du manifeste, resserré par budgets (une requête ne peut jamais l'élargir ; 422 invalid_budget). 4. La délégation et l'identité de workload sont rattachées, le run est créé en pending (ou running avec start=true) et audité sous run.create. Une Idempotency-Key répétée renvoie le premier run ; la même clé pour un autre agent répond 409 idempotency_conflict. Un session_id inconnu répond 404 session_not_found.

Route : /v1/agents/{agent_id}/runs (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
bodyRunCreate{}nonTâche du run, session facultative, budget, politique de nouvelle tentative et délégation.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.suspend​

suspend(id: string, body: { reason?: string } = {}, opts?: CallOptions)

Suspendre un agent. Kill switch réversible : le statut de l'agent devient suspended, ses runs actifs passent à suspended et les nouveaux runs sont refusés. Demande tenant_admin ou security_officer. 409 agent_killed pour un agent arrêté. La réponse liste affected_runs. Audité sous agent.suspend.

Route : /v1/agents/{agent_id}/suspend (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
body{ reason?: string }{}nonRaison facultative, conservée sur l'agent et dans le journal d'audit.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.update​

update(id: string, body: Doc, opts?: CallOptions)

Modifier un agent. Modifie les champs de registre de l'agent (propriétaire, niveau de risque, description, libellés) sans créer de version. Demande tenant_admin, developer ou application_owner et la relation ReBAC editor. Une valeur invalide répond 400 invalid_request. Audité sous agent.update avec les noms des champs modifiés.

Route : /v1/agents/{agent_id} (PATCH).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
bodyDocouiChamps à modifier ; ceux omis sont conservés.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

AgentsResource.versions​

versions(id: string, opts?: CallOptions)

Lister les versions d'un agent. Toutes les versions enregistrées de l'agent, de la plus récente à la plus ancienne, avec manifeste, empreinte, auteur et current (vrai pour la version en service). Demande la relation ReBAC viewer. Une seule page.

Route : /v1/agents/{agent_id}/versions (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) ou nom de l'agent.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe RunsResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

RunsResource.addStep​

addStep(id: string, body: Doc, opts?: CallOptions)

Déclarer une étape d'un run. Enregistre une étape déclarée par le runtime et renvoie la décision du Loop Controller : run_state, next_kind, retry, backoff_seconds, error, approval_id et les budgets. Demande tenant_admin, developer ou agent. Étapes : 1. Le Kill Switch Registry et, pour une étape sensible, la chaîne de délégation, la session et la politique sont vérifiés. 2. Un run pending passe à running ; tout autre état que running répond 409 run_not_running. 3. L'usage et le coût s'ajoutent à la consommation de budget (coût dans la devise du run, sinon 400 invalid_request). 4. Une étape qui correspond à autonomy.human_approval_for sans approval_id reste pending, une approbation est ouverte et le run passe à waiting_approval ; une étape de type approval à l'état pending ouvre une approbation avec quorum. 5. Les budgets, le nombre maximal d'étapes et les nouvelles tentatives décident de l'état suivant (failed ou timed_out en cas de dépassement).

Route : /v1/runs/{run_id}/steps (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du run.
bodyDocouiL'étape : type, état, usage, coût, erreur et indications d'état du run.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.cancel​

cancel(id: string, body: { reason?: string } = {}, opts?: CallOptions)

Annuler un run. Fait passer le run à cancelled avec l'erreur cancelled ; ses runs de sous-agents actifs sont aussi annulés. Demande tenant_admin, developer, agent ou security_officer. Un run déjà terminé répond 409 invalid_transition. Audité sous run.transition.

Route : /v1/runs/{run_id}/cancel (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du run.
body{ reason?: string }{}nonRaison facultative de l'annulation.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.create​

create(agentId: string, body: RunCreate = {}, opts?: CallOptions)

Lancer un run d'un agent. Crée un run et renvoie son Execution Contract (201). Demande tenant_admin, developer ou agent, le scope agents:run et la relation ReBAC can_invoke. Étapes : 1. L'agent doit être active (sinon 409 agent_not_active, audité comme refus). 2. La politique agent.run est évaluée avec le risque, le propriétaire et la finalité de l'agent et la data_classification de la tâche (403 policy_denied). 3. Le budget est celui du manifeste, resserré par budgets (une requête ne peut jamais l'élargir ; 422 invalid_budget). 4. La délégation et l'identité de workload sont rattachées, le run est créé en pending (ou running avec start=true) et audité sous run.create. Une Idempotency-Key répétée renvoie le premier run ; la même clé pour un autre agent répond 409 idempotency_conflict. Un session_id inconnu répond 404 session_not_found.

Route : /v1/agents/{agent_id}/runs (POST).

NomTypeDéfautRequisDescription
agentIdstringouiIdentifiant (UUID) ou nom de l'agent.
bodyRunCreate{}nonTâche du run, session facultative, budget, politique de nouvelle tentative et délégation.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.get​

get(id: string, opts?: CallOptions)

Lire un run. Renvoie l'Execution Contract v1 du run : agent et version, tâche, état, étapes, limites et consommation de budget, erreurs, politique de nouvelle tentative, informations de reprise et trace. 404 run_not_found.

Route : /v1/runs/{run_id} (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du run.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.iterate​

iterate(params?: ListParams, opts?: CallOptions)

Lister les runs. Runs du tenant, du plus récent au plus ancien, paginés avec cursor. Filtres : agent_id (identifiant ou nom ; agent en est un alias), state, session_id, parent_run_id. Un état inconnu ou un UUID mal formé répond 400 invalid_request.

Route : /v1/runs (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.list​

list(params?: ListParams, opts?: CallOptions)

Lister les runs. Runs du tenant, du plus récent au plus ancien, paginés avec cursor. Filtres : agent_id (identifiant ou nom ; agent en est un alias), state, session_id, parent_run_id. Un état inconnu ou un UUID mal formé répond 400 invalid_request.

Route : /v1/runs (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.replay​

replay(id: string, opts?: CallOptions)

Rejouer un run. Renvoie l'historique complet d'un run pour revue : son Execution Contract, ses étapes, ses points de reprise, les événements d'audit qui le citent et une timeline unique triée par date (événements du run et d'audit). Demande tenant_admin, developer, agent, auditor ou security_officer. Lecture seule : rien n'est réexécuté.

Route : /v1/runs/{run_id}/replay (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du run.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.resume​

resume(id: string, body: { checkpoint_id?: string; strategy?: string } = {}, opts?: CallOptions)

Reprendre un run. Ramène à running un run suspended, failed, timed_out ou waiting_input (sinon 409 invalid_transition). Demande tenant_admin, developer ou agent ; l'agent doit être actif (409 agent_not_active). Stratégies : 1. from_last_checkpoint (par défaut, sauf pour waiting_input) : reprendre depuis checkpoint_id ou le dernier point de reprise (409 no_checkpoint s'il n'y en a pas). 2. restart_step (par défaut pour waiting_input) : rejouer l'étape courante. 3. restart_run : tout recommencer avec la consommation de budget remise à zéro. Un run en échec sur budget_exceeded, max_steps_exceeded, killed ou approval_rejected ne peut utiliser que restart_run (409 run_not_resumable). Renvoie le run et le point de reprise utilisé.

Route : /v1/runs/{run_id}/resume (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du run.
body{ checkpoint_id?: string; strategy?: string }{}nonPoint de reprise et stratégie de reprise facultatifs.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

RunsResource.steps​

steps(id: string, opts?: CallOptions)

Lister les étapes d'un run. Étapes du run dans l'ordre, chacune avec seq, type, état, tentative, jetons, coût et erreur le cas échéant. Une seule page. 404 run_not_found.

Route : /v1/runs/{run_id}/steps (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du run.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe CheckpointsResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

CheckpointsResource.create​

create(runId: string, body: Doc, opts?: CallOptions)

Enregistrer un point de reprise. Enregistre un état du run avec le numéro de séquence suivant et la séquence d'étape courante, pour que le run puisse reprendre à partir de là. Demande tenant_admin, developer ou agent. Refusé avec 409 run_finished sur un run succeeded ou cancelled. Émet checkpoint.created ; audité sous run.checkpoint.

Route : /v1/runs/{run_id}/checkpoints (POST).

NomTypeDéfautRequisDescription
runIdstringouiIdentifiant (UUID) du run.
bodyDocouiÉtat à enregistrer et libellé facultatif.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

CheckpointsResource.get​

get(id: string, opts?: CallOptions)

Lire un point de reprise. Renvoie un point de reprise : run, numéro de séquence, séquence d'étape au moment de l'enregistrement, libellé et état enregistré. 404 checkpoint_not_found.

Route : /v1/checkpoints/{checkpoint_id} (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du point de reprise.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

CheckpointsResource.list​

list(runId: string, opts?: CallOptions)

Lister les points de reprise d'un run. Points de reprise du run dans l'ordre de séquence. Une seule page. 404 run_not_found.

Route : /v1/runs/{run_id}/checkpoints (GET).

NomTypeDéfautRequisDescription
runIdstringouiIdentifiant (UUID) du run.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Interface HeartbeatResponse​

Sémantique partagée du heartbeat : l'exécution DOIT s'arrêter quand action vaut stop.

Doc

Champs :

NomTypeRequisDescription
run_idstringouiIdentifiant du run pour lequel le heartbeat a été envoyé.
statestringouiÉtat courant du run.
agent_status"active" | "suspended" | "killed"ouiStatut de l'agent : active, suspended ou killed.
action"continue" | "stop"ouicontinue ou stop ; l'exécution doit s'arrêter sur stop.
reasonstring | nullouiRaison de l'action. Inscrite dans le journal d'audit avec l'acteur et l'heure.

Classe HeartbeatsResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

HeartbeatsResource.send​

send(runId: string, body: { step?: string; progress?: Doc | number; message?: string; worker?: string } & Doc = {}, opts?: CallOptions)

Envoyer un heartbeat de run. Enregistre que le runtime est vivant et lui indique s'il doit continuer : action vaut continue, ou stop avec une reason (run_cancelled, run_terminal, run_suspended, agent_killed, agent_suspended). La réponse donne aussi stale_after_seconds. Un run terminé n'est pas mis à jour. Demande tenant_admin, developer ou agent. Audité seulement pour le premier heartbeat d'un run et quand le runtime reçoit l'ordre d'arrêter.

Route : /v1/runs/{run_id}/heartbeat (POST).

NomTypeDéfautRequisDescription
runIdstringouiIdentifiant (UUID) du run.
body{ step?: string; progress?: Doc | number; message?: string; worker?: string } & Doc{}nonInformations de progression facultatives.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

HeartbeatsResource.stale​

stale(params?: ListParams, opts?: CallOptions)

Lister les heartbeats des runs. Vivacité des runs censés envoyer des heartbeats (running et waiting_input). Par défaut, seuls les runs sans heartbeat dans le délai sont renvoyés, avec active, stale_count et stale_after_seconds. Avec format=prometheus, la réponse est un texte d'exposition Prometheus (eai_runs_total, eai_runs_active, eai_runs_stale, eai_heartbeat_stale_threshold_seconds).

Route : /v1/heartbeats (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe SubagentsResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

SubagentsResource.cancel​

cancel(subagentRunId: string, body: { reason?: string } = {}, opts?: CallOptions)

Annuler un run. Fait passer le run à cancelled avec l'erreur cancelled ; ses runs de sous-agents actifs sont aussi annulés. Demande tenant_admin, developer, agent ou security_officer. Un run déjà terminé répond 409 invalid_transition. Audité sous run.transition.

Route : /v1/runs/{run_id}/cancel (POST).

NomTypeDéfautRequisDescription
subagentRunIdstringouiIdentifiant (UUID) du run.
body{ reason?: string }{}nonRaison facultative de l'annulation.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SubagentsResource.delegate​

delegate(runId: string, body: { agent: string; task: unknown; budgets?: Doc }, opts?: CallOptions)

Lancer un run de sous-agent. Lance un run enfant depuis un parent pending ou running (sinon 409 run_not_running) et renvoie son Execution Contract. Demande tenant_admin, developer ou agent et le scope agents:run. Contrôles, dans l'ordre : le Kill Switch Registry ; la profondeur selon autonomy.max_depth (1 par défaut, 409 subagent_depth_exceeded) ; le nombre d'enfants selon autonomy.max_subagents (3 par défaut, 409 subagent_count_exceeded) ; l'agent enfant selon la liste subagents du manifeste parent (403 subagent_not_allowed) ; la délégation du parent. Le budget de l'enfant ne peut dépasser ce qu'il reste au parent, l'enfant rejoint la session du parent et un parent en cours enregistre une étape subagent.

Route : /v1/runs/{run_id}/subagents (POST).

NomTypeDéfautRequisDescription
runIdstringouiIdentifiant (UUID) du run parent.
body{ agent: string; task: unknown; budgets?: Doc }ouiAgent enfant, tâche et budget.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SubagentsResource.list​

list(runId: string, opts?: CallOptions)

Lister les runs de sous-agents. Résumés des runs enfants lancés par ce run, du plus ancien au plus récent. Une seule page. 404 run_not_found.

Route : /v1/runs/{run_id}/subagents (GET).

NomTypeDéfautRequisDescription
runIdstringouiIdentifiant (UUID) du run parent.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SubagentsResource.spawn​

spawn(runId: string, body: Doc, opts?: CallOptions)

Lancer un run de sous-agent. Lance un run enfant depuis un parent pending ou running (sinon 409 run_not_running) et renvoie son Execution Contract. Demande tenant_admin, developer ou agent et le scope agents:run. Contrôles, dans l'ordre : le Kill Switch Registry ; la profondeur selon autonomy.max_depth (1 par défaut, 409 subagent_depth_exceeded) ; le nombre d'enfants selon autonomy.max_subagents (3 par défaut, 409 subagent_count_exceeded) ; l'agent enfant selon la liste subagents du manifeste parent (403 subagent_not_allowed) ; la délégation du parent. Le budget de l'enfant ne peut dépasser ce qu'il reste au parent, l'enfant rejoint la session du parent et un parent en cours enregistre une étape subagent.

Route : /v1/runs/{run_id}/subagents (POST).

NomTypeDéfautRequisDescription
runIdstringouiIdentifiant (UUID) du run parent.
bodyDocouiAgent enfant, tâche et budget.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe A2AResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

A2AResource.inbox​

inbox(params: { recipient: string; unread?: boolean; limit?: number }, opts?: CallOptions)

Lire une boîte de réception A2A. Renvoie les messages A2A adressés à recipient, du plus ancien au plus récent, chacun avec verified (la signature HMAC-SHA256 de l'enveloppe correspond à la clé du tenant). La lecture marque les messages renvoyés comme lus. Une seule page (next_cursor vaut toujours null).

Route : /v1/a2a/inbox (GET).

NomTypeDéfautRequisDescription
params{ recipient: string; unread?: boolean; limit?: number }ouiChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

A2AResource.send​

send(body: { to: string; type: "request" | "response" | "event"; from?: string; payload?: unknown; conversation_id?: string; in_reply_to?: string } & Doc, opts?: CallOptions)

Envoyer un message A2A. Envoie un message signé d'agent à agent (enveloppe a2a.v1, signature HMAC-SHA256 propre au tenant). Demande tenant_admin, developer ou agent. Étapes : 1. to et from sont résolus : agent:<nom> ou run:<id> (400 invalid_request sinon). Sans from, l'expéditeur est le principal appelant. 2. Un expéditeur run: doit être un run créé par l'appelant (ou l'appelant est tenant_admin, sinon 403 forbidden) et non terminé (409 run_finished). 3. La politique agent.a2a.send est évaluée et la charge utile est filtrée comme contenu non fiable ; une injection de prompt est refusée avec prompt_injection_blocked après enregistrement de l'événement de sécurité. 4. L'enveloppe est déposée dans la boîte du destinataire et auditée sous a2a.send.

Route : /v1/a2a/messages (POST).

NomTypeDéfautRequisDescription
body{ to: string; type: "request" | "response" | "event"; from?: string; payload?: unknown; conversation_id?: string; in_reply_to?: string } & DocouiDestinataire, type de message, charge utile et fil de conversation facultatif.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe SessionsResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

SessionsResource.create​

create(body: Doc = {}, opts?: CallOptions)

Ouvrir une session. Ouvre une session de conversation, détenue par user_id ou par l'appelant. Ouvrir une session pour un autre utilisateur demande tenant_admin ou agent (403 forbidden). Demande tenant_admin, developer ou agent. 404 agent_not_found pour un agent_id inconnu. Audité sous session.create.

Route : /v1/sessions (POST).

NomTypeDéfautRequisDescription
bodyDoc{}nonAgent, propriétaire, canal, titre, métadonnées et durée de vie de la session.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SessionsResource.delete​

delete(id: string, opts?: CallOptions)

Supprimer une session. Supprime la session et ses messages. Demande tenant_admin, developer ou agent, et l'appelant doit voir la session (son propriétaire, ou tenant_admin, auditor, security_officer, agent) ; sinon 404 session_not_found. Audité sous session.delete.

Route : /v1/sessions/{session_id} (DELETE).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) de la session.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SessionsResource.get​

get(id: string, opts?: CallOptions)

Lire une session. Renvoie une session. Visible par son propriétaire, par tenant_admin, auditor, security_officer et par le rôle agent ; sinon 404 session_not_found.

Route : /v1/sessions/{session_id} (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) de la session.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SessionsResource.list​

list(params?: ListParams, opts?: CallOptions)

Lister les sessions. Sessions, de la plus récente à la plus ancienne, paginées avec cursor. Un appelant voit ses propres sessions ; tenant_admin, auditor et security_officer voient toutes les sessions du tenant.

Route : /v1/sessions (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SessionsResource.listMessages​

listMessages(id: string, params?: ListParams, opts?: CallOptions)

Lister les messages d'une session. Messages dans l'ordre, paginés avec cursor. after (identifiant de message ou horodatage) permet à un runtime de ne récupérer que les nouveaux messages ; un identifiant inconnu ou un horodatage mal formé répond 400 invalid_request.

Route : /v1/sessions/{session_id}/messages (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) de la session.
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SessionsResource.sendMessage​

sendMessage(id: string, body: { role?: string; content: unknown } & Doc, opts?: CallOptions)

Ajouter un message à une session. Ajoute un message avec le numéro de séquence suivant. La session doit être ouverte et non expirée (409 session_closed). Demande tenant_admin, developer ou agent. L'événement d'audit session.message.add ne garde que le rôle et la longueur, jamais le contenu.

Route : /v1/sessions/{session_id}/messages (POST).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) de la session.
body{ role?: string; content: unknown } & DocouiRôle, contenu et métadonnées du message.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe SchedulesResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

SchedulesResource.create​

create(body: { cron: string; agent_id: string; enabled?: boolean; timezone?: string; input?: unknown } & Doc, opts?: CallOptions)

Créer une planification. Planifie des runs d'un agent à partir d'une expression cron évaluée dans un fuseau horaire ; la première échéance next_run_at est calculée (422 invalid_cron). Quand Temporal est configuré, la planification y est créée (503 scheduler_unavailable en cas d'échec). Demande tenant_admin, developer ou application_owner. 404 agent_not_found. Audité sous schedule.create.

Route : /v1/schedules (POST).

NomTypeDéfautRequisDescription
body{ cron: string; agent_id: string; enabled?: boolean; timezone?: string; input?: unknown } & DocouiAgent, expression cron, fuseau horaire, entrée du run et activation.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SchedulesResource.delete​

delete(id: string, opts?: CallOptions)

Supprimer une planification. Supprime la planification ; elle ne lance plus aucun run. Demande tenant_admin, developer ou application_owner. Quand la planification est portée par Temporal, elle y est aussi supprimée (503 scheduler_unavailable si Temporal est injoignable). 404 schedule_not_found. Audité sous schedule.delete.

Route : /v1/schedules/{schedule_id} (DELETE).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) de la planification.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SchedulesResource.list​

list(params?: ListParams, opts?: CallOptions)

Lister les planifications. Planifications cron du tenant, de la plus ancienne à la plus récente, éventuellement pour un seul agent. Une seule page.

Route : /v1/schedules (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SchedulesResource.update​

update(id: string, body: Doc, opts?: CallOptions)

Modifier une planification. Modifie l'expression cron, le fuseau horaire, l'entrée ou l'activation. La prochaine échéance est recalculée (422 invalid_cron pour une expression ou un fuseau invalide) et la planification Temporal est mise à jour quand Temporal la porte (503 scheduler_unavailable). Demande tenant_admin, developer ou application_owner. Audité sous schedule.update.

Route : /v1/schedules/{schedule_id} (PATCH).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) de la planification.
bodyDocouiChamps à modifier ; ceux omis sont conservés.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe TriggersResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

TriggersResource.create​

create(body: { subject: string; agent_id: string; filter?: string } & Doc, opts?: CallOptions)

Créer un déclencheur. Lance un run de l'agent pour chaque événement publié dont le sujet correspond (jokers NATS * et > admis) et dont la charge utile passe le filtre. Demande tenant_admin, developer ou application_owner. 422 invalid_subject ou invalid_filter ; 404 agent_not_found. Audité sous trigger.create.

Route : /v1/triggers (POST).

NomTypeDéfautRequisDescription
body{ subject: string; agent_id: string; filter?: string } & DocouiAgent, sujet et filtre facultatif sur la charge utile.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

TriggersResource.delete​

delete(id: string, opts?: CallOptions)

Supprimer un déclencheur. Supprime le déclencheur sur événement ; les événements correspondants ne lancent plus de run. Demande tenant_admin, developer ou application_owner. 404 trigger_not_found. Audité sous trigger.delete.

Route : /v1/triggers/{trigger_id} (DELETE).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) du déclencheur.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

TriggersResource.list​

list(params?: ListParams, opts?: CallOptions)

Lister les déclencheurs. Déclencheurs sur événement du tenant, du plus ancien au plus récent : agent, sujet et filtre. Une seule page.

Route : /v1/triggers (GET).

NomTypeDéfautRequisDescription
paramsListParamsnonChamps supplémentaires fusionnés dans la requête.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe EventsResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

EventsResource.publish​

publish(body: { subject: string; payload?: unknown; headers?: Record<string, string> } & Doc, opts?: CallOptions)

Publier un événement. Publie un événement (202) : sur NATS JetStream quand il est configuré, sinon dans l'outbox de la plateforme. Le contexte de trace W3C courant est ajouté aux en-têtes. Chaque déclencheur dont le sujet et le filtre correspondent lance un run de son agent (idempotent par événement et déclencheur) ; la réponse les liste dans triggered, avec skipped et un code d'erreur quand un run n'a pas pu démarrer. Demande tenant_admin, developer ou agent. 422 invalid_subject. Audité sous event.publish.

Route : /v1/events/publish (POST).

NomTypeDéfautRequisDescription
body{ subject: string; payload?: unknown; headers?: Record<string, string> } & DocouiSujet, charge utile et en-têtes de l'événement.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

Classe SandboxResource​

Agents. Registre des agents du tenant et exécution côté serveur de leurs runs : étapes, budgets, points de reprise, heartbeats, sous-agents, messages d'agent à agent (A2A), sessions de conversation, planifications cron, déclencheurs sur événement et exécutions en sandbox.

Resource

SandboxResource.execute​

execute(body: { image: string; command?: string[]; env?: Record<string, string>; profile?: "gvisor" | "kata" | "wasm" | "none"; limits?: Doc; run_id?: string } & Doc, opts?: CallOptions)

Exécuter une commande en sandbox. Crée une exécution en sandbox : l'image et la commande tournent comme Job Kubernetes avec la classe de runtime du profil (gVisor, Kata, Wasm) quand Kubernetes est configuré (status: submitted, ou failed si la soumission échoue). Demande tenant_admin, developer ou agent ; le profil none demande tenant_admin (403). Un profil, une image ou des limites invalides répondent 422 invalid_sandbox. L'usage est mesuré et la demande auditée sous sandbox.execute.

Route : /v1/sandbox/executions (POST).

NomTypeDéfautRequisDescription
body{ image: string; command?: string[]; env?: Record<string, string>; profile?: "gvisor" | "kata" | "wasm" | "none"; limits?: Doc; run_id?: string } & DocouiProfil, image, commande, environnement et limites de ressources.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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

SandboxResource.get​

get(id: string, opts?: CallOptions)

Lire une exécution en sandbox. Renvoie l'exécution en sandbox : profil, image, commande, limites, spécification de Job Kubernetes générée, statut, exécuteur et résultat. 404 sandbox_execution_not_found.

Route : /v1/sandbox/executions/{execution_id} (GET).

NomTypeDéfautRequisDescription
idstringouiIdentifiant (UUID) de l'exécution en sandbox.
optsCallOptionsnonOptions de l'appel (requête, clé d'idempotence, traceparent, en-têtes).

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