Content Open With
Content Open With
Box Content Open With UI Elementを使用すると、開発者は、Boxに保存されているコンテンツをパートナーアプリケーションまたはローカルのデスクトップで開くためのドロップダウンを埋め込むことができます。
このElementは、有効化された統合に関する情報をBox APIを使用して取得し、パートナーのサービスを呼び出します。その後、ユーザーはこれらのサービスで操作を行うと、編集したコンテンツはBoxに自動的に保存されます。
Open With Elementに含まれる統合には、Google SuiteおよびBox Editがあります。Google Suiteの統合の詳細については、Boxコミュニティサイトを参照してください。
現在、この要素では、認証用にApp Userのみがサポートされています。
インストール
NPMまたはBox CDN経由でBox UI Elementsをインストールする方法は、こちらを参照してください。
Box Edit
Box Editでは、カスタムアプリケーションに統合するために追加の設定が必要です。Box Editでは、コンテンツをローカルで開くためにデスクトップアプリケーションのBox Toolsを使用します。
- リクエストでは (
https
ドメインからの) セキュアな接続を使用する必要があります。 - アプリケーションのドメインは、Box Toolsで許可する必要があります。手順については、こちらを参照してください。理想的なワークフローでは、Box Toolsもインストールされるインストーラにこれらの手順をバンドルします。
- Safariでは、Box Toolsに接続するためにブラウザの機能拡張が必要です。詳細については、こちらを参照してください。
G Suite
Box for G Suiteの統合を使用するには、有効なG Suiteアカウントが必要です。ユーザーのG SuiteとBoxアカウントを接続するには、App Userのexternal_app_user_id
を、ユーザーのG Suiteアカウントに関連付けられたメールアドレスに更新する必要があります。
App Userのexternal_app_user_id
は、PUT /users/:id
エンドポイントを介して更新できます。
設定
Open With UI Elementを使用する前に、アプリケーションを許可し、Box APIエンドポイントを使用してApp Userのために統合を有効にしておく必要があります。
アプリケーションのアクティブ化
「Open With」UI Elementは、Box Platformを使用して構築するすべての開発者が使用できます。インスタンスに対してこの要素をアクティブ化するには、開発者コンソールでアプリケーションに [統合を有効化] スコープを追加します。
アプリケーションは、APIコールに対してアクティブ化されたら、会社での再認証が必要になります。この操作を実行する手順については、こちらを参照してください。
使用可能な統合のリストの取得
アプリ統合をユーザーに割り当てるには、まず、使用可能な統合のリストを取得します。このGET
リクエストは、次のcURL
リクエストを使用して実行できます。
curl -X GET https://api.box.com/2.0/app_integrations \
-H 'Authorization: Bearer [ACCESS_TOKEN]'
{
"next_marker": null,
"entries": [
{ "type": "app_integration", "id": "10897" },
{ "type": "app_integration", "id": "1338" },
{ "type": "app_integration", "id": "13418" },
{ "type": "app_integration", "id": "3282" }
],
"limit": 100
}
アプリ統合IDを使用して、指定したユーザーに統合を割り当てます。
特定の統合の取得
IDに基づいて、特定の統合に関する追加情報を取得するには、次のGETリクエストを実 行できます。
curl -X GET \
https://api.box.com/2.0/app_integrations/[APP_INTEGRATION_ID] \
-H 'Authorization: Bearer [ACCESS_TOKEN]'
{
"type": "app_integration",
"id": "10897",
"app": {
"type": "app",
"id": "336417"
},
"name": "Edit with G Suite",
"description": "Securely manage your Google Docs, Sheets and Slides in Box",
"executable_item_types": [
"file"
],
"restricted_extensions": [
"docx",
"gdoc",
"xlsx",
"gsheet",
"pptx",
"gslides",
"gslide"
],
"scoped_to": "parent"
}
ユーザーへの統合の追加
有効なApp Userにアプリ統合を追加するには、以下の3つの情報が必要です。
- 有効なサービスアカウントアクセストークン
- 統合を割り当てるApp UserのID
- ユーザーに割り当てるアプリ統合のID
アプリ統合をApp Userに割り当てるには、次のPOST
リクエストを実行できます。
curl -X POST https://api.box.com/2.0/app_integration_assignments \
-H 'Authorization: Bearer [SERVICE_ACCOUNT_TOKEN]' \
-d '{
"assignee": {
"type": "user",
"id": "[APP_USER_ID]"
},
"app_integration": {
"type": "app_integration",
"id": "[APP_INTEGRATION_ID]"
}
}'
{
"type": "app_integration_assignment",
"id": "72048301",
"assignee": {
"type": "user",
"id": "6084519920"
},
"app_integration": {
"type": "app_integration",
"id": "3282"
}
}
JSONレスポンスに含まれるIDは、割り当て後にアプリ統合を管理するために使用できるため、アプリケーションで保存する必要があります。