Box Developerドキュメント

制限

制限

Webhookは1項目につき1つ

Webhookは、1つの項目 (ファイルまたはフォルダ)、1つのアプリケーション、1人の認証済みユーザーごとに1つだけという制限があります。

ある項目にWebhookを1つ追加した後は、別のトリガーイベントに応答するWebhookであっても、2つ目を追加することはできません。

例: CleanupAppというアプリケーションに関するJunkというフォルダ内のFILE.UPLOADEDイベントを監視するように、John DoeによってWebhookが1つ設定されると、その時点で、FILE.DOWNLOADEDイベントに対してトリガーされるものであっても、John DoeによってCleanupAppJunkフォルダに2つ目のWebhookを追加することはできません。

別のイベントをリッスンするには、既存のWebhookを更新するか、新しいアプリケーションを作成します。

Webhookの上限は1000個

各アプリケーションおよび各ユーザーのWebhookの数は1000個までという制限があります。

1人のユーザーにさらにWebhookを作成するには、別のアプリケーションを作成するか、フォルダツリーでより上位に適用するよう既存のWebhookを更新します。

通知URLに関する制約事項

Webhookの通知URL (address) は、有効なIPアドレスに解決される有効なHTTPS URLでなくてはなりません。これには、信頼できる認証局によって署名された証明書が必要になります。Boxでは自己署名SSL証明書がサポートされていません。

サーバーのIPアドレスは、インターネットからパブリックにアクセスできる必要があり、(*.)box.comアドレスにすることはできません。URLで使用されるポートは、標準HTTPSポート (443) でなければなりません。通知は他のポートには配信されません。

サポートされているTLSプロトコルのバージョンは、FIPS準拠の暗号スイートに対応したTLS 1.2TLS 1.3です。

Webhookはルートフォルダに追加不可

V2 Webhookをルートフォルダ (IDが0のフォルダ) に作成することはできません。代わりにV1 Webhookを使用する必要があります。

項目の権限が原因でアクションを実行できない場合、試行されたアクションについての通知は送信されません。

NO_ACTIVE_SESSIONはWebhookペイロードで設定

Webhookの作成に使用したアプリの認証セッション (アクセストークン) が期限切れになると、そのWebhookでは、ペイロード全体を含むイベントが送信されなくなります。その場合、イベントトリガーはNO_ACTIVE_SESSIONになります。

JWT認証

JWT認証アプリを使用して作成されたWebhookの場合、管理コンソールでこのアプリに対するアプリ承認を削除すると、セッションが期限切れになります。詳細については、アプリケーションの承認ガイドを参照してください。

OAuth 2.0

OAuth 2.0認証アプリを使用して作成されたWebhookの場合、そのWebhookの作成に使用されたユーザーとアプリのアクセストークンと更新トークンの両方が期限切れになると、セッションが期限切れになります。

開発者トークン

開発者トークンは更新できず、1時間後に期限切れになるため、イベントトリガーNO_ACTIVE_SESSIONは、1時間後にWebhookペイロードで設定されます。

Webhookの削除理由

Webhookは以下の理由で削除される可能性があります。

  1. Boxアプリケーションを削除すると、そのアプリケーションに関連付けられているすべてのWebhookが自動的に削除されます。
  2. Webhookに関連付けられているアクティブなアクセストークンをすべて削除すると、そのWebhookが自動的に削除されます。これには、開発者トークンとパスワードが含まれます。
  3. 最後に成功した配信から30日が経過し、最後に配信が成功した日から最後のトリガーの日付までの期間が14日を超えた場合、Webhookは自動的に削除されます。

これらのすべてのケースで、BoxはWEBHOOK.DELETEDというイベント名を含むWebhookペイロードを通知URLに送信します。ペイロードの本文には以下の追加情報が含まれます。

"additional_info": {
  "reason": "auto_cleanup"
}