Comment obtenir un folder ID à partir de la chaîne d'emplacement
-
J'utilise l'API pour gérer les fichiers. Je peux ajouter des emplacements de fichiers via POST /node/locations. Je peux également obtenir les emplacements des fichiers via GET /node/locations.
La réponse est comme ceci :
GET /node/locations?nid=319389
[
"/Sites/_Groupes/_LOCAL/2023-002",
"/Sites/_Extranet/_2023-001-NRP"
]J'aimerais également supprimer un emplacement d'un fichier. Le problème est que je n'ai aucun moyen d'obtenir un Node ID de dossier à partir d'un emplacement, et je ne peux pas obtenir un emplacement de dossier à partir d'un Node ID de dossier. Est-ce possible avec l'API actuelle?
Merci d'avance!
-
Bonjour @k-georgiev
La notion de nid (Node ID) de dossier n'existe effectivement pas.
Pour supprimer un emplacement de document vous pouvez utiliser une des deux solutions suivantes :
- Utiliser l'API PUT: /api/node/locations
Avec cette méthode vous pouvez définir les emplacements souhaités du document, en excluant donc l'emplacement à supprimer.
Pour le faire dynamiquement vous pouvez par exemple utiliser d'abord l'API GET: /api/node/locations, exclure l'emplacement non désiré et envoyer le résultat dans l'API PUT: /api/node/locations- Utiliser l'API POST: /api/node/locations avec le paramètre delete=1
Avec cette méthode si vous connaissez l'emplacement à supprimer (Ou si vous l'avez récupéré puis filtré depuis l'API GET: /api/node/locations), vous pouvez directement passer le chemin à supprimer des emplacements du noeud en utilisant le paramètre delete=1 dans la requête.
Bonne journée !
Cordialement,
-
Bonjour @jlemangarin
Merci pour l'explication détaillée!
Pourquoi le point de terminaison des emplacements de nœud renvoie-t-il une chaîne d'emplacement alors que tout le reste dans l'API utilise l'ID de nœud de l'emplacement ? Y a-t-il une considération de conception derrière cela?
Bonne journée !
-
Un identifiant de noeud (nid) correspond, pour être précis techniquement, à la page du document sur Drupal (le CMS intégré à GoFAST qui génère entre autre l'interface graphique et lie les composants entre eux).
Le document associé à un noeud a également un identifiant (sur Alfresco) mais il n'est généralement pas utilisé dans nos API REST. On peut par contre le retrouver lorsqu'on attaque en direct l'API CMIS de la GED Alfresco intégrée.
Les emplacements eux par contre n'ont pas d'identifiants, ce sont des "métadonnées" associés aux documents, eux mêmes associés aux noeuds. Nos APIs travaillent avec les identifiants de noeud (nid) et s'occupent ensuite d'appliquer les modifications en GED.
Par contre la confusion vient peut être du fait que les espaces collaboratifs (qui correspondent à des répertoires en GED) ont effectivement également une page sur Drupal, et donc un identifiant de noeud.
N'hésitez pas à revenir vers moi si ce n'est pas clair !
Bonne journée !
Cordialement,