11 routes. Chemins relatifs à https://api.nexus-engine.eu/api/v1.
GET
/connectors
Les connecteurs de l’entreprise (Stripe…) et, pour chacun, les rattachements des projets qu’on a le droit de voir.
RéponseConnecteurDto[]
NoteAucune clé n’en sort : `credentialHint` est le préfixe public de l’accès, jamais son secret.
GET
/projects/:id/connectors
Les connecteurs branchés sur un projet : mode, version d’API épinglée, dernier appel.
POST
/projects/:id/connectors
session de l’application seulement
Rattache un accès du coffre de ce projet à un connecteur.
Corpsslug, puis credentialId (un accès du coffre rattaché à CE projet) ou projectCredentialId (un accès de l’onglet Accès du projet) — l’un ou l’autre, portant une clé ; siteId (obligatoire pour un connecteur de SITE, comme WordPress : le site du projet qui donne l’hôte et le mode) ; apiVersion (facultatif)
RéponseRattachementDto
NoteLe mode (test/production) vient de l’environnement de l’accès — ou du site, pour un connecteur de site —, jamais d’une saisie. Réservé à une session : choisir quelle clé un agent emploiera ne se délègue pas à une clé d’API.
POST
/connectors/links/:linkId/check
Essaie RÉELLEMENT la clé et écrit le résultat sur le rattachement.
POST
/projects/:id/connectors/:slug/request
Passe un appel au service (Stripe…). Nexus pose la clé, la version d’API et l’idempotence, et journalise.
Requêtemode (DEVELOPMENT, PRODUCTION ; par défaut le bac à sable quand il existe)
Corpsmethod (GET, POST, PUT, PATCH, DELETE), path (« /customers », « /wp/v2/pages »), params (objet JSON), cible (le site visé, pour un connecteur de site branché sur plusieurs sites), fichier { nom, mimeType, base64 } (un média envoyé brut comme corps, 12 Mo au plus)
RéponseReponseAppelDto { status, ok, body, apiVersion, ms, idempotent, mode, avertissement, entetes, diagnostic }
NoteUn 4xx du service est rendu tel quel : c’est une réponse, pas une panne. `diagnostic` dit ce qu’un échec veut dire quand une règle du manifeste le reconnaît.
GET
/projects/:id/connectors/calls
Le journal des appels d’un projet — sans les paramètres ni les corps.
Requêteslug, limit (200 au plus)
GET
/connectors/:slug/operations
Ce qui existe dans l’API, depuis la spécification OpenAPI relevée et datée — ou, pour un connecteur de site, depuis l’index VIVANT du site rattaché.
Requêteq (mots cherchés dans le chemin et le résumé), limit (500 au plus), projectId + cible + mode (connecteur de site : le rattachement dont on lit l’index)
RéponseIndexApiDto + total (+ vivant, depuisMemoire)
GET
/connectors/:slug/operations/detail
Le détail d’une opération : description et paramètres attendus.
Requêtepath (obligatoire), method, projectId + cible + mode (connecteur de site)
RéponseDetailOperationDto[]
POST
/connectors/:slug/index
Owner et Admin
Relève maintenant la spécification OpenAPI du connecteur et la réindexe.
Réponse{ ok, operations, erreur }