Skip to content
  • Categories
  • Recent
  • Popular
Collapse
Brand Logo
  1. Home
  2. Categories
  3. Sujets Techniques
  4. [API] Récupération des espaces enfants

[API] Récupération des espaces enfants

Scheduled Pinned Locked Moved Sujets Techniques
2 Posts 2 Posters 33 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • F Offline
    F Offline
    Fnikou
    wrote last edited by Fnikou
    #1

    Bonjour,

    Nous souhaiterions automatiser la gestion des droits sur les espaces de nos bases (espaces parents).

    Pour cela, nous avons besoin d’accéder aux espaces enfants afin de pouvoir créer des groupes d’utilisateurs et les assigner aux espaces correspondants. Or, je ne trouve pas le endpoint permettant de récupérer la liste des sous-espaces.

    Pourriez-vous m’indiquer s’il existe un endpoint prévu à cet effet ou, le cas échéant, m’orienter vers la bonne méthode pour procéder ?

    Bien cordialement,

    1 Reply Last reply
    1
    • R Offline
      R Offline
      Raphaël Badawi
      DEV
      wrote last edited by Raphaël Badawi
      #2

      Bonjour,

      J'en suis contrit, mais en l'état c'est impossible de récupérer tous les espaces descendants d'un espace parent via nos endpoints d'API REST. J'ai référencé un ticket interne pour que ce soit implémenté prochainement.

      Si toutefois vous avez besoin d'un contournement dans l'immédiat, il est possible de bricoler quelque chose en CMIS en "parlant" directement avec Alfresco. Mais je tiens à vous prévenir, ce n'est pas une promenade de santé.


      Tout d'abord il faut récupérer un ticket de session Alfresco :
      POST /alfresco/api/-default-/public/authentication/versions/1/tickets
      en renseignant en payload en JSON les identifiants de l'utilisateur requêtant :

      
      {
        "userId": "simon.gauzy",
        "password": "XXXXX"
      }
      

      le ticket sera retourné dans la clé entry.id de la réponse :

      image.png

      Ensuite :
      GET /alfresco/api/-default-/public/cmis/versions/1.1/browser/root/Sites/EMPLACEMENT/VERS/LE_GROUPE?alf_ticket=TICKET

      Qui retourne tous les descendants à un niveau de l'emplacement considéré.

      Parmi les descendants récupérés, il faut faire un élagage en ne conservant que ceux dont le nom commence par "_". Les noms des entités récupérées se trouvent dans les clés object.properties.cmis:name.value et on peut récupérer leur identifiants GoFAST dans object.properties.gofast:nid.value.

      Et si on souhaite que ce soit récursif, il faut alors répéter l'opération pour chaque élément retenu, jusqu'à ce qu'il n'y ait plus de descendant dont le nom commence par "_".

      Ce qui implique un script un peu "fastidieux", mais ce genre de bricolage marcherait quand même.


      En vous souhaitant une belle fin de journée,
      Respectueusement,

      Raphaël.

      1 Reply Last reply
      0
      Reply
      • Reply as topic
      Log in to reply
      • Oldest to Newest
      • Newest to Oldest
      • Most Votes


      • Login

      • Don't have an account? Register

      • Search
      • First post
        Last post
      0
      • Categories
      • Recent
      • Popular
      • Search