フォルダコラボレーションを取得について

解決済み
解決策を見る
Highlighted
Contributor

フォルダコラボレーションを取得について

お世話になります。

 

フォルダコラボレーションを取得時に

"role"が"owner"の情報を取れないのですが,

どのような手順で取得できるのでしょうか?

 

以上,よろしくお願い致します。

6件の返信6
Highlighted
Box Employee

Re: フォルダコラボレーションを取得について

Box Japan 亀井です。

 

Developerサイト上のCollaborationの中にroleのAttributeが存在しますが、これが見えないということでしょうか?

https://developer.box.com/en/reference/get-collaborations-id/

 

つきましては、できる限り詳細な情報をお書きくださるようお願いします。

 

Highlighted
Contributor

Re: フォルダコラボレーションを取得について

ご返信が遅くなってしまい,申し訳ありません。

 

はい。Developerサイト上のCollaborationの中のroleで,"owner"以外の

"editor", "viewer", "previewer", "uploader", "previewer uploader", "viewer uploader", "co-owner"を取得できることは確認できたのですが,"owner"は見えませんでした。

 

詳細な情報ですが,

javaのSDKを用いて,以下のメソッドを利用してAPIを呼び出しました。

 

BoxFolder folder = new BoxFolder(api, "id");
Collection<BoxCollaboration.Info> collaborations = folder.getCollaborations();

 

認証方法はJWT認証です。

フォルダコラボレーション招待はJWTアプリ作成,承認後に作成されるユーザに対して行っています。

権限は編集者です。

フォルダの所有者はJWTアプリを作成したユーザです。

上記の条件でAPIを呼び出した結果が以下です。

 

{
"total_count": 1,
"entries": [
{
"type": "collaboration",
"id": "xxxx",
"created_by": null,
"created_at": "2019-12-10T16:41:37-08:00",
"modified_at": "2020-01-13T16:54:38-08:00",
"expires_at": null,
"status": "accepted",
"accessible_by": {
"type": "user",
"id": "xxxx",
"name": "JWT2",
"login": "xxx@xxx"
},
"invite_email": null,
"role": "editor",
"acknowledged_at": "2019-12-10T16:41:37-08:00",
"item": {
"type": "folder",
"id": "xxxx",
"sequence_id": "4",
"etag": "4",
"name": "123465"
}
}
]
}

 

以上,よろしくお願い致します。

Highlighted
Box Employee

Re: フォルダコラボレーションを取得について

さて本件についてなのですが、質問に沿えるかわからず、正しく確認する必要はありますが

Ownerはそのフォルダ持ち主であり、コラボレーターではないため、コラボレーターの一覧には表示されないというのが答えになると思いますが、いかがでしょうか?

 

もし、そのフォルダーに携わるすべての人のリストが欲しい場合は、

FolderのAPIを利用して持ち主を取得し、その情報を合わせて利用することで解決することができると思います。

Highlighted
Contributor

Re: フォルダコラボレーションを取得について

ご回答ありがとうございます。

 

持ち主はコラボレータでないという旨承知しました。

FolderのAPIを利用して持ち主を取得します。

 

また一点認識が合っているか確認したいことがあります。

以下に確認したい内容の例を挙げます。

Aさんが所有しているフォルダ1の配下にファイル1があります。

ファイル1に対してBさんを編集者権限でコラボレーション招待します。

次に,フォルダ1に対してアップローダー権限でコラボレーション招待します。

Bさんはファイル1を編集しようとしてもフォルダ1の権限が優先されて編集できません。

 

こちらのフォルダの権限が優先されるという認識は合っているでしょうか?

 

現在,ファイルの権限を取得するときに

親フォルダのフォルダコラボレーションを取得で,

権限("role")を取得してそれをファイルの権限として当てはめています。

(先ほどの例だとファイル1はアップローダー権限扱いにしています。)

 

もし認識違いであればこの方法だと整合性が保たれないのでご指摘頂きたく思います。

以上,よろしくお願い致します。

Highlighted
Box Employee

Re: フォルダコラボレーションを取得について

フォルダーの権限についてはAPIや開発関係ではなく、Boxの利用方法になってしまうため、ここでは言及を避けたいと思いますが、これについてはフリーアカウント等を作っていただき、テストをいただくことでご自分で確認をすることが可能だと思いますので、今作られているシステムの今後の要件変更に備え、まずはご自分の目で仰った要件をテストすることをお勧めいたします。

 

また、コラボレーション関連の資料と、Box Educationの日本語版の資料 がございますのでこちらも合わせてご参照ください。

 

 

Highlighted
Contributor

Re: フォルダコラボレーションを取得について

承知しました。ありがとうございます。