フォルダへのWebhookの作成

ガイドWebhookWebhookの管理フォルダへのWebhookの作成

フォルダへのWebhookの作成

フォルダにWebhookを追加するには、folderの種類、フォルダのID、Webhook通知の送信先URL、およびWebhookをアクティブにするトリガーのリストを指定してWebhookを作成エンドポイントを呼び出します。

cURL
curl -i -X POST "https://api.box.com/2.0/webhooks" \
     -H "Authorization: Bearer <ACCESS_TOKEN>" \
     -H "Content-Type: application/json" \
     -d '{
       "target": {
         "id": "234234",
         "type": "folder"
       },
       "address": "https://example.com/webhooks",
       "triggers": [
         "FILE.UPLOADED"
       ]
     }'
.NET
var webhookParams = new BoxWebhookRequest()
{
    Target = new BoxRequestEntity()
    {
        Type = BoxType.folder,
        Id = "22222"
    },
    Triggers = new List<string>()
    {
        "FILE.UPLOADED",
        "FILE.DOWNLOADED"
    },
    Address = "https://example.com/webhook
};
BoxWebhook webhook = await client.WebhooksManager.CreateWebhookAsync(webhookParams);
Java
// Listen for file upload events in the specified folder
BoxFolder folder = new BoxFolder(api, id);
BoxWebHook.Info webhookInfo = BoxWebHook.create(folder, url, BoxWebHook.Trigger.FILE_UPLOADED);
Python
folder = client.folder(folder_id='12345')
webhook = client.create_webhook(folder, ['FILE.UPLOADED', 'FILE.PREVIEWED'], 'https://example.com')
print('Webhook ID is {0} and the address is {1}'.format(webhook.id, webhook.address))
Node
// Attach a webhook that sends a notification to https://example.com/webhook when
//   files are uploaded or downloaded within folder 22222.
client.webhooks.create(
	'22222',
	client.itemTypes.FOLDER,
	'https://example.com/webhook',
	[
		client.webhooks.triggerTypes.FILE.UPLOADED,
		client.webhooks.triggerTypes.FILE.DOWNLOADED
	])
	.then(webhook => {
		/* webhook -> {
			id: '1234',
			type: 'webhook',
			target: { id: '22222', type: 'folder' },
			created_by: 
			{ type: 'user',
				id: '33333',
				name: 'Example User',
				login: 'user@example.com' },
			created_at: '2016-05-09T17:41:27-07:00',
			address: 'https://example.com/webhook',
			triggers: [ 'FILE.DOWNLOADED', 'FILE.UPLOADED' ] }
		*/
	});

このAPIを使用するには、アプリケーションの[webhookを管理]スコープが有効になっている必要があります。

WebhookのアドレスはHTTPS URLである必要があります。

Webhookアドレス

addressパラメータで指定する通知URLは、Webhookの作成時に指定した有効なHTTPS URLである必要があります。このURLは、いずれかのトリガーがアクティブになるたびに呼び出されます。

通知URLは標準HTTPSポート443を使用する必要があり、Webhookペイロードの受信から30秒以内に200299の範囲のHTTPステータスを返す必要があります。

Webhookトリガー

トリガーのリストでは、Webhookをトリガーするイベントを表す文字列を指定します。たとえば、ユーザーがファイルをアップロードしたときにWebhookをトリガーするには、トリガー名としてFILE.UPLOADEDを渡します。

使用可能なトリガーのリストは、このガイドにあります。