Digital Elevation Model Service

a) DEM Post Request to Prepare TIFF



The Ag-Analytics® DEM Service API allows for clipping boundaries to the 10 meter USGS DEM map of the United States. The service consists of a POST request where the user can pass a GeoJSON boundary, desired output projection as an EPSG code, and a resolution in degrees lat/lon. The result of the post request is a file name that is the result of the clip, reproject, and resample. The file name can be used as the parameter in a GET request to the same endpoint. Doing so will download the file to the specified local path.


Sample DEM raster output.



Click the Jupyter Notebook Static Sample to view a static rendition of this APIs Jupyter Notebook.
Click the Jupyter Notebook Github Repo to access the Jupyter Notebook .ipynb files and
instructions needed in order to run this APIs Jupyter Notebook.

Request Parameters


Parameter Data Type Required? Default Options Description
aoi geojson, shapefile,
geotiff
Yes -- geojson, shapefile,
geotiff
Area of interest to return
Projection List of indices
as a string
No See Request Handling
Table below
EPSG codes
(ex. "EPSG:4326" WKT)
Output projection of
result DEM geotiff
Resolution Float No See Request Handling
Table below
-- Output geotiff resolution
Elevation_Index String No "False" "True" "False" Call will return elevation indices
from the elevation index service
(relative elevation, slope, TPI, TRI)
Legend_Ranges Integer as string No 3 0 < Legend_Ranges Number of ranges to display
in png of output image

Request Handling - Default Projections and Resolutions


AOI Type Projection
Specified?
Resolution
Specified?
Ouput Projection Output Resolution
Any Yes Yes Request projection Request resolution
GeoTIFF Yes No Request projection GeoTIFF resolution
GeoTIFF No Yes GeoTIFF projection Request resolution
GeoTIFF No No GeoTIFF projection GeoTIFF resolution
Shapefile Yes No Request projection Native tile resolution
Shapefile No Yes Shapefile projection Request resolution
Shapefile No No Shapefile projection Native tile resolution
GeoJSON Yes No Request projection Native tile resolution
GeoJSON No Yes GeoJSON projection Request resolution
GeoJSON No No GeoJSON projection Native tile resolution

Response Parameters


Parameter Data Type Required?

Features

List

Container for all of the features of the DEM raster.

Features.attributes (F.a)

Dictionary

Each feature in Features has an associated attributes dictionary.

F.a.CellSize

List

Resolution as x,y cell size. In units of projection.

F.a.CoordinateSystem

String

Projection in WKT

F.a.Extent

String

Extent of result geotiff.

F.a.Legend (F.a.L)

List

Each range in the output PNG is represented by a separate dictionary.

F.a.L.Area

String

Percent of total image that the particular range of values covers.

F.a.L.Count

Int

Number of pixels that a particular range takes up in the png.

F.a.L.CountAllPixels

Int

Total number of pixels in the png image.

F.a.L.Max

Float

Maximum value in the range.

F.a.L.Mean

Float

Mean value of the range.

F.a.L.Min

Float

Min value of the range.

F.a.L.color

String

Hex value that is used to display the png image.

F.a.Matrix

List

Dimensions of output image.

F.a.Max

Float

Maximum value of entire raster.

F.a.Mean

Float

Mean value of entire raster.

F.a.Min

Float

Min value of entire raster.

F.a.OID

Int

Deprecated

F.a.Percentile5

Float

5th percentile value.

F.a.Percentile95

Float

95th percentile value.

F.a.Std

Float

Standard deviation of raster values.

F.a.Variet

String

Either Variety or NoVariety. Flag for category or continuous data.

F.a.pngb64

String

The png image returned in base64 encoding.

FileName

String

Name of result raster that was generated in POST request. Used in GET request to retrieve GeoTiff file.

Index_Files

List

List of elevation index files that can be used in GET request to return the GeoTiffs.



Call API

Request

Request URL

Request headers

  • (optional)
    application/x-www-form-urlencoded
  • (optional)
    string

Request body

aoi=%7B%22type%22%3A%22Feature%22%2C%22geometry%22%3A%7B%22type%22%3A%22Polygon%22%2C%22coordinates
%22%3A%5B%5B%5B-76.5907145%2C+42.443918%5D%2C+%5B-76.5898132%2C+42.4224745%5D%2C+
%5B-76.5699863%2C+42.4230447%5D%2C+%5B-76.5710592%2C+42.4443296%5D%2C+%5B-76.5907145%2C+42.443918%5D%5D%5D%7D%2C%22properties%22%3A%7B%22OBJECTID%22%3A4944402%2C%22
CALCACRES%22%3A46.15999985%2C%22CALCACRES2%22%3Anull%7D%2C%22id%22%3A4944402%7D&
Elevation_Index=False&Legend_Ranges=20

aoi=%7B%22type%22%3A%22Feature%22%2C%22geometry%22%3A%7B%22type%22%3A%22Polygon%22%2C%22coordinates%22%3A%5B%5B%5B-76.5907145%2C+42.443918%5D%2C+%5B-76.5898132%2C+42.4224745%5D%2C+%5B-76.5699863%2C+42.4230447%5D%2C+%5B-76.5710592%2C+42.4443296%5D%2C+%5B-76.5907145%2C+42.443918%5D%5D%5D%7D%2C%22properties%22%3A%7B%22OBJECTID%22%3A4944402%2C%22CALCACRES%22%3A46.15999985%2C%22CALCACRES2%22%3Anull%7D%2C%22id%22%3A4944402%7D&Elevation_Index=False&Legend_Ranges=20

Responses

200 OK

Success

Representations

{
    "Features": [{
        "attributes": {
            "CellSize": [
                9.259259269220297e-05,
                -9.259259269220297e-05
            ],
            "CoordinateSystem": "GEOGCS[\"WGS 84\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563,AUTHORITY[\"EPSG\",\"7030\"]],AUTHORITY[\"EPSG\",\"6326\"]],PRIMEM[\"Greenwich\",0],UNIT[\"degree\",0.0174532925199433],AUTHORITY[\"EPSG\",\"4326\"]]",
            "Extent": "-76.5907145, 42.42238515553195, -76.57006635182964, 42.4443296",
            "Legend": [{
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 387.494482421875,
                    "Mean": 377.98350830078124,
                    "Min": 368.4725341796875,
                    "color": "#6bd54d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 393.60186767578125,
                    "Mean": 390.5481750488281,
                    "Min": 387.494482421875,
                    "color": "#76d14d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 398.3304763793945,
                    "Mean": 395.96617202758785,
                    "Min": 393.60186767578125,
                    "color": "#82ce4d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 402.33484497070316,
                    "Mean": 400.3326606750488,
                    "Min": 398.3304763793945,
                    "color": "#8eca4d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 406.1711120605469,
                    "Mean": 404.25297851562505,
                    "Min": 402.33484497070316,
                    "color": "#9ac74d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 410.0652740478516,
                    "Mean": 408.1181930541992,
                    "Min": 406.1711120605469,
                    "color": "#a5c34d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 413.4850250244141,
                    "Mean": 411.77514953613286,
                    "Min": 410.0652740478516,
                    "color": "#b1c04d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 416.96576538085935,
                    "Mean": 415.2253952026367,
                    "Min": 413.4850250244141,
                    "color": "#bdbc4d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 420.6257369995117,
                    "Mean": 418.7957511901855,
                    "Min": 416.96576538085935,
                    "color": "#c9b94d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 424.2486267089844,
                    "Mean": 422.437181854248,
                    "Min": 420.6257369995117,
                    "color": "#d5b64d"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 428.3586776733398,
                    "Mean": 426.3036521911621,
                    "Min": 424.2486267089844,
                    "color": "#d7bb5c"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 431.8903991699219,
                    "Mean": 430.12453842163086,
                    "Min": 428.3586776733398,
                    "color": "#d9c06c"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 434.07612762451174,
                    "Mean": 432.98326339721683,
                    "Min": 431.8903991699219,
                    "color": "#dbc57b"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 436.8888519287109,
                    "Mean": 435.4824897766113,
                    "Min": 434.07612762451174,
                    "color": "#ddca8b"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 439.70599365234375,
                    "Mean": 438.2974227905273,
                    "Min": 436.8888519287109,
                    "color": "#dfcf9b"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 442.4939880371094,
                    "Mean": 441.09999084472656,
                    "Min": 439.70599365234375,
                    "color": "#e1d4aa"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 444.9431686401367,
                    "Mean": 443.71857833862305,
                    "Min": 442.4939880371094,
                    "color": "#e3d9ba"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 447.1944549560547,
                    "Mean": 446.0688117980957,
                    "Min": 444.9431686401367,
                    "color": "#e5dec9"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 449.3597045898438,
                    "Mean": 448.27707977294926,
                    "Min": 447.1944549560547,
                    "color": "#e7e3d9"
                },
                {
                    "Area": "5.0 %",
                    "Count": 2453,
                    "CountAllPixels": 49060,
                    "Max": 452.1280822753906,
                    "Mean": 450.7438934326172,
                    "Min": 449.3597045898438,
                    "color": "#e9e9e9"
                }
            ],
            "Matrix": [
                237,
                223
            ],
            "Max": 452.1280822753906,
            "Mean": 422.1139831542969,
            "Min": 368.4725341796875,
            "OID": 0,
            "Percentile5": 387.494482421875,
            "Percentile95": 449.3597045898438,
            "Std": 20.075919225078817,
            "Variety": "NoVariety",
            "pngb64": "data:image/png;base64, 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"
        }
    }],
    "FileName": "result_raster_dem_20200228191959463691.tif"
}

Code samples

@ECHO OFF

curl -v -X POST "https://ag-analytics.azure-api.net/dem-service/"
-H "Content-Type: application/x-www-form-urlencoded"
-H "Content-Type: application/x-www-form-urlencoded"

--data-ascii "{body}" 
using System;
using System.Net.Http.Headers;
using System.Text;
using System.Net.Http;
using System.Web;

namespace CSHttpClientSample
{
    static class Program
    {
        static void Main()
        {
            MakeRequest();
            Console.WriteLine("Hit ENTER to exit...");
            Console.ReadLine();
        }
        
        static async void MakeRequest()
        {
            var client = new HttpClient();
            var queryString = HttpUtility.ParseQueryString(string.Empty);

            // Request headers

            var uri = "https://ag-analytics.azure-api.net/dem-service/?" + queryString;

            HttpResponseMessage response;

            // Request body
            byte[] byteData = Encoding.UTF8.GetBytes("{body}");

            using (var content = new ByteArrayContent(byteData))
            {
               content.Headers.ContentType = new MediaTypeHeaderValue("< your content type, i.e. application/json >");
               response = await client.PostAsync(uri, content);
            }

        }
    }
}	
// // This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
import java.net.URI;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class JavaSample 
{
    public static void main(String[] args) 
    {
        HttpClient httpclient = HttpClients.createDefault();

        try
        {
            URIBuilder builder = new URIBuilder("https://ag-analytics.azure-api.net/dem-service/");


            URI uri = builder.build();
            HttpPost request = new HttpPost(uri);
            request.setHeader("Content-Type", "application/x-www-form-urlencoded");
            request.setHeader("Content-Type", "application/x-www-form-urlencoded");


            // Request body
            StringEntity reqEntity = new StringEntity("{body}");
            request.setEntity(reqEntity);

            HttpResponse response = httpclient.execute(request);
            HttpEntity entity = response.getEntity();

            if (entity != null) 
            {
                System.out.println(EntityUtils.toString(entity));
            }
        }
        catch (Exception e)
        {
            System.out.println(e.getMessage());
        }
    }
}

<!DOCTYPE html>
<html>
<head>
    <title>JSSample</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body>

<script type="text/javascript">
    $(function() {
        var params = {
            // Request parameters
        };
      
        $.ajax({
            url: "https://ag-analytics.azure-api.net/dem-service/?" + $.param(params),
            beforeSend: function(xhrObj){
                // Request headers
                xhrObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
                xhrObj.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
            },
            type: "POST",
            // Request body
            data: "{body}",
        })
        .done(function(data) {
            alert("success");
        })
        .fail(function() {
            alert("error");
        });
    });
</script>
</body>
</html>
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    
    NSString* path = @"https://ag-analytics.azure-api.net/dem-service/";
    NSArray* array = @[
                         // Request parameters
                         @"entities=true",
                      ];
    
    NSString* string = [array componentsJoinedByString:@"&"];
    path = [path stringByAppendingFormat:@"?%@", string];

    NSLog(@"%@", path);

    NSMutableURLRequest* _request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:path]];
    [_request setHTTPMethod:@"POST"];
    // Request headers
    [_request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
    [_request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
    // Request body
    [_request setHTTPBody:[@"{body}" dataUsingEncoding:NSUTF8StringEncoding]];
    
    NSURLResponse *response = nil;
    NSError *error = nil;
    NSData* _connectionData = [NSURLConnection sendSynchronousRequest:_request returningResponse:&response error:&error];

    if (nil != error)
    {
        NSLog(@"Error: %@", error);
    }
    else
    {
        NSError* error = nil;
        NSMutableDictionary* json = nil;
        NSString* dataString = [[NSString alloc] initWithData:_connectionData encoding:NSUTF8StringEncoding];
        NSLog(@"%@", dataString);
        
        if (nil != _connectionData)
        {
            json = [NSJSONSerialization JSONObjectWithData:_connectionData options:NSJSONReadingMutableContainers error:&error];
        }
        
        if (error || !json)
        {
            NSLog(@"Could not parse loaded json with error:%@", error);
        }
        
        NSLog(@"%@", json);
        _connectionData = nil;
    }
    
    [pool drain];

    return 0;
}
<?php
// This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
require_once 'HTTP/Request2.php';

$request = new Http_Request2('https://ag-analytics.azure-api.net/dem-service/');
$url = $request->getUrl();

$headers = array(
    // Request headers
    'Content-Type' => 'application/x-www-form-urlencoded',
    'Content-Type' => 'application/x-www-form-urlencoded',
);

$request->setHeader($headers);

$parameters = array(
    // Request parameters
);

$url->setQueryVariables($parameters);

$request->setMethod(HTTP_Request2::METHOD_POST);

// Request body
$request->setBody("{body}");

try
{
    $response = $request->send();
    echo $response->getBody();
}
catch (HttpException $ex)
{
    echo $ex;
}

?>
########### Python 2.7 #############
import httplib, urllib, base64

headers = {
    # Request headers
    'Content-Type': 'application/x-www-form-urlencoded',
    'Content-Type': 'application/x-www-form-urlencoded',
}

params = urllib.urlencode({
})

try:
    conn = httplib.HTTPSConnection('ag-analytics.azure-api.net')
    conn.request("POST", "/dem-service/?%s" % params, "{body}", headers)
    response = conn.getresponse()
    data = response.read()
    print(data)
    conn.close()
except Exception as e:
    print("[Errno {0}] {1}".format(e.errno, e.strerror))

####################################

########### Python 3.2 #############
import http.client, urllib.request, urllib.parse, urllib.error, base64

headers = {
    # Request headers
    'Content-Type': 'application/x-www-form-urlencoded',
    'Content-Type': 'application/x-www-form-urlencoded',
}

params = urllib.parse.urlencode({
})

try:
    conn = http.client.HTTPSConnection('ag-analytics.azure-api.net')
    conn.request("POST", "/dem-service/?%s" % params, "{body}", headers)
    response = conn.getresponse()
    data = response.read()
    print(data)
    conn.close()
except Exception as e:
    print("[Errno {0}] {1}".format(e.errno, e.strerror))

####################################
require 'net/http'

uri = URI('https://ag-analytics.azure-api.net/dem-service/')


request = Net::HTTP::Post.new(uri.request_uri)
# Request headers
request['Content-Type'] = 'application/x-www-form-urlencoded'
# Request headers
request['Content-Type'] = 'application/x-www-form-urlencoded'
# Request body
request.body = "{body}"

response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
    http.request(request)
end

puts response.body