Box APIをユーザ認証(OAuth2.0)で使ってみた。[Postman]
やりたいこと
プログラミング言語の知識はないけど、Box APIを使って連携してみたい。。ってことあると思います。
そんなときのために、Box APIをPostmanで使いたいときのユーザ認証の手順を記載します。
ちなみに、ただただAPIを使いたい場合は、下記の手順で簡単にできます。
今回は、Postmanでゼロからトークンを取得する部分を作ってみたいと思います。
※悪魔で、できるだけ手動。かつ簡単にやってみます。
アプリの作成
Box APIを使用するために、まずはアプリを作成していきます。
Boxの開発者コンソールへログインします。
※本手順では無料プランを使用しています。
[アプリの新規作成]をクリックします。
今回は、[カスタムアプリ]を選択します。
[認証方法]にて、[ユーザ認証(OAuth 2.0)]を選択し、[アプリ名]を入力し、[アプリの作成]をクリックします。
各認証方法については、以下を参照。
※今回はユーザ認証を使ってみます。
ここまですると、アプリが作成されます。
リダイレクトURIの変更
postmanへリダイレクトするために、リダイレクト先を変更しておきます。
https://oauth.pstmn.io/v1/callback
Client IDとClient Secretの確認
Postmanでトークンを取得する際に使用する情報を確認しておきます。
クライアントIDとクライアントシークレットの値をコピーして控えておきます。
Postmanでのトークン発行とトークン利用確認
ユーザ認証を試してみます。
この辺のドキュメントを見ながら進めていきます。
Postmanで新規[HTTP Request]を作成します。
[Authorization]タブを開き、[Type]を[OAuth 2.0]に変更します。
[Configuration New Token]欄を設定します。
- Auth URL
https://account.box.com/api/oauth2/authorize
- Access Token URL
https://api.box.com/oauth2/token
- Client ID
作成したアプリの構成画面にて確認したクライアントIDを入力します。 - Client Secret
作成したアプリの構成画面にて確認したクライアントシークレットを入力します。 - Client Authentication
選択肢から[Send client credentials in body]を選択します。
Boxのログイン画面が開くので、Boxアカウントでログインします。
[Boxへのアクセスを許可]をクリックします。
Postmanへリダイレクトする許可を聞く、ポップアップが表示されるので、[Postmanを開く]をクリックします。
これでブラウザ側での認証操作は完了です。
Postmanにリダイレクトされ、認証に成功した旨表示されるので、[Proceed]をクリックします。
トークンの情報が表示されるので、[Use Token]をクリックします。
[Token]欄に、取得したトークンが入っていることを確認し、リクエストを入力します。
https://api.box.com/2.0/folders/0
★今回はトークンが使えるかを見たいので、トップフォルダの情報を取得するリクエストにしています。
[Send]をクリックし、リクエストを送信します。
statusが[200]になっていることを確認し、[Body]をクリック、レスポンスを展開します。
情報が返ってくることを確認します。
ユーザ認証で、トークンの取得ができることが確認できました。
リクエスト送信
認証が通れば、後はリクエスト送信だけになります。
(ユーザ認証でできる部分だけですが。)
とりあえず、コレクションが欲しいので、以下のページよりコレクションをフォークして使える状態にします。
これで使いたいリクエストを簡単に使えます。
まとめ
以上で、Box APIを使うための準備ができました。
RPAや、iPaaS等で使用する際の検証は、PostmanでOAuth 2.0を分解して試していくのが個人的にやりやすいと思っていますので、ユーザ認証を使用して、Boxと連携するソリューションを構築する場合は、参考にしてみてください!
Discussion