ホーム DoRuby BoxのAPIを使って見よう。(その1) ~概要とAPIのことについて
 

BoxのAPIを使って見よう。(その1) ~概要とAPIのことについて

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

Box API を使う上でのポイント4つ

  1. RESTful API
  2. JSON
  3. OAuth2.0
  4. Box Developer アカウント

1.RESTful API とは

ウェブシステムのHTTPでの呼び出しインターフェース
GET、POST、PUT、DELETE等のHTTP標準のメソッドを使い、「何を」「どうする」というようにシンプルな表現されのが特徴です。

a.URL

https://api.box.com/2.0/files/123456789
  files の中の ID:123456789 のファイルを取得
https://api.box.com/2.0/files/123456789/versions
  files の中の ID:123456789 のファイルのバージョンを取得

b.HTTPメソッド(他にもありますが、今回は以下の4つ)

GET
  リソースの獲得
POST
  リソースの作成
PUT
  リソースの更新(状態変更)
DELETE
  リソースの削除

c.curl(データを転送するライブラリ) を使った例

$ curl -X GET https://api.box.com/2.0/files/123456789 

curl については、こちら 見て下さい。

2.JSON とは

JSONとはJavaScript Object Notationの略で、XMLなどと同様のテキストベースのデータフォーマットです。
{} (カッコ)で括られている文字で、整形すると下記のようになります。

  {
      "entries" : [
          {
              "created_at": "2012-08-20T10:20:30-07:00",
              "id": "672259576",
              "modified_at": "2012-11-28T13:14:58-08:00",
              "modified_by": {
                  "id": "183732129",
                  "login": "sean+apitest@box.com",
                  "name": "sean rose",
                  "type": "user"
              },
              "name": "Dragons.js",
              "sha1": "359c6c1ed98081b9a69eb3513b9deced59c957f9",
              "size": 92556,
              "type": "file_version"
          }
      ],
      "total_count": 1
  }

3.OAuth2.0 とは

a.概要

HTTP上で認可を行うためのプロトコル
通常、ログインが必要なサービスを利用する際はログインID/パスワードの情報が必要になります。
下図のようなサイトの場合、あまり問題にはなりませんが、

下図のようにウェブサーバ経由で、BOXへの操作を行う際、
ウェブサーバにBOXのID/パスワードを格納してしまうのは、セキュアな状態とは言えません。
それを解決するための仕組みとして使われるのが OAuth2.0 です。

b.一般的なフロー

利用者によって、BOXのログイン認証を行い、そこで得られるアクセストークンを使用して、
BOX のAPIを使って、各種操作を実行することで、ウェブサーバにID/パスワードを格納する必要がないのです。

4.Box Developer アカウント

Boxの開発を行う上で、デベロッパーサイトよりアカウントを作成して、アプリケーションを作成するため初期設定を行いましょう。

(1)Box Developers サイトより、アカウントを作成して下さい。

(2)マイアプリより、アプリの新規作成を選択

(3)アプリの種類を選択(ここでは、企業統合を選択しておきます)

(4)認証方法を選択(ここでは、標準OAuth2.0(ユーザー認証)を選択しておきます)

(5)アプリの名前をつけて、完了(あとで変更も可能です)

アクセストークン取得に必要な情報

構成情報から、クライアントID、クライアント秘密コード、リダイレクトURLをコピーして下さい。

BOX API reference

BOXでは、下図のようなリファレンスサイトが用意されています。

まとめ

次回は、BOXのAPIを使って、実際に簡単な情報取得処理を作成していきます。

記事を共有
モバイルバージョンを終了