33800 Docs

← Retour

Fix endpoint loading pour API actions

Date : 02/02/2026 21:00 Status : TERMINE Commits : e26aa27 (connectors-api), a0ce369 (connectors-front)

Probleme

Le selecteur d'endpoints dans les pages creation/edition d'actions API ne fonctionnait pas :

  1. Frontend charge les instances via api.getInstances()GET /api/user/instances
  2. La route mappait les champs dans le retour mais omettait connector_type_id
  3. Frontend faisait inst.connector_type_idundefined
  4. api.getEndpoints(undefined)GET /api/connectors/undefined/endpoints → echec
  5. Aucun endpoint ne s'affichait → impossible de creer une action API

Fix applique

Backend (connectors-api/src/index.ts)

Ajout de connector_type_id dans le mapping de GET /api/user/instances :

 return {
   id: inst.id,
   name: inst.name,
+  connector_type_id: inst.connector_type_id,
   connector_type: inst.connector_type,

Frontend (new/index.tsx + edit/index.tsx)

Ajout d'un fallback connector_type (nom du connecteur) quand connector_type_id est absent. L'API getEndpoints() accepte un nom OU un UUID.

-    apiConnectorTypeId.value = inst.connector_type_id || '';
-    if (inst.connector_type_id) {
+    const connectorId = inst.connector_type_id || inst.connector_type;
+    apiConnectorTypeId.value = connectorId || '';
+    if (connectorId) {

Applique dans 3 endroits :

Fichiers modifies

Fichier Modification
connectors-api/src/index.ts +1 ligne : connector_type_id dans mapping instances
connectors-front/src/routes/actions/new/index.tsx Fallback connector_type pour getEndpoints
connectors-front/src/routes/actions/[id]/edit/index.tsx Idem, 2 endroits

Etat des fonctionnalites actions (audit)

Le code des pages new/edit contenait deja toutes les features prevues dans le plan :

Feature Status Details
SSH shell type badges OK Fetch getInstance(), affiche badges os_type + shell_type
SSH type selector (command/script) OK Radio buttons command unique / script multi-lignes
API instance selector OK Select filtre non-SSH, auto-charge endpoints
API endpoint picker OK Select groupé par entity, methode + path + summary
API path params dynamiques OK Inputs pre-remplis avec {{placeholder}}
API query params OK Required + optionnels collapsibles, enum → select
API body template OK Auto-genere depuis requestBody.schema
API input_schema auto OK Genere depuis params required
Transform code editor OK Textarea mono, timeout configurable
Transform test inline OK Input JSON + bouton tester
Transform ctx reference OK Panel collapsible : executeAction, fetch, instances/actions/routines
Transform expressions routines OK Panel collapsible : syntaxe {{trigger.params...}} etc.

Verification