Skip to content

SFTP Delivery

SFTP delivery pushes classification results to a server you control, as files. As each classification on a flow completes, Gaard connects to your SFTP/FTP server and drops either the annotated video or the snapshot images. It is the right delivery method for file-based consumers (video-management systems, evidence archives, and batch jobs) that ingest media rather than JSON.

For how this compares to polling and webhooks, see Choosing a Delivery Method.

  • An admin role in the tenant.
  • A flow to attach the integration to. See Flows.
  • An SFTP or FTP server reachable from Gaard, with credentials (a username and password, or an SSH private key for SFTP).

SFTP delivery is the SFTP/FTP Outbound integration, configured per flow.

  1. In the web app, open Settings → Platform → Integrations.

  2. Under Add a new integration, select SFTP/FTP Outbound.

  3. Choose the Flow whose results you want to deliver.

  4. Enter a Name for the integration.

  5. Set the File Protocol: FTP or SFTP.

  6. Enter the Host and Port. The port defaults to 21; set it to your SFTP port (typically 22) when the protocol is SFTP.

  7. Enter the Username and Password. When the protocol is SFTP, you can supply a Private Key instead of a password.

  8. Choose what to send with Send Snapshots (see What lands on your server below).

  9. Optionally enable Clean up SFTP folder after 15 minutes to have Gaard remove delivered files 15 minutes after writing them.

  10. Select Test to verify the connection, then save.

If you need to deliver the same results to more than one server, add one SFTP/FTP Outbound integration per destination.

What Gaard writes depends on the Send Snapshots toggle:

Send SnapshotsFiles written
Off (default)The classification’s highlight clip, written as a single .mp4 file.
OnThe JPEG snapshots (.jpg / .jpeg) for the alert, written as individual image files.

Files are written into the working directory your account lands in when it connects. Delivery happens automatically for every completed classification on the flow: there is no separate scheduled batch window.

The Test button opens a connection with the credentials in the form and confirms Gaard can reach the server and read its working directory. The check times out after a few seconds, so a failing test points to an unreachable host, a wrong port, or bad credentials. Fix those before saving.

Each integration in the list carries a status indicator:

StatusMeaning
activeThe integration is running normally.
pausedYou paused the integration (see below).
errorThe last connection failed: the error message is shown on the row.

Inbound SFTP retrieval and the persistent pause

Section titled “Inbound SFTP retrieval and the persistent pause”

Gaard can also work in the other direction: the SFTP/FTP integration retrieves files from an SFTP/FTP server, groups them into alerts, and classifies them. Unlike outbound delivery (which fires once per classification) inbound retrieval runs a live watcher that continuously polls the server.

Because that watcher is a running connection, you can pause and resume it:

  1. In Settings → Platform → Integrations, open the row menu for the SFTP/FTP integration.

  2. Select Stop to pause retrieval, or Start to resume it.

The pause is persistent: a paused integration stays paused across restarts until you start it again, and its status shows paused. This is the safe way to take a retrieval connection offline for maintenance without deleting its configuration.

Global tuning for inbound retrieval (the poll interval, how files are grouped into alerts, and file-age handling) lives in Settings → Platform → Configuration → SFTP Integration.