Documentation
Prochaines routes API des bacs à sable
Bientôt disponible. Ces fonctions API ne sont pas encore offertes.
Authentification et préfixe
Utilisez un jeton d’accès bearer ou une clé API de l’espace de travail. Les chemins ci-dessous suivent /v1/customer/tenants/{tenantId}/sandboxes/{sandboxId}. Les permissions ne donnent aucun accès à un autre espace. Runzivo active SSH, les jetons de dépôt et OpenHands séparément. Aucun n’est encore activé.
SSH et accès aux dépôts
- GET /ssh-host: sandboxes:read. 200 avec host_ca_public_key et host_key_alias. Données publiques de confiance, sans ticket de connexion.
- POST /ssh-ticket: sandboxes:write. {public_key}. 201. Ticket à usage unique : 30 secondes. Certificat utilisateur : quinze minutes. Ne journalisez jamais les identifiants.
- GET /ssh?ticket=...: 101 WebSocket. Octets SSH bruts. Utilisez le proxy CLI et conservez la vérification de l’hôte.
- POST /repository-token: {repository, push?}. 200. Un owner/name autorisé. Le champ push vaut false par défaut. La lecture exige sandboxes:write et repositories:read. L’envoi exige sandboxes:write et repositories:write. Aucune livraison automatique au système invité.
Contrat des tâches OpenHands
- GET /agent: 200. POST /agent avec {}: 202. DELETE /agent: 200. Lire l’état, démarrer ou arrêter le serveur. Actif ne confirme pas la disponibilité.
- POST /agent/tasks: {session_id, prompt, model_budget_micro_usd?}. 202. Exige sandboxes:write et ai_chat:use. Le budget est un plafond interne, pas un prix.
- GET /agent/tasks: 200. GET /agent/tasks/output?task_id=ID&after=N: 200 NDJSON. État pour les lecteurs. Événements pour les membres ayant le droit d’écriture.
- POST /agent/tasks/steer: {task_id, prompt}. POST /agent/tasks/pause ou /agent/tasks/resume: {task_id}. Propriétaire seulement. Contrôles mis en file. Ne répétez pas automatiquement un suivi.
- DELETE /agent/tasks?task_id=ID: 200. Les membres ayant le droit d’écriture peuvent annuler la tâche et son serveur.