Skip to main content

How to Configure DJI FlightHub Sync for Automatic Uploading to Sitemark

Automatically upload media captured by your DJI Dock straight to Sitemark for processing — no manual transfers, and nothing stored or processed by DJI along the way.

This guide details how to set up DJI FlightHub Sync to automatically upload media and images captured by drones using the DJI Dock 1, 2 or 3 directly to Sitemark. This ensures that data is seamlessly and securely transferred to Sitemark's servers without being stored or processed by DJI. Once configured, every image your Dock captures for the selected projects is transferred securely to Sitemark's servers and queued for processing automatically.


1. Before you begin - what to send us

We can only switch on the integration once we have a few details from you. Send the following to your Sitemark account manager so we can prepare your account and storage credentials.

Organization information:

What we need

Where to find it

Organization ID

The full uuid of your organization shown in the FlightHub URL — not the short 6-character Org ID. It looks like 00000000-0000-0000-0000-000000000000.

Site information - for each site you want to fly:

What we need

Where to find it

Project ID

The full uuid of the FlightHub project from its URL — again, not the short 6-character Project ID.

Data product

How the automated flights should be processed — e.g. Solar Construction Monitoring, Thermography, or Thermography Pro.

Responsible user

Who on your team owns the automated drone flights for this site. This should be an existing Sitemark user.

In return, we'll send you a set of storage credentials (an access key and secret key) through a secure one-time secret link. You'll enter these in Step 3 below — keep the link handy and don't share it over email or chat.


2. Configure Flighthub Sync

Do this in DJI FlightHub with an account that has admin rights on your organization. There are three things to set up — a storage configuration, a sync rule, and an event notification — followed by a quick check.

Step 1. Open your organization's syncs settings

Open FlightHub and navigate to "My Organization".

Locate your organization in the list and click on the settings cogwheel icon next to "Organization Settings."


Go to “FlightHub Sync” > “File Synchronization” > “Bucket Configuration”

Step 2. Add the storage configuration

Click Add Storage Configuration and fill in the fields exactly as below:

  • Bucket Type: AWSS3

  • Bucket Name: sm-s3-bucket-flighthub-sync-prod

  • Bucket AK: the access key from the credentials Sitemark sent you

  • Bucket SK: the secret key from the credentials Sitemark sent you

  • Region: eu-west-1

  • PresetPath: your organization name in lowercase

Click Connectivity Check to confirm the connection works, then Save Configuration.

Step 3. Create the sync rule

Open the Sync Rule configuration screen by clicking Create Sync Rule and configure the sync rule:

  • Rule Name: anything you like, e.g. Sitemark Sync

  • Destination Storage Configuration: AWSS3/sm-s3-bucket-flighthub-sync-prod

  • Source Project: select every project that should send images to Sitemark

  • Enable the FlightHub → Third-Party toggle

Click Save Rule.

Step 4. Create the event notification

Back in FlightHub Sync, go to EventAPI Event Notification → Create and configure it:

  • Rule Name: anything you like, e.g. Sitemark Event API

  • Receiving Address: https://api.sitemark.com/v1/integrations/dji_flighthub/notification

  • Subscription Data Range: choose All Projects, or specify the projects you're integrating with Sitemark

  • Subscription Event Type: check File Sync Notification

Click Confirm.

Confirm everything is in place

You should now have all three of these configured:

  • File Synchronization Bucket Configuration

  • File Synchronization Project Sync Rule

  • Event Api Notification Rule Configuration

Run a short test flight first. Before scheduling real-world missions, fly for a few minutes to confirm the end-to-end integration works and there are no configuration mistakes. It's much easier to catch a wrong value before doing a full flight.

Did this answer your question?