Est-il possible d'organiser les modèles dans des dossiers?

Centre d'Aide

Les dossiers vous aident à organiser vos modèles selon une structure hiérarchique. En plus de les gérer depuis l’application web, vous pouvez utiliser l’API DocuGenerate pour placer des modèles dans des dossiers lors de leur création ou de leur mise à jour, et pour lister les modèles d’un dossier précis.

Dans l’API, un dossier est identifié par son chemin, défini comme un tableau ordonné de noms de dossiers, de la racine jusqu’au dernier niveau. Par exemple, le dossier Legal > Contracts a pour chemin ["Legal", "Contracts"]. Chaque modèle renvoyé par l’API contient son chemin dans la propriété folder, par exemple "folder": ["Legal", "Contracts"], et un modèle sans dossier a un chemin vide "folder": [].

Placer un modèle dans un dossier

Lors de la création d’un modèle, envoyez un champ folder pour chaque niveau du chemin. Les dossiers du chemin qui n’existent pas sont créés automatiquement, vous n’avez donc pas besoin de les créer au préalable :

curl -X 'POST' \
  'https://api.docugenerate.com/v1/template' \
  -H 'Accept: application/json' \
  -H 'Authorization: 491c000c5fad32ed7787005b0723ad55' \
  -H 'Content-Type: multipart/form-data' \
  -F 'file=@Contract.docx' \
  -F 'folder=Legal' \
  -F 'folder=Contracts'

Le chemin peut aussi être envoyé sous forme de chaîne JSON, par exemple -F 'folder=["Legal", "Contracts"]', ou avec le nom de champ folder[] utilisé par certaines bibliothèques HTTP. Les trois formats donnent le même résultat.

Déplacer un modèle vers un autre dossier

Pour déplacer un modèle existant, envoyez son nouveau chemin lors de la mise à jour du modèle. Par exemple, pour déplacer un modèle de son dossier actuel Legal > Contracts vers le dossier Legal > Agreements :

curl -X 'PUT' \
  'https://api.docugenerate.com/v1/template/UgnZ7HeRvVIEC9nDlSbC' \
  -H 'Accept: application/json' \
  -H 'Authorization: 491c000c5fad32ed7787005b0723ad55' \
  -H 'Content-Type: multipart/form-data' \
  -F 'folder=Legal' \
  -F 'folder=Agreements'

Pour sortir un modèle de tout dossier, envoyez un chemin vide :

curl -X 'PUT' \
  'https://api.docugenerate.com/v1/template/UgnZ7HeRvVIEC9nDlSbC' \
  -H 'Accept: application/json' \
  -H 'Authorization: 491c000c5fad32ed7787005b0723ad55' \
  -H 'Content-Type: multipart/form-data' \
  -F 'folder=[]'

Lister les modèles d’un dossier

Pour lister uniquement les modèles d’un dossier lors de la récupération des modèles, répétez le paramètre de requête folder pour chaque niveau du chemin :

curl -X 'GET' \
  'https://api.docugenerate.com/v1/template?folder=Legal&folder=Contracts' \
  -H 'Accept: application/json' \
  -H 'Authorization: 491c000c5fad32ed7787005b0723ad55'

Comme lors du filtrage des modèles dans l’application web, seuls les modèles placés directement dans ce dossier sont renvoyés. Les modèles de ses sous-dossiers ne sont pas inclus, donc ?folder=Legal renvoie les modèles du dossier Legal, mais pas ceux du sous-dossier Legal > Contracts.

Renommer et supprimer des dossiers

L’API gère le dossier de chaque modèle, mais elle ne propose pas d’endpoints pour les dossiers eux-mêmes. Pour renommer ou déplacer un dossier avec tous ses modèles, ou pour supprimer un dossier, utilisez l’application web.