Skip to docs navigation Skip to main content

Documentation

Webhook API

Our Webhook API sends an HTTP GET request to the URL you specify whenever a file is uploaded, downloaded, modified, renamed, copied, or deleted. Information about the operation is included in the request query string. The API is very easy to use and can be integrated by anyone with server-side programming knowledge.

We expect an HTTP 200 response code, so if we don’t receive one we will try the hooks again a few times over the next 3 days. We will notify you by email if a failure persists beyond that period. You can test webhooks on the Behaviors tab of any folder on your site by clicking the Test Web Hook link next to the entry field.

Setting up a Webhook

To set up a Webhook, simply visit the Behaviors tab of a folder you would like to assign a Webhook to. Under Web Hooks there is a box labeled Create Web Hook for specifying one or more Webhook URLs separated by commas. The first Webhook URL is the primary URL where you would like us to send our HTTP request, and any additional comma-separated URLs are redundant Webhook URLs that will also be attempted. A Webhook request will be considered successful if an HTTP 200 response code is received from either the primary URL or a redundant URL.

Explanation of the requests sent from the Webhook API

Whenever any file or folder action occurs within a Webhook-enabled folder, an HTTP GET request will be sent to your corresponding Webhook URL within a few minutes of the operation happening and will include several URL parameters.

Make sure to reply with an HTTP 200 response code.

Request URL Parameter Reference

action Type of action that occurred. Will be one of the following: create, read, update, destroy, move, copy. Renames are treated the same as a move action.
interface Interface where the action occurred. Will be one of the following: web, ftp, robot, jsapi, restapi, sftp, or dav.

The robot interface is referenced when a file is acted on by an automated process that occurs on our side. For example, if you had a behavior rule to delete files in a specific folder after 3 days, and the rule was triggered, this would result in a webhook triggering with the action destroy and the interface robot.
path Path of the file that was operated on.
destination If a move or copy action, the new filename.
at Timestamp of the action, format: Y-m-dTH:M:S+00:00.
username Username that performed the action.
type Indicates whether the action occurred on a file or a directory, when applicable.

Expansion of the Webhook API

Are there additional things you would like to see webhooks for?

We already have the capability to expose webhooks on request for creation/updates/deletes of users, groups, and permissions. We are willing to add more hooks if there’s anything that would be useful for you.

Please feel free to contact us with any feature requests for the Webhook API.