Aller au contenu

Coffre de l’entreprise

19 routes. Chemins relatifs à https://api.nexus-engine.eu/api/v1.

POST /acces/:id/connexion-navigateur application de bureau seulement

L’accord et la ligne de journal d’une connexion qu’un agent fait faire dans le Navigateur de Nexus avec cette fiche : le serveur vérifie le réglage de la personne et que la page est bien le site de la fiche. Ne rend JAMAIS le secret.

CorpspageUrl (l’adresse de la page où Nexus va taper)
RéponseConnexionNavigateurReponse ({ ok, domaine })
Note403 `CONNEXION_AGENTS_COUPEE` si la personne a coupé le réglage ; 409 si la page n’est pas le site de la fiche ; 404 pour une fiche hors de portée (le compte personnel d’un autre membre compris).
GET /agency-credentials

Les accès du coffre que je vois, sans leurs secrets.

RequêtesiteId, clientId, serverId, projectId (filtres)
RéponseAgencyCredentialDto[]
GET /agency-credentials/compte

Combien d’accès le coffre montre : ceux de l’entreprise et ceux des projets visibles (deux nombres, aucun libellé).

Réponse{ entreprise: number, projets: number }
GET /agency-credentials/:id

Un accès du coffre, sans son secret.

RéponseAgencyCredentialDto
GET /agency-credentials/:id/secret

Révèle le secret d’un accès du coffre (journalisé, plafonné à 30 par heure).

Réponse{ secret }
GET /acces/:id

Retrouve un accès par son seul identifiant, qu’il soit du coffre, d’un projet ou d’une machine (lien de partage) ; sans son secret, et « introuvable » unique quand il n’est pas à portée.

RéponseAccesResoluDto
GET /acces/:id/partages-tiers

Les liens de partage à un tiers d’un accès (coffre, projet ou machine), les plus récents d’abord : état, expiration, consultations. Jamais le jeton.

RéponsePartageTiersDto[]
NoteMême garde que la révélation du secret : « introuvable » pour un accès qu’on ne pourrait pas afficher soi-même.
POST /acces/:id/partages-tiers session de l’application seulement

Crée un lien web qui montre l’accès à un tiers, sans compte, pendant 24 heures (`https://nexus-engine.eu/s#<jeton>`).

CorpsavecNotes (faux par défaut)
RéponsePartageTiersCreeDto
NoteUne révélation : compte dans le plafond de secrets et va au journal (`secret.partage-tiers`). Le lien n’est rendu qu’ici, une fois ; le serveur n’en garde que l’empreinte. Il se ferme seul si le secret change, si l’auteur perd l’accès ou est désactivé.
DELETE /partages-tiers/:id

Révoque un lien de partage à un tiers : la page du tiers le dit aussitôt.

RéponsePartageTiersDto
GET /demandes-acces

Les liens « Recevoir un mot de passe » d’un projet, d’une machine ou d’un site (`cible`, `cibleId`), les plus récents d’abord : état, expiration, essais refusés, accès créé. Jamais le jeton.

RéponseDemandeAccesDto[]
NoteMême garde que l’écriture dans le coffre visé : « introuvable » là où l’on ne pourrait pas déposer un accès soi-même.
POST /demandes-acces session de l’application seulement

Crée un lien web par lequel un tiers SANS COMPTE nous donne un accès, pendant sept jours (`https://nexus-engine.eu/d#<jeton>`).

Corpscible (projet|serveur|site), cibleId, kind, label, environment, message
RéponseDemandeAccesCreeeDto
NoteL’inverse du partage : ici le tiers ÉCRIT dans le coffre. Le lien ne sert qu’une fois, exige un défi signé et sa preuve de travail, et se brûle au bout de dix envois refusés. Il n’est rendu qu’ici, une fois ; le serveur n’en garde que l’empreinte.
DELETE /demandes-acces/:id

Annule un lien « Recevoir un mot de passe » : la page du tiers le dit aussitôt.

RéponseDemandeAccesDto
POST /agency-credentials

Ajoute un accès au coffre, rattaché ou non à un site, un client, une machine, un projet.

Corpskind (SERVER, SSH, FTP, DATABASE, API_KEY, SERVICE, ENV_VAR, FILE, OTHER), label, environment (PRODUCTION, STAGING, DEVELOPMENT, OTHER, défaut OTHER), host, port, username, url, database, notes, secret (jamais rendu ensuite ; pour FILE, le contenu en base64), fileName (FILE : le nom du fichier à reposer), genererSecret (vrai : Nexus tire un secret aléatoire et ignore `secret`), exposeToClaude, siteId, clientId, serverId, projectId
RéponseAgencyCredentialDto
PATCH /agency-credentials/:id

Modifie un accès du coffre.

Corpskind (SERVER, SSH, FTP, DATABASE, API_KEY, SERVICE, ENV_VAR, FILE, OTHER), label, environment (PRODUCTION, STAGING, DEVELOPMENT, OTHER, défaut OTHER), host, port, username, url, database, notes, secret (jamais rendu ensuite ; pour FILE, le contenu en base64), fileName (FILE : le nom du fichier à reposer), genererSecret (vrai : Nexus tire un secret aléatoire et ignore `secret`), exposeToClaude, siteId, clientId, serverId, projectId
RéponseAgencyCredentialDto
PUT /agency-credentials/:id/members Owner et Admin

Remplace les membres à qui l’accès est confié nommément.

CorpsmemberIds
PUT /agency-credentials/:id/contacts Owner et Admin

Ouvre CET accès à des PERSONNES nommées du portail. Une ligne suffit à le faire apparaître chez elles, sans dépendre de « Affiché sur le portail ». Ouvrir à une société l’ouvrirait aussi aux comptes créés ensuite : on nomme donc les personnes. Réservé aux administrateurs.

CorpscontactIds
Réponse{ ok }
DELETE /agency-credentials/:id session de l’application seulement

Supprime un accès du coffre.

POST /agency-credentials/import-personnel/apercu session de l’application seulement

Avant d’importer ses mots de passe : lesquels de ces comptes sont déjà dans MON coffre personnel. Aucun mot de passe dans le corps.

Corpscomptes: [{ libelle, adresse, identifiant }] (5 000 au plus)
Réponse{ presents: number[] }
POST /agency-credentials/import-personnel session de l’application seulement

Range un lot de comptes exportés de son gestionnaire de mots de passe : accès RÉSERVÉS à soi (ni collègues, ni administrateurs), fermés aux agents. Rejouable : un compte déjà là n’est pas doublé ; mot de passe différent laissé ou remplacé.

Corpscomptes: [{ libelle, adresse, identifiant, motDePasse }] (200 au plus), siDifferent: laisser | remplacer, lot?: { rang, total }
Réponse{ crees, misAJour, laisses, identiques }
NoteUne ligne au journal par lot (`acces.import-personnel`), avec des NOMBRES seulement.