Email Notifications - On successful or failed uploads

EasyFTP allows you to receive email notifications when an upload succeeds or fails. Notifications are configured on a per-user, per-connection basis. The notification email will be sent to the email address associated with the user's account. Any user that wishes to receive email notifications will need to enable them for their account. If transfers are performed by multiple connections, notifications will need to be configured for each connection.

EasyFTP is not able to provide success or failure information to Zapier or IFTTT because uploads are processed asychronously and the result is not know when an upload request is received.

Note: This feature is not available to subscribers of the Project Plan. A subscription at the Business Plan level or higher is required.

Upload Success

To enable email notifications following a successful upload, click the "Notification Settings" button on a Connection's Activy log. On the ensuing page, toggle the radio button for "Successful transfers" and click Save.

Upload Failure

To enable email notifications following a failed upload, click the "Notification Settings" button on a Connection's Activy log. On the ensuing page, toggle the radio button for "Failed transfers" and click Save.

Webhook Notifications - On successful or failed uploads

EasyFTP allows you to receive an HTTP webhook when an upload succeeds or fails. Webhooks are configured on a per-connection basis and multiple webhooks can be created for a single connection. If transfers are performed by multiple connections, webhooks will need to be configured for each connection.

EasyFTP is not able to provide success or failure information to Zapier or IFTTT because uploads are processed asychronously and the result is not know when an upload request is received. Webhooks can be used to perform additional processing after an upload completes.

Note: This feature is not available to subscribers of the Project Plan. A subscription at the Business Plan level or higher is required.

Webhook Creation

A new webhook can be configured on the left hand side of the Connection page. Webhooks require an HTTP or HTTPS destination and can be sent via either GET or POST. Additionally, webhooks can be sent following a successful transfer or a failed transfer or both.

Webhook Data

Webhooks are deliveries include the following information:

  1. result - The outcome of the transfer; either "success" or "failure"
  2. connection - The name of the connection that performed the upload
  3. filename - The full path of the uploaded file on the server
  4. file_size - The number of bytes uploaded, only included for successful transfers
  5. timestamp - The time (in UTC) the webhook was sent, using ISO8601 format
  6. signature - A HMAC hexdigest of the delivered data (explained below)
For GET requests, the data is sent as query parameters. For POST requests, the data is sent as a JSON encoded body part.

Webhook Signatures

To prevent spoofing, a timestamp and an HMAC signature are included in the data sent with each webhook. Your code can verify the signature to ensure the webhook was sent by EasyFTP and check that the timestamp is recent. The HMAC signature uses the webhook's signing key, which is generated automatically by EasyFTP and displayed on the Connection's page. To verify the HMAC signature:

  1. Sort the data fields (other than signature) alphabetically by key
  2. Join each data key and value with an equals sign (e.g. result=success)
  3. Join all fields with ampersands (e.g. connection=MyConn&filename=tps_report.pdf)
  4. Compute the SHA-256 HMAC signature of the resulting string using the webhook's signing key. The signature included in the webhook's payload is the hex representation of the computed HMAC.

Copyright © 2025. All rights reserved.