Box Developerドキュメント

呼び出しURL

ガイド Box Skills 呼び出しURL

呼び出しURL

新しいBox Skillsアプリケーションの作成時に、invocation_urlを指定するよう求められます。このURLは、Skillsアプリが監視するフォルダ内にファイルがアップロード、コピー、移動されたときに、Boxからイベント通知ペイロードが送信される公開ウェブアドレスです。

この通知をリッスンしているウェブサイトまたはアプリケーションは、Box上のファイルと、ファイルからインサイトを取得するために使用されている機械学習システムなどのシステムの間のブリッジとして機能します。

要件

  • 呼び出しURLは一般公開する必要があります。localhostまたは127.0.0.1のアドレスにはBoxのサーバーからアクセスできないため、通知を送信できません。
  • 呼び出しURLの背後にあるサーバーは、HTTP POSTリクエストをリッスンしている必要があります。Box Skillsは、JSON本文を使用したPOSTリクエストを介してイベント通知を送信します。

ホスティングのヒントとテクニック

Boxのサーバーがinvocation_urlとして使用できるよう、アプリケーションを公開URLですばやく公開する方法はいくつかあります。

  • ローカルトンネル - 開発者のマシン上にあるウェブアプリケーションを公開アドレスに公開する最も簡単な方法の1つは、ローカルトンネルの使用です。一般的なトンネリングツールには、ngroklocaltunnelがあります。
  • サーバーレス関数 - Box Skillを処理できるサーバーを設定するには、サーバーレス関数が役立ちます。Box Skillsは、監視対象のフォルダ内のアクティビティ (の欠如) に応じて生成できる呼び出しの数が異なります。AWS LambdaGoogle Cloud FunctionsMicrosoft Azure Functionsなどのサーバーレス関数は、このような散発的なイベントに適しています。サーバーレス関数は、イベントの処理中にのみ実行され、課金の対象となります。
  • 従来のアプリケーションホスティング - サーバーレステクノロジが望ましくない場合、HerokuFirebaseAWSGCPなど、従来のアプリケーションホスティングソリューションも使用できます。これらのアプリケーションはそれぞれ固有のサービスでホストされ、アプリケーション用の公開URLが呼び出しURLとして使用されます。

アプリケーションサーバーの詳細

一般に、呼び出しURLの背後にあるアプリケーションは、以下のタスクを実行する必要があります。

  1. Boxからのイベント通知をキャプチャする。
  2. Boxファイル (またはそのURL) のバイナリデータを処理サービスに送信する。
  3. 処理サービスからのレスポンスをリッスンする。
  4. 処理サービスからのレスポンスをBoxメタデータ形式に変換する。
  5. Boxに保存されているファイルに新しいメタデータを適用する。