Box 開発者プラットフォーム

はじめに

Box の統合は、Box エクスペリエンス全体を最先端のビジネスアプリケーションと結び付けます。 Box と統合すると、アプリケーションはアプリケーション内から直接、Box ユーザーとコンテンツにアクセスできるようになります。 このクイックスタートガイドでは、API を通じて Box アカウントにアクセスし始めるのに必要なステップを説明しています。

1. 開発者アカウントの作成

Box 統合を構築するには、まず開発者アカウントと、Content API を使用したアプリケーションを作成する必要があります。

  1. サインアップして開発者アカウントを作成します。 Box アカウントをすでにお持ちの場合は、ヘッダーの[使用中のアプリケーション]タブをクリックします。
  2. アプリケーションを作成して、名前を付けます。
  3. [アプリケーションの編集]を選択して、クライアント ID(API キーとも呼ばれる)を取得します。 クライアント ID は、[OAuth2パラメータ]に client_id として表示されます。

2. 自分自身の認証

すぐにご利用いただくには、アプリケーション構成のページで、[アプリケーションの編集]を選択し、[OAuth2パラメータ]で開発者トークンを生成します。 開発者トークンは、1 時間有効で、自分の Box アカウントへのアクセスを提供します。

後で、他の Box ユーザーアカウントの操作を開始する準備ができたら、OAuth 2.0 での手順を参照して、API 呼び出しを行うためのアクセストークンを取得してください。 さらに、認証用の使いやすいメソッドを含むほとんどの開発言語での SDK も用意しています。

3. ユーザーコンテンツのアクセス

開発者トークンでの認証に成功したら、Box アカウントのコンテンツを確認します。 あらゆるアカウントのコンテンツは、ルートフォルダのコンテンツの一覧を表示することで取得できます。すべてのユーザーについて、ルートフォルダは「0」で識別されます。 cURL を使用して、次の呼び出しでこれを行うことができます。

curl https://api.box.com/2.0/folders/0 \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"

マイアカウントでのこの呼び出しへの応答は、次のようになります(下記はサンプルとなります)。

{
    "type": "folder",
    "id": "11446498",
    "sequence_id": "1",
    "etag": "1",
    "name": "Pictures",
    "created_at": "2012-12-12T10:53:43-08:00",
    "modified_at": "2012-12-12T11:15:04-08:00",
    "description": "Some pictures I took",
    "size": 629644,
    "path_collection": {
        "total_count": 1,
        "entries": [
            {
                "type": "folder",
                "id": "0",
                "sequence_id": null,
                "etag": null,
                "name": "All Files"
            }
        ]
    },
    "created_by": {
        "type": "user",
        "id": "17738362",
        "name": "sean rose",
        "login": "sean@box.com"
    },
    "modified_by": {
        "type": "user",
        "id": "17738362",
        "name": "sean rose",
        "login": "sean@box.com"
    },
    "owned_by": {
        "type": "user",
        "id": "17738362",
        "name": "sean rose",
        "login": "sean@box.com"
    },
    "shared_link": {
        "url": "https://www.box.com/s/vspke7y05sb214wjokpk",
        "download_url": "https://www.box.com/shared/static/vspke7y05sb214wjokpk",
        "vanity_url": null,
        "is_password_enabled": false,
        "unshared_at": null,
        "download_count": 0,
        "preview_count": 0,
        "access": "open",
        "permissions": {
            "can_download": true,
            "can_preview": true
        }
    },
    "folder_upload_email": {
        "access": "open",
        "email": "upload.Picture.k13sdz1@u.box.com"
    },
    "parent": {
        "type": "folder",
        "id": "0",
        "sequence_id": null,
        "etag": null,
        "name": "All Files"
    },
    "item_status": "active",
    "item_collection": {
        "total_count": 1,
        "entries": [
            {
                "type": "file",
                "id": "5000948880",
                "sequence_id": "3",
                "etag": "3",
                "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc",
                "name": "tigers.jpeg"
            }
        ],
        "offset": 0,
        "limit": 100
    }
}

4. ファイルのアップロードおよびダウンロード

ユーザーのアカウントの内容を見ることができたので、API を通じて新しいファイルをいくつか追加してみましょう。これはマルチパートのフォームアップロードとして実行する必要があります。cURL で次のようになります。

curl https://upload.box.com/api/2.0/files/content \
 -H "Authorization: Bearer ACCESS_TOKEN" -X POST \
 -F attributes='{"name":"tigers.jpeg", "parent":{"id":"11446498"}}' \
 -F file=@myfile.jpeg

アラート:

ファイル名を指定するときは、「@」記号を忘れないでください。 これにより、cURL がファイルからデータを読み取ることができます。

正常に完了すると、次のような応答が返されます。

{
    "total_count": 1,
    "entries": [
        {
            "type": "file",
            "id": "5000948880",
            "sequence_id": "3",
            "etag": "3",
            "sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc",
            "name": "tigers.jpeg",
            "description": "a picture of tigers",
            "size": 629644,
            "path_collection": {
                "total_count": 2,
                "entries": [
                    {
                        "type": "folder",
                        "id": "0",
                        "sequence_id": null,
                        "etag": null,
                        "name": "All Files"
                    },
                    {
                        "type": "folder",
                        "id": "11446498",
                        "sequence_id": "1",
                        "etag": "1",
                        "name": "Pictures"
                    }
                ]
            },
            "created_at": "2012-12-12T10:55:30-08:00",
            "modified_at": "2012-12-12T11:04:26-08:00",
            "created_by": {
                "type": "user",
                "id": "17738362",
                "name": "sean rose",
                "login": "sean@box.com"
            },
            "modified_by": {
                "type": "user",
                "id": "17738362",
                "name": "sean rose",
                "login": "sean@box.com"
            },
            "owned_by": {
                "type": "user",
                "id": "17738362",
                "name": "sean rose",
                "login": "sean@box.com"
            },
            "shared_link": null,
            "parent": {
                "type": "folder",
                "id": "11446498",
                "sequence_id": "1",
                "etag": "1",
                "name": "Pictures"
            },
            "item_status": "active"
        }
    ]
}

file_id を取得することができたので、この ID を利用できるようになりました。同じファイルを今度はダウンロードして、一連の流れを確認してみましょう。 /files 以下のリソースに次のような GET 要求を実行します。

curl https://api.box.com/2.0/files/FILE_ID/content?version=10849 \
-H "Authorization: Bearer ACCESS_TOKEN"

この要求への応答は、ファイル自体となります。

詳細を表示

これは Box API でできることの最初の段階にしかすぎません。特徴や機能の詳細については、完全な資料をご覧ください。

はじめに