DroneDeploy

Export API

Access and download existing map data exports

Customers who would like to automatically export and backup all of their maps, either to use in other systems or for compliance reasons, can follow the steps below.

If you have a standard export type that you'd like us to generate for any new map created in your organization, we can assist you with that. Also, if you have a "machine" super user who should have access to all processed maps and exports in your organization, we can enable this for you too.

Send a request to the DroneDeploy Support Team to request a certain type of export to be made available on all your maps, or to designate a "machine" super user.

Avoid repeatediy exporting the same large data sets

Exports can be very large, so we recommend recording the plans that have already been downloading, and only looking for and downloading new maps (plans) or exports.

Exports for a specific plan

POST /v2/exports
Allows you to create an export with a request containing a body with the plan_id and a parameters object structured the way shown below.

{
  "plan_id": "2809195646cfba1719655b85",
  "parameters": {
    "email": ["test@dronedeploy.com", "example@dronedeploy.com"],
  	"file_format": "jpg",
  	"layer": "Orthomosaic",
  	"merge": true,
  	"projection": 4326,
  	"resolution": 20
  }
}
{
  "plan_id": "2809195646cfba1719655b85",
  "parameters": {
    "email": ["test@dronedeploy.com", "example@dronedeploy.com"],
  	"file_format": 'jpg',
  	"layer": "Orthomosaic",
  	"merge": true,
  	"projection": 4326,
  	"resolution": 20,
    "webhook": {
    	"url": "https://www.webhook.com/exports"
    }
  }
}
  • plan_id can be obtained by listing your plans
  • email parameter is an array containing the emails that will be notified when the export is finished
  • file_format is the file format for the export. Defaults to geotiff.
  • layer is the layer type that you would like to export. Defaults to Orthomosaic.
  • merge is an option for a single TIFF / JPG or broken into 4096 separate TIFF / JPGs. This value should only be false if the export is unusually large. Defaults to true.
  • projection is the EPSG code for the desired projection / coordinate system. Defaults to 4326.
  • resolution is the centimeters per pixel for the export where 0 is the maximum resolution. Defaults to 0 centimeters.
  • (FOR CONTOUR EXPORTS) A contour_interval property may be specified for contour exports on the parameters object. Refers to the spacing between contours in meters. Defaults to 1 meter.
  • (OPTIONAL) A webhook object with a url property may be specified on the parameters object. Refers to custom webhooks to be called when the export object is complete.

Certain file formats can only be exported for certain layer types, as shown by the table below. The string in the parentheses next to the specified layer and file format refers to the values that can be used for the layer and file_format parameters in the parameter object.

Layer Type
Valid File Formats

Orthomosaic ("Orthomosaic")

GeoTIFF ("geotiff"), JPG ("jpg")

Elevation ("Elevation Toolbox")

GeoTIFF ("geotiff"), JPG ("jpg"), Raw Elevation Values [DEM] ("demtiff"), Shapefile ("shapefile"), Contour DXF [AutoCAD] ("contourdxf"), Contour SHP [Shapefile] ("contourshp")

Plant Health ("NDVI Toolbox")

GeoTiff ("geotiff"), JPG ("jpg"), Shapefile ("shapefile")

3D Model ("3D Model")

3D Model [.obj] ("obj")

Point Cloud ("Point Cloud")

Point Cloud [.las] ("las"), Point Cloud [.xyz] ("xyz")

Returns JSON - An object containing the ID of of the created export.

curl -H "Content-Type: application/json" -X POST -d '{"plan_id": "2809195646cfba1719655b85", "parameters": {"layer": "Orthomosaic", "projection": 4326, "file_format": "jpg", "merge": true, "resolution": 20, "email": ["test@dronedeploy.com", "example@dronedeploy.com"]}}' "https://public-api.dronedeploy.com/v2/exports/?api_key=f78b0a0d66274fd5a8684c49deb9d83d"
{
	"id": "390a149585149e0001208cb2"
}

GET /v2/exports?plan_id=<planid>

Returns JSON - List of all exports and associated metadata and links for the given Plan

curl "https://public-api.dronedeploy.com/v2/exports/?plan_id=5605c0e5752afc005a000004&api_key=f78b0a0d66274fd5a8684c49deb9d83d"
[
  {
    "username": "vlad@dronedeploy.com",
    "status": "complete",
    "plan_id": "587c3d9ede30475fde10ec09",
    "parameters": {
      "layer": "Elevation Toolbox",
      "map_id": "587c3f62fd955a00015b7bdf",
      "projection": "4326",
      "file_format": "demtiff",
      "url": "https://tiles_prod.dronedeploy.com/unsafe/smart/filters:dem(45,315,{setting_min},{setting_max},{setting_cmap},{setting_light_intensity}):format(png):crop('{setting_crop_polygon}')/https%3A%2F%2Fs3.amazonaws.com/drone.deploy.tiles/{url}/{z}/{x}/{y}.tiff?jwt_token=eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJlbnZpcm9ubWVudCI6InByb2QiLCJ1c2VybmFtZSI6InZsYWRAZHJvbmVkZXBsb3kuY29tIiwiZXhwIjoxNDg3NTI0OTI1fQ.BQur1I_jRVzspIzWWOTgGIwdCuztlGDe3gG_eYG62oPFM-cEQi56jSXKIx5p5cbjk2f7gMBM4QX9GA5nJgF70w",
      "merge": true,
      "env": "prod",
      "resolution": "5",
      "email": [
        "vlad@dronedeploy.com"
      ],
      "view": "588254252a17060001508ede"
    },
    "download_size": 801445.0,
    "download_path": "https://s3.amazonaws.com/drone-deploy-exports/1484537246_WATYAO_CE1OPENPIPELINE/ThaioilMap_ElevationToolbox_FriJan20181720.zip?AWSAccessKeyId=AKIAISEWUBLV6Q6M3S3A&Expires=1487528253&Signature=lFmBcmWdNsh3HTfwV0SMEwaETLg%3D",
    "date_creation": 1484936229138,
    "id": "588254252a17060001508edf"
  },
  {
    "username": "vlad@dronedeploy.com",
    "status": "complete",
    "plan_id": "587c3d9ede30475fde10ec09",
    "parameters": {
      "layer": "Orthomosaic",
      "map_id": "587f5631cad8bf000164e122",
      "projection": "4326",
      "file_format": "geotiff",
      "url": "https://tiles_prod.dronedeploy.com/unsafe/smart/filters:crop('{setting_crop_polygon}')/https%3A%2F%2Fs3.amazonaws.com/drone.deploy.tiles/{url}/{z}/{x}/{y}.png?jwt_token=eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJlbnZpcm9ubWVudCI6InByb2QiLCJ1c2VybmFtZSI6InZsYWRAZHJvbmVkZXBsb3kuY29tIiwiZXhwIjoxNDg3NTI0OTI1fQ.BQur1I_jRVzspIzWWOTgGIwdCuztlGDe3gG_eYG62oPFM-cEQi56jSXKIx5p5cbjk2f7gMBM4QX9GA5nJgF70w",
      "merge": true,
      "env": "prod",
      "resolution": "5",
      "email": [
        "vlad@dronedeploy.com"
      ],
      "view": "58801fa2d2c0ce00013cadfc"
    },
    "download_size": 344315051.0,
    "download_path": "https://s3.amazonaws.com/drone-deploy-exports/1484693787_HOVERVISIOOPENPIPELINE/MooserCreek61stNtoI44_Orthomosaic_ThuJan19020847.zip?AWSAccessKeyId=AKIAISEWUBLV6Q6M3S3A&Expires=1487385701&Signature=rRzjIZWNBSQT0gyOr7sMYnIYsxg%3D",
    "date_creation": 1484791714887,
    "id": "58801fa2f26a3600010f811d"
  }
]

List all exports

GET /v2/exports
In case you simply want to list all exports available in your account, we support the ability to send a GET request to /v2/exports without specifying a plan ID.

Returns JSON - List of all exports and associated metadata for all plans

All requests which return a list of results are paged. To request more, see API Pagination

Export Objects

Exports listed from either of the GET requests described above are returned as a list of JSON objects with the following fields:

  • date_creation (Number) The timestamp the export was created
  • download_path (String) The full URL of the export
  • download_size (Number) The size, in bytes, of the export
  • id (String) The export's unique id
  • parameters (JSON object) The parameters used to create the export (see above)
  • plan_id (String) The unique id of the plan this data was exported from
  • status (String) new | processing | complete | failed
  • username (String) The email address of user that created the export
{
	date_creation: 1567615744143,
	download_path: "https://exports.dronedeploy.com/5413aeda66_EXAMPLE/ExampleExport.zip",
	download_size: 3000369,
	id: "5d6feb0072cdb100012dd12e",
	parameters: { ... },
	plan_id: "5c7e0140c7e948effb14662c",
	status: "complete",
	username: "example@dronedeploy.com"
}

Starting October 11th, 2019 the download_path field will contain an API URL instead of a signed direct download URL. The API endpoint will return a redirect: a 302 Found response with the signed direct download URL in the location header.
Email links and browsers will automatically follow the redirect, so no difference will be seen there.
Programmatic clients should be configured to follow redirects in order to continue working.
I.E. For curl you will have to use the --location option.
NOTE the API download endpoint is authenticated with your api_key.

Export API


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.