Documentation
Requêtes de tâches OpenHands
Bientôt disponible. Contrat d’API prévu, sujet à changement. Ces fonctions ne sont pas encore offertes en production.
Authentification et chemin
Préfixe : /v1/customer/tenants/{tenantId}/sandboxes/{sandboxId}. Les requêtes utiliseront un jeton d’accès bearer ou une clé API de l’espace de travail. Les droits de bac à sable et de dépôt indiqués sont des permissions, pas des scopes hérités. Une clé all:all fonctionnera aussi, dans les limites des permissions actuelles de son créateur. Le relais SSH utilise son ticket plutôt qu’un jeton bearer.
POST /agent/tasks
La soumission d’une tâche exigera sandboxes:write, ai_chat:use, la fonction activée et un fournisseur compatible dans l’espace de travail. Le corps JSON exigera session_id (sxe_ et 24 caractères hexadécimaux) et une consigne non vide d’au plus 8192 octets UTF-8. Le champ facultatif model_budget_micro_usd sera un entier positif jusqu’au maximum configuré. Ce sera un plafond de coût interne, pas un prix. La conception gardera les clés du fournisseur hors du bac à sable. Toute personne ayant accès aux commandes du bac à sable obtiendra aussi l’accès IA de la tâche jusqu’à ce budget.
GET et DELETE /agent/tasks
GET lira la dernière tâche avec sandboxes:read ou sandboxes:write et retournera 200. DELETE exigera sandboxes:write et le paramètre obligatoire task_id (UUID). La réponse 200 confirmera l’annulation de la tâche et de son serveur. POST retournera 202. Chaque réussite retournera id (UUID), session_id, stream_id (identifiants sxe_) et status (active, stopped ou failed). Active signifiera en file ou en cours, pas terminée.
Erreurs et limites IA
Tant que la fonction sera désactivée, POST retournera 503 sandbox_agent_unavailable. Un appelant sans ai_chat:use recevra 403 permission_required. Un DELETE dont le task_id ne correspondra pas à la tâche actuelle retournera 409 sandbox_agent_session_changed. Les autres réponses seront 400 invalid_request, 401, 404, 409, 429 sandbox_model_limit et 503 sandboxes_unavailable. GET /agent indiquera la capacité des tâches avec tasks_available et task_unavailable_reason. Un serveur actif ne suffira pas à activer les tâches. Ne relancez pas automatiquement une soumission. Le budget interne ne sera pas un nouveau frais.