API - Orchestration
L'API Orchestration permet d'exécuter des workflows NeuraFlow et des crews NeuraCrew de manière programmatique.
Scopes Requis
- orchestration:read — Lister et consulter les workflows et crews
- orchestration:write — Exécuter des workflows et crews
Workflows (NeuraFlow) Lister les Workflows GET /api/v1/orchestration/workflows
Réponse :
{ "success": true, "data": [ { "id": 1, "name": "presentation_nodes", "nodes_count": 27, "status": "active", "created_at": "2025-11-04T10:30:00Z" } ] } Détails d'un Workflow GET /api/v1/orchestration/workflows/{id}
Retourne la définition complète du workflow : nœuds, connexions, paramètres.
Exécuter un Workflow POST /api/v1/orchestration/workflows/{id}/execute
Corps de la requête :
{ "input": { "text": "Votre texte d'entrée", "parameters": { "key": "value" } }, "async": false }
Paramètres :
Champ Type Description input object Données d'entrée pour le workflow async boolean true pour exécution asynchrone, false pour synchrone
Réponse (synchrone) :
{ "success": true, "data": { "execution_id": "exec_abc123", "status": "completed", "output": { ... }, "duration_ms": 2450 } }
Réponse (asynchrone) :
{ "success": true, "data": { "execution_id": "exec_abc123", "status": "running" } } Vérifier le Statut d'une Exécution GET /api/v1/orchestration/executions/{execution_id} Crews (NeuraCrew) Lister les Crews GET /api/v1/orchestration/crews Exécuter un Crew POST /api/v1/orchestration/crews/{id}/execute
Corps de la requête :
{ "objective": "Analysez les données de vente du Q1 et produisez un rapport", "context": { "project_id": 1, "additional_data": "..." }, "async": true }
Paramètres :
Champ Type Description objective string Objectif à atteindre par le crew context object Contexte additionnel (projet, données) async boolean Recommandé true car les crews sont souvent longs Historique des Exécutions Lister l'Historique GET /api/v1/orchestration/executions?type=workflow&status=completed&limit=20
Paramètres de filtrage :
Paramètre Valeurs Description type workflow, crew Filtrer par type status running, completed, failed Filtrer par statut limit 1-100 Nombre de résultats (défaut : 20) offset number Pagination Webhooks
Vous pouvez configurer des webhooks pour recevoir des notifications lorsqu'une exécution se termine :
POST /api/v1/orchestration/webhooks { "url": "https://votre-serveur.com/webhook", "events": ["execution.completed", "execution.failed"] } Bonnes Pratiques
- Utilisez le mode asynchrone pour les workflows longs et les crews multi-agents
- Implémentez un polling sur l'endpoint d'exécution pour suivre le statut
- Configurez des webhooks pour éviter le polling intensif
- Gérez les erreurs : vérifiez le champ success et les codes HTTP