corentin_wakdo/.claude/rules/byan-api.md
Imugiii c044d9b48c docs: initial project context and methodology scaffold
Bootstrap commit pour le projet Wakdo (borne de commande RNCP 37805).

Contenu :
- docs/PROJECT_CONTEXT.md : source de verite du projet (scope, stack,
  architecture 2 FQDN, mapping critere RNCP/feature, planning, conventions)
- .claude/CLAUDE.md : constitution du projet (methodologie BYAN)
- .claude/rules/ : protocoles applique (fact-check scientifique, ELO trust,
  merise-agile, hermes-dispatcher, byan-api, byan-agents)
- .gitignore : scope Option C (moteur BYAN ignore, methodologie visible)

Stack : PHP 8.3 + MariaDB 11 + Apache Alpine + Docker + Traefik + GitHub
Actions. Strategie B unifiee (front vanilla + back POO MVC from scratch +
DevOps containerise). Deadline septembre 2026.
2026-04-24 08:17:37 +00:00

4.2 KiB

API byan_web — Reference Compacte

1. Base URL

Base URL dans $BYAN_API_URL env. Dev par defaut : http://localhost:3737. Prod exemple : https://byan-api.stark.a3n.fr. Ne pas inclure /api dans $BYAN_API_URL — les endpoints le contiennent deja.

2. Authentification

Scheme Quand Exemple
ApiKey <key> Token commence par byan_ Authorization: ApiKey byan_xxx
Bearer <jwt> JWT recu via /api/auth/login Authorization: Bearer eyJ...

3. Format reponse

{ "data": "<payload>", "total": "<optionnel>", "error": "<si echec>", "code": "ERR_CODE" }

4. Codes d'erreur critiques

HTTP Code Cause
401 AUTH_REQUIRED Token absent ou invalide
403 FORBIDDEN Action non autorisee
403 FORBIDDEN_RBAC Role insuffisant
404 NOT_FOUND Ressource introuvable
409 SLUG_EXISTS Slug de projet deja utilise
409 USERNAME_EXISTS Username deja pris

5. MCP tools disponibles (PREFERER ces tools au curl)

Tools de base

Tool Usage Auth requise
byan_ping Verifier que l'API repond Non
byan_list_projects Lister les projets de l'utilisateur Oui
byan_import_project Importer un projet local dans BYAN Oui

Projets

Tool Usage Auth requise
byan_api_projects_get Obtenir le detail d'un projet par ID/slug Oui
byan_api_projects_create Creer un nouveau projet Oui

Workflows

Tool Usage Auth requise
byan_api_workflows_list Lister les workflows d'un projet Oui
byan_api_workflows_get Detail d'un workflow par ID Oui
byan_api_workflows_run Declencher l'execution d'un workflow Oui
byan_api_workflow_runs_list Lister les executions d'un workflow Oui
byan_api_workflow_runs_get Detail d'une execution par ID Oui

Knowledge

Tool Usage Auth requise
byan_api_knowledge_list Lister les articles de la base de connaissance Oui
byan_api_knowledge_get Obtenir un article par ID Oui

Memoire

Tool Usage Auth requise
byan_api_memory_list Lister les entrees memoire d'un agent Oui
byan_api_memory_search Recherche semantique dans la memoire Oui

Agents personnalises

Tool Usage Auth requise
byan_api_custom_agents_list Lister les agents custom du projet Oui
byan_api_custom_agents_get Detail d'un agent custom par ID Oui
byan_api_custom_agents_clone_system Cloner un agent systeme en agent custom Oui

Sessions

Tool Usage Auth requise
byan_api_sessions_list Lister les sessions actives Oui
byan_api_sessions_get Detail d'une session par ID Oui
byan_api_sessions_history Historique des messages d'une session Oui

Chat

Tool Usage Auth requise
byan_api_chat_conversations_list Lister les conversations Oui
byan_api_chat_messages_list Lister les messages d'une conversation Oui
byan_api_chat_send Envoyer un message dans une conversation Oui

Recherche et import

Tool Usage Auth requise
byan_api_search Recherche globale (projets, agents, knowledge) Oui
byan_api_import_scan Scanner un dossier local avant import Non
byan_api_import_dry_run Simuler un import sans l'executer Oui

6. Fallback curl (si un tool MCP manque)

curl -H "Authorization: ApiKey $BYAN_API_TOKEN" "$BYAN_API_URL/api/projects"

curl -X POST -H "Authorization: ApiKey $BYAN_API_TOKEN" -H "Content-Type: application/json" \
  -d '{"trigger":"..."}' "$BYAN_API_URL/api/workflows/<id>/run"

7. Patterns courants

Je veux... Tool MCP a appeler
Lister mes projets byan_list_projects
Detail d'un projet byan_api_projects_get
Lancer un workflow byan_api_workflows_run
Chercher dans la memoire byan_api_memory_search
Importer un projet local byan_import_project