2
1
0

Confluence のページコンテンツを API で取得後、そのページ内のユーザメンションに対応する Username / Email address を取得して利用しようとしましたが上手くいきません。

 

ri:userkey を何とかうまく展開出来れば、と思うのですが、下記記事によると、
system-admin で DB に直接 SQL たたけないとキビシイかんじがしますが・・・

別の、ユーザレベルで利用できる手段でのパースは不可能でしょうか。

Find user by Resource identifier

https://community.atlassian.com/t5/Confluence-questions/Find-user-by-Resource-identifier/qaq-p/396528

    Commentコメントを追加...

    2 回答

    1.  
      2
      1
      0

      ひとつ前のとは違いますが、下の記事を辿って、 /rest/api/content/<ID>?expand=body.export_view の output から、

      "body": "export_view": "value" を拾って Parse すれば、わりと普通の Scrapping 感覚で メンション => Username 変換が出来てしまいました。。。

       

      Confluence : userkey to usre name convrsion

      https://community.atlassian.com/t5/Confluence-questions/Confluence-userkey-to-usre-name-convrsion/qaq-p/14068

       

      このスレッドの質問主も試して(失敗してる)ように、本当はシンプルに、

      rest/api/2/user?key=xxxxxxx

      みたいに変換出来たらな、という気もしますが、方法が見つかったのでハッピーです。

       

      1. Kengo Ohsaki

        Unrivaled Patek-san,

        なるほど。その方法でもできるんですね。

        5.10 以上であれば /rest/api/user?key=<ユーザーキー> でシンプルにできますけど

        古いバージョンを利用している感じですかね。

      2. Unrivaled Patek

        あれ、いや新し目なんですが、、 JIRA でなく Confluence の rest で良いですよね?(当たり前か…)

      3. Kengo Ohsaki

        Unrivaled Patek-san,

        わかりました。

        /rest/api/latest/user ですね。本環境もConfluenceなので  Unrivaled Patek-san, は以下で取得できますね。

        https://www.ricksoft.jp/qa/rest/api/latest/user?username=unrivald.patek

        https://www.ricksoft.jp/qa/rest/api/latest/user?key=8a808ad059bc75e0015a123f47760004

         

      4. Unrivaled Patek

        使えました!ステキです!!

        有難うございます

      Commentコメントを追加...
    2.  
      2
      1
      0

      自己レスです。

      サーチしていたら、こんなのが見つかりましたが、これって使えるものでしょうか(自分でもこれから試しますが、同時に有識者の判断も伺いたく…)

       

      Need to convert username to userkey and back

      https://jira.atlassian.com/browse/CRA-1428

       

      In Confluence 5.10 you will be able to use the new /rest/api/user resource.
      In Confluence 5.9, you could use the CQL search resource, with a query along the line of:

      /rest/api/search?cql=user.userkey=ff8080813ef37a38013ef37af7b900a6
      or
      /rest/api/search?cql=user=jsmith
      
      1. Kengo Ohsaki

        はい、使えますよ。

        5.10 以上であれば  /rest/api/user?key=<ユーザーキー>

        5.9で あれば /rest/api/search?cql=user.userkey=<ユーザーキー>

        で取得できますよ。

      Commentコメントを追加...