Download full size raster from image service in Web App

08-13-2020 09:47 AM
New Contributor

Hey everyone,

I am attempting to make a web app that works as an imagery catalog, where people can view all available imagery over multiple dates, select one and download the full sized image right in the web app. I am attempting to build this in Web App Builder for Developer and host the custom web app in our enterprise portal version 10.7.1, the imagery service will be on an imagery server with typical rasters being 2-4 GB tifs. So far I have everything set up using mosaic datasets for the image service, and using these custom WAB-Image-Services-widgets I found on this community. .

Everything works great except, there appears to be a recognized issue where you are limited on the pixel size of the export based on the map size extent that limits your download to only 150 MBs. This works okay, but it would be much more useful if you were able to get the full sized raster to export. 

Has anyone had any luck downloading a full sized raster from an image service in Web Apps either using the custom widgets or even another way I am not thinking of? I know you can bring the image service into Pro and get the full sized raster, but that is not an easy work around and only works for more advanced users.


0 Kudos
2 Replies
Esri Regular Contributor

Image Service provide Export and Download.

With export the user defines the extent (including projection) and pixel size of the required output and the server processes the mosaic (which can included projection, orthorectification, pansharpening, mosaicking multiple images etc) to create a product as required that is then transmitted to the client application. This requires the server to process pixels and typically the administrator of the service puts a limit on the max size of such requests. The server could process a very large extent at high resolution, but typically such requests are not allowed.

Download is a separate request where the client application defines a specific raster and optional extent. The server does not do any processing but just clips the input image and transmits this to the client application. Again the administrator can define if this capability is on or off and the max size of such a request.

The third alternative is to have the app return the URL of the full image stored on some cloud accessible storage.

The Image Discovery tool (also part of WABIS) provides and example of this.  If you use the tools to select images and add them to the cart, 'review&submit' and export to CSV you will see that the output includes the URL to the source imagery. Typically an image service from a mosaic dataset does not provide access to the source imagery, but if this is something that you want you can include the URL as an attribute or in the code provide the logic to create the URL. In a similar way that you can just call such a URL, you could also call a GeoProcessing service or similar to perform clip,zip,ship or similar. There are very many alternatives depending on what exactly you want to achieve and what restrictions you want to place on the exports. In most cases users the server to enable download to massive datasets is not wanted due to potentially high egress costs.

0 Kudos
Occasional Contributor III

Where would one specify the pixel size on Export Image as you mention? I would like to export the original quality, not the overview pixels.

0 Kudos