どうもミツシマです。

今回はクラウドストレージである「Box」のAPIをCLI(Windows Powershell)から操作する方法を検証してみました。

以下の公式サイトを参考にしました
Box CLIのインストール


〜検証〜

Box CLIを使用する流れとしては
  1. CLIをクライアントPCへインストールする
  2. Box 「開発者コンソール」よりAPIを使用出来るようにする
  3. Box CLIを使用する
という感じになります。
まずはCLIをクライアントPCへにインストールしていきます。


〜CLIのインストール〜

「https://github.com/box/boxcli/releases」にアクセスしてEXEをダウンロードします。
ここでは64bit版のEXEをダウンロード・インストールしていきます。
01-インストール

02-インストール

03-インストール

04-インストール完了

これでインストールは完了です。
実際にPowershellを起動してコマンドが実行出来るかを確認してみます。
05-コマンド確認

バージョン情報とコマンドヘルプが表示されましたので、正常にインストールされていることがわかります。
これだけだとAPI自体は使用出来ないので、次にAPIの設定を実施していきます。


〜Box API利用設定〜

https://app.box.com/developers/console」にアクセスし、管理者としてログインします。
「アプリの新規作成」よりAPI設定を実施していきます。
※「JWTを使用した設定」というサイトを参考に実施しました。
10-API設定

カスタムアプリ」で設定します。
11-API設定

サーバー認証(JWT使用)」を選択します。
12-API設定

13-API設定

これでカスタムアプリが作成されました。
引き続き作成したカスタムアプリの設定を実施していきます。
アプリアクセスレベル」より「アプリ+Enterpriseアクセス」を選択します。
14-API設定

高度な機能」より「as-userヘッダーを使用してAPI呼び出しを行う」を選択します。
17-API設定

公開キーの追加と管理」より「公開/秘密キーペアを生成」を実行します。
jsonファイルがダウンロードされます。
※キーの情報が記載されているので、このjsonファイルの取り扱いには注意が必要です。
15-API設定

16-jsonファイルダウンロード


ここまでで設定は完了です。
後は「承認」処理を実施していきます。
18-API設定
19-API設定

20-API設定


ここで管理者宛にメールが来ているので、そちらからアプリの承認画面へ遷移していきます。
※もしくは「管理者コンソール」にアクセスして確認も可能です。
21-API設定

22-API設定


以上でAPIの利用設定は完了です!
では実際にBox APIを使用してみましょう!!


〜Box CLIの使用例〜

コマンド例については以下のサイトを参考にしました。
https://github.com/box/boxcli

Powershellを起動します。
まずはAPI接続準備のコマンドを実行します。
> box configure:environments:add PATH_TO_CONFIG_FILE
23-CLIコマンド例

コマンド例にもあるように、ルートフォルダーを取得してみます。
> box folders:get 0
24-CLIコマンド例

ただしデフォルトの状態だと接続しているユーザーがアプリのユーザーなので、そもそもルートフォルダに何もないという結果に。。。。(^_^;)


そこで登場するのが「switch-user」オプションです。
このオプションを入れることで、該当ユーザーのルートフォルダの中身を確認していきたいと思います!
まずは該当ユーザーのユーザーIDを調べるためのコマンドを実行します。
> box users -a
25-CLIコマンド例

この「TESTユーザー01」のルートフォルダを調べたいと思います。
> box configure:environments:switch-user <ユーザーID> --as-user=user
26-CLIコマンド例

27-CLIコマンド例
ちゃんとフォルダが表示されましたね!!
※合計3つと表示されてますが、画面は見切れていて1つしか詳細はわからないと思います(^_^;)


最後に終了する際、念の為使用していたコンフィギュレーションを削除しておきます。
※削除しなければ、引き続きこの設定でCLIが接続・使用可能です。
> box configure:environments:delete default
28-CLIコマンド例


Box CLIを接続・利用出来ることが確認出来たので、今回はこんなところで終わりたいと思います(^o^)
スポンサードリンク