その他
    ホーム 技術発信 DoRuby BoxのAPIを使って見よう。(その4)~【実践編】EXCEL(VBA)からグループと関連ユーザー・フォルダを取得
    BoxのAPIを使って見よう。(その4)~【実践編】EXCEL(VBA)からグループと関連ユーザー・フォルダを取得
     

    BoxのAPIを使って見よう。(その4)~【実践編】EXCEL(VBA)からグループと関連ユーザー・フォルダを取得

    この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。


    0.グループ情報を取得にあたり

    グルーブ管理の権限が必要です。

    EXCEL(VBA)から呼び出す方法は、以下の過去記事を参照して下さい。

    BoxのAPIを使って見よう。(その1)~概要と基礎情報
    BoxのAPIを使って見よう。(その2)~実際にAPIでデータ取得
    BoxのAPIを使って見よう。(その3)~VBAから呼び出す

    1.グループの管理画面(2017/7/7 時点の画面)

    グループの操作は、ウェブ上から操作しやすい設計となっています。

    グループ一覧(TOP)

    管理コンソールを開き、ユーザアイコンを選択して、グループタブを選択します。
    グループの初期画面が、下図のようになります。

    enter image description here

    グループ詳細

    グループ一覧から、対象のグループを選択した詳細画面となります。

    enter image description here

    グループ詳細の変更

    グループ名、グループの説明、権限を設定可能です。

    enter image description here

    ユーザーを編集

    グループに対応するユーザーを追加、またユーザーの持つ権限を変更する事が可能です。

    enter image description here

    共有フォルダの編集

    グループに対応する共有フォルダを追加、また権限を変更する事が可能です。

    enter image description here

    2.グループ情報を取得するAPI

    今回VBAでは、グループ一覧を取得し、グループに関連するユーザー情報一覧や、グループに関連する共有フォルダ一覧を取得して表示したいと思っているので、以下のAPIご紹介します。

    Get Enterprise Groups

    企業のすべてのグループを取得するAPI。※グループを表示する権限が必要です。

    ■接続方法(基本)

    curl https://api.box.com/2.0/groups \
    -H "Authorization: Bearer ACCESS_TOKEN"
    

    ■パラメタ内容

    enter image description here

    ■接続方法(今回は?)

    作成日、更新日、その他権限情報等も取得したいので、fields情報に必要な情報を追加して送信して見ました。

    curl https://api.box.com/2.0/groups?fields=name,created_at,modified_at,invitability_level,member_viewability_level \
    -H "Authorization: Bearer ACCESS_TOKEN"
    
    

    Get Memberships for Group

    指定されたグループメンバー情報すべて返します。
    ※これはグループ管理者だけが利用できることに注意してください。

    ■接続方法(基本)

    curl https://api.box.com/2.0/groups/【GROUP_ID】/memberships \
    -H "Authorization: Bearer ACCESS_TOKEN"
    

    ■パラメタ内容

    enter image description here

    ■レスポンス例(”user”の部分が、ユーザー情報となります)

    enter image description here

    Get Collaborations for Group

    指定されたグループのコラボレーション情報のすべて返します。
    ※これはグループ管理者だけが利用できることに注意してください。

    ■接続方法(基本)

    curl https://api.box.com/2.0/groups/【GROUP_ID】/collaborations \
    -H "Authorization: Bearer ACCESS_TOKEN"
    

    ■パラメタ内容

    enter image description here

    ■レスポンス例(”item” の”type”が、”folder”であれば、共有フォルダです)
    ※このAPIでは、”folder”以外は、無いはずですが。

    enter image description here

    3.EXCEL上での整形結果

    ■グループ情報を出力した結果
    enter image description here

    ■グループに紐付く共有フォルダを出力した結果
    enter image description here

    4.EXCELサンプル

    サンプルを作ってみましたので、試してみたい方はご自由にどうぞ
    サンプルEXCELをダウンロード
    ※VBAのコードは、現時点では非公開です。
    ※2017/10/16バグ修正(ファイル名にv3の記載あり)

    enter image description here

    EXCELを表示したときの初期画面

    enter image description here

    今回使用したAPIのリファレンス情報は、以下参照

    Get Enterprise Groups
    Get Memberships for Group
    Get Collaborations for Group

    まとめ

    次回は、VBA以外から操作してみたいと思います。

    ※アピリッツではBoxの販売パートナーもしてるようです。

    代理店情報

    お問い合わせは、こちら へ