SecuAAS Docs
ConformVault

API Fichiers

Endpoints fichiers et dossiers

Endpoints fichiers et dossiers

Book: ConformVault — Stockage sécurisé de fichiers | Chapter: Reference API

Endpoints fichiers et dossiers

Fichiers

Tous les endpoints fichiers sont sous /api/v1/clients/:client_id/files.

GET /api/v1/clients/:client_id/files

Liste les fichiers d'un client dans un dossier donne.

Parametres query :

  • folder_id (optionnel) : ID du dossier parent (racine si omis)
  • page (optionnel) : Numero de page (defaut: 1)
  • per_page (optionnel) : Elements par page (defaut: 50)

Reponse :

{
  "files": [
    {
      "id": "uuid",
      "name": "document.pdf",
      "size": 1048576,
      "mime_type": "application/pdf",
      "folder_id": "uuid",
      "encryption_type": "client",
      "uses_custom_key": true,
      "created_at": "2026-02-14T00:00:00Z",
      "updated_at": "2026-02-14T00:00:00Z"
    }
  ],
  "total": 10,
  "page": 1,
  "per_page": 50
}

POST /api/v1/clients/:client_id/files

Upload d'un fichier (multipart/form-data).

Body (form-data) :

  • file : Le fichier binaire
  • folder_id : ID du dossier de destination
  • encrypted_key (optionnel) : DEK chiffree RSA (pour E2E)
  • key_version (optionnel) : Version de la cle RSA utilisee
  • metadata (optionnel) : Metadonnees de chiffrement (JSON)
  • original_checksum (optionnel) : SHA-256 du fichier original

Limite : 25 MB (configurable via MAX_BODY_SIZE override sur la route upload)

GET /api/v1/clients/:client_id/files/:file_id

Recupere les metadonnees d'un fichier.

GET /api/v1/clients/:client_id/files/:file_id/download

Telecharge un fichier. Si le fichier est chiffre cote serveur, il est dechiffre avant envoi. Si chiffre cote client (uses_custom_key=true), le fichier chiffre est retourne tel quel avec les metadonnees de chiffrement dans les en-tetes.

DELETE /api/v1/clients/:client_id/files/:file_id

Supprime un fichier (S3 + metadonnees PostgreSQL).

POST /api/v1/clients/:client_id/files/:file_id/move

Deplace un fichier vers un autre dossier.

{
  "target_folder_id": "uuid"
}

Dossiers

Tous les endpoints dossiers sont sous /api/v1/clients/:client_id/folders.

GET /api/v1/clients/:client_id/folders

Liste les dossiers d'un client.

Parametres query :

  • parent_id (optionnel) : ID du dossier parent (racine si omis)

Reponse :

{
  "folders": [
    {
      "id": "uuid",
      "name": "Documents",
      "parent_id": null,
      "is_system": false,
      "created_at": "2026-02-14T00:00:00Z"
    }
  ]
}

POST /api/v1/clients/:client_id/folders

Cree un nouveau dossier.

{
  "name": "New Folder",
  "parent_id": "uuid"
}

PATCH /api/v1/clients/:client_id/folders/:folder_id

Renomme un dossier.

{
  "name": "Renamed Folder"
}

DELETE /api/v1/clients/:client_id/folders/:folder_id

Supprime un dossier et son contenu (recursif).

POST /api/v1/clients/:client_id/folders/:folder_id/move

Deplace un dossier.

{
  "target_parent_id": "uuid"
}

On this page