The Location Hub® Flood Service processes geographic coordinates and quickly evaluates whether an address (or coordinate location) is inside a flood hazard return period.

What does it do?

The Flood Service allows users to determine whether or not a property is within a flood risk area based on a defined return period by passing a geographic coordinate of the location to the service. Input coordinates must be in Latitude and Longitude WGS84 projection.

The Flood Indication service quickly returns True or False if the coordinate falls within the maximum flood extent of the 1 in 1,500 year return period. The Flood Evaluation service allows the user to specify the flood return period to be queried and the service returns the flood depth at the location, if the coordinate is within the extent.

The following Flood Return Periods are available in the Flood Evaluation Service:
  • 1 in 20 year
  • 1 in 100 year
  • 1 in 200 year
  • 1 in 500 year
  • 1 in 1,500 year

The following depth levels are returned by the Flood Evaluation Service:
DEPTH CODE
DEPTH DESCRIPTION
1
x <= 0.3m
2
0.3 < x <= 1m
3
1 < x <= 3m
4
3 < x <= 6m
5
6 < x <= 9m
6
x > 9m
127
No Data Found

Accessing the Service
To access the Location Hub Flood service you must first be authorized for use with Location Hub Web Services in order to have a valid user name and password. Please contact info@dmtispatial.com for more information on how to register for the Location Hub Flood Web Service.

Once you have a valid user name and password, please refer to the Authentication section for information on how to access the service.

SOAP Service

SOAP Operations

The following operation requests are available through SOAP/XML

  • GetFloodIndication: Accepts a single coordinate location and returns true if the submitted coordinate is within the 1 in 1,500 year Return Period. Returns false if the coordinate is not within the 1 in 1,500 year Return Period.
    • latitude (double): The WGS84 latitude of the location specified
    • longitude (double): The WGS84 longitude of the location specified
    • transactionId (optional string): an optional transaction identifier for the request

  • GetFloodIndicationBatch: Accepts a batch of coordinate locations and returns true for all coordinates that are within the 1 in 1,500 year return period, and false for the coordinates that are not.
    • points (array): array of latitude and longitude coordinate points
    • transactionId (optional string): an optional transaction identifier for the batch request

  • GetFloodEvaluation: Accepts a single coordinate location and a Return Period as input and returns the depth information for the submitted Return Period at that coordinate. A code of 127 (No Data Found) is returned if the coordinate is not within the submitted Return Period.
    • floodReturnPeriod (string): Valid Return Period strings are OneIn20Years, OneIn100Years, OneIn200Years, OneIn500Years, OneIn1500Years
    • latitude (double): The WGS84 latitude of the location specified
    • longitude (double): The WGS84 longitude of the location specified
    • transactionId (optional string): an optional transaction identifier for the request

  • GetFloodEvaluationBatch: Accepts a batch of coordinate locations with a single return period as input and returns the depth information for the submitted coordinates that are within the specified Return Period. A code of 127 (No Data Found) is returned for any coordinate that is not within the specified Return Period.
    • floodReturnPeriod (string): Valid Return Period strings are OneIn20Years, OneIn100Years, OneIn200Years, OneIn500Years, OneIn1500Years
    • points (array): array of latitude and longitude coordinate points
    • transactionId (optional string): an optional transaction identifier for the batch request

Examples:

<!-- The SOAP/XML Request -->
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:flo="http://lh.dmtispatial.com/services/floodservice/">
   <soapenv:Header/>
   <soapenv:Body>
      <flo:GetFloodIndication>
         <!--Optional:-->
         <!--type: double-->
         <flo:latitude>53.532303</flo:latitude>
         <!--Optional:-->
         <!--type: double-->
         <flo:longitude>-113.491386</flo:longitude>
         <!--Optional:-->
         <!--type: string-->
         <flo:transactionId>1</flo:transactionId>
      </flo:GetFloodIndication>
   </soapenv:Body>
</soapenv:Envelope>
 
<!-- The SOAP/XML Response -->
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <GetFloodIndicationResponse xmlns="http://lh.dmtispatial.com/services/floodservice/">
         <GetFloodIndicationResult xmlns:a="http://lh.dmtispatial.com/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:FloodReturnPeriod>OneIn1500Years</a:FloodReturnPeriod>
            <a:TransactionId>1</a:TransactionId>
            <a:InFloodBoundary xmlns:b="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
               <b:boolean>true</b:boolean>
            </a:InFloodBoundary>
         </GetFloodIndicationResult>
      </GetFloodIndicationResponse>
   </s:Body>
</s:Envelope>
 
<!-- The SOAP/XML Request -->
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:flo="http://lh.dmtispatial.com/services/floodservice/" xmlns:lh="http://lh.dmtispatial.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <flo:GetFloodIndicationBatch>
         <!--Optional:-->
         <flo:points>
            <!--Zero or more repetitions:-->
            <lh:Point>
               <!--type: double-->
               <lh:Latitude>53.532303</lh:Latitude>
               <!--type: double-->
               <lh:Longitude>-113.491386</lh:Longitude>
            </lh:Point>
            <lh:Point>
               <!--type: double-->
               <lh:Latitude>49.319307</lh:Latitude>
               <!--type: double-->
               <lh:Longitude>-117.660462</lh:Longitude>
            </lh:Point>
            <lh:Point>
               <!--type: double-->
               <lh:Latitude>0</lh:Latitude>
               <!--type: double-->
               <lh:Longitude>0</lh:Longitude>
            </lh:Point>
         </flo:points>
         <!--Optional:-->
         <!--type: string-->
         <flo:transactionId>321</flo:transactionId>
      </flo:GetFloodIndicationBatch>
   </soapenv:Body>
</soapenv:Envelope>
 
 
<!-- The SOAP/XML Response -->
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <GetFloodIndicationBatchResponse xmlns="http://lh.dmtispatial.com/services/floodservice/">
         <GetFloodIndicationBatchResult xmlns:a="http://lh.dmtispatial.com/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:FloodReturnPeriod>OneIn1500Years</a:FloodReturnPeriod>
            <a:TransactionId>321</a:TransactionId>
            <a:InFloodBoundary xmlns:b="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
               <b:boolean>true</b:boolean>
               <b:boolean>true</b:boolean>
               <b:boolean>false</b:boolean>
            </a:InFloodBoundary>
         </GetFloodIndicationBatchResult>
      </GetFloodIndicationBatchResponse>
   </s:Body>
</s:Envelope>
 
<!-- The SOAP/XML Request -->
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:flo="http://lh.dmtispatial.com/services/floodservice/">
   <soapenv:Header/>
   <soapenv:Body>
      <flo:GetFloodEvaluation>
         <!--Optional:-->
         <!--type: ReturnPeriod - enumeration: [OneIn20Years,OneIn100Years,OneIn200Years,OneIn500Years,OneIn1500Years]-->
         <flo:floodReturnPeriod>OneIn100Years</flo:floodReturnPeriod>
         <!--Optional:-->
         <!--type: double-->
         <flo:latitude>53.532303</flo:latitude>
         <!--Optional:-->
         <!--type: double-->
         <flo:longitude>-113.491386</flo:longitude>
         <!--Optional:-->
         <!--type: string-->
         <flo:transactionId>999</flo:transactionId>
      </flo:GetFloodEvaluation>
   </soapenv:Body>
</soapenv:Envelope>
 
<!-- The SOAP/XML Response -->
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <GetFloodEvaluationResponse xmlns="http://lh.dmtispatial.com/services/floodservice/">
         <GetFloodEvaluationResult xmlns:a="http://lh.dmtispatial.com/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:FloodReturnPeriod>OneIn100Years</a:FloodReturnPeriod>
            <a:TransactionId>999</a:TransactionId>
            <a:FloodDepth xmlns:b="http://schemas.datacontract.org/2004/07/DMTI.LH.Services">
               <b:DepthData>
                  <b:Depth>2</b:Depth>
                  <b:DepthDescription>0.3 < x <= 1</b:DepthDescription>
               </b:DepthData>
            </a:FloodDepth>
         </GetFloodEvaluationResult>
      </GetFloodEvaluationResponse>
   </s:Body>
</s:Envelope>
 
<!-- The SOAP/XML Request -->
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:flo="http://lh.dmtispatial.com/services/floodservice/" xmlns:lh="http://lh.dmtispatial.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <flo:GetFloodEvaluationBatch>
         <!--Optional:-->
         <!--type: ReturnPeriod - enumeration: [OneIn20Years,OneIn100Years,OneIn200Years,OneIn500Years,OneIn1500Years]-->
         <flo:floodReturnPeriod>OneIn200Years</flo:floodReturnPeriod>
         <!--Optional:-->
         <flo:points>
            <!--Zero or more repetitions:-->
            <lh:Point>
               <!--type: double-->
               <lh:Latitude>53.532303</lh:Latitude>
               <!--type: double-->
               <lh:Longitude>-113.491386</lh:Longitude>
            </lh:Point>
            <lh:Point>
               <!--type: double-->
               <lh:Latitude>49.319307</lh:Latitude>
               <!--type: double-->
               <lh:Longitude>-117.660462</lh:Longitude>
            </lh:Point>
            <lh:Point>
               <!--type: double-->
               <lh:Latitude>0</lh:Latitude>
               <!--type: double-->
               <lh:Longitude>0</lh:Longitude>
            </lh:Point>
         </flo:points>
         <!--Optional:-->
         <!--type: string-->
         <flo:transactionId>123</flo:transactionId>
      </flo:GetFloodEvaluationBatch>
   </soapenv:Body>
</soapenv:Envelope>
 
<!-- The SOAP/XML Response -->
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <GetFloodEvaluationBatchResponse xmlns="http://lh.dmtispatial.com/services/floodservice/">
         <GetFloodEvaluationBatchResult xmlns:a="http://lh.dmtispatial.com/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <a:FloodReturnPeriod>OneIn200Years</a:FloodReturnPeriod>
            <a:TransactionId>123</a:TransactionId>
            <a:FloodDepth xmlns:b="http://schemas.datacontract.org/2004/07/DMTI.LH.Services">
               <b:DepthData>
                  <b:Depth>3</b:Depth>
                  <b:DepthDescription>1 < x <= 3</b:DepthDescription>
               </b:DepthData>
               <b:DepthData>
                  <b:Depth>6</b:Depth>
                  <b:DepthDescription>x > 9</b:DepthDescription>
               </b:DepthData>
               <b:DepthData>
                  <b:Depth>127</b:Depth>
                  <b:DepthDescription>No data found</b:DepthDescription>
               </b:DepthData>
            </a:FloodDepth>
         </GetFloodEvaluationBatchResult>
      </GetFloodEvaluationBatchResponse>
   </s:Body>
</s:Envelope>
 
 

REST Service

REST Operations

There are two Flood Service operation request available through REST

  • GetFloodIndication: Accepts a single coordinate location and returns true if the submitted coordinate is within the 1 in 1,500 year Return Period. Returns false if the coordinate is not within the 1 in 1,500 year Return Period.
    • latitude (double): The WGS84 latitude of the location specified
    • longitude (double): The WGS84 longitude of the location specified
    • transactionId (optional string): an optional transaction identifier for the request

  • GetFloodEvaluation: Accepts a single coordinate location and a Return Period as input and returns the depth information for the submitted Return Period at that coordinate. A code of 127 (No Data Found) is returned if the coordinate is not within the submitted Return Period.
    • floodReturnPeriod (string): Valid Return Period strings are OneIn20Years, OneIn100Years, OneIn200Years, OneIn500Years, OneIn1500Years
    • latitude (double): The WGS84 latitude of the location specified
    • longitude (double): The WGS84 longitude of the location specified
    • transactionId (optional string): an optional transaction identifier for the request

FloodReturnPeriod Enumeration Response Values:
VALUE
DESCRIPTION
0
OneIn20Years
1
OneIn100Years
2
OneIn200Years
3
OneIn500Years
4
OneIn1500Years

Examples:

<!-- REST Request -->
https://lhflood.dmtispatial.com/services/floodservice/floodserviceRest.svc/GetFloodIndication?latitude=53.532303&longitude=-113.491386&transactionId=1
https://lhflood.dmtispatial.com/services/floodservice/floodserviceRest.svc/GetFloodIndication?latitude=49.319307&longitude=-117.660462&transactionId=2
https://lhflood.dmtispatial.com/services/floodservice/floodserviceRest.svc/GetFloodIndication?latitude=0&longitude=0&transactionId=3
 
<!-- REST Response in JSON -->
{
   "FloodReturnPeriod": 4,
   "TransactionId": "1",
   "InFloodBoundary": [true]
}
{
   "FloodReturnPeriod": 4,
   "TransactionId": "2",
   "InFloodBoundary": [true]
}
{
   "FloodReturnPeriod": 4,
   "TransactionId": "3",
   "InFloodBoundary": [false]
}
 
<!-- REST Requests -->
https://lhflood.dmtispatial.com/services/floodservice/floodserviceRest.svc/GetFloodEvaluation?floodReturnPeriod=OneIn100Years&latitude=53.532303&longitude=-113.491386&transactionId=1
https://lhflood.dmtispatial.com/services/floodservice/floodserviceRest.svc/GetFloodEvaluation?floodReturnPeriod=OneIn1500Years&latitude=49.319307&longitude=-117.660462&transactionId=2
https://lhflood.dmtispatial.com/services/floodservice/floodserviceRest.svc/GetFloodEvaluation?floodReturnPeriod=OneIn200Years&latitude=0&longitude=0&transactionId=3
https://lhflood.dmtispatial.com/services/floodservice/floodserviceRest.svc/GetFloodEvaluation?floodReturnPeriod=OneIn500Years&latitude=53.532303&longitude=-113.491386&transactionId=4
 
<!-- REST Responses in JSON -->
{
   "FloodReturnPeriod": 1,
   "TransactionId": "1",
   "FloodDepth": [   {
      "Depth": 2,
      "DepthDescription": "0.3 < x <= 1"
   }]
}
{
   "FloodReturnPeriod": 4,
   "TransactionId": "2",
   "FloodDepth": [   {
      "Depth": 6,
      "DepthDescription": "x > 9"
   }]
}
{
   "FloodReturnPeriod": 2,
   "TransactionId": "3",
   "FloodDepth": [   {
      "Depth": 127,
      "DepthDescription": "No data found"
   }]
}
{
   "FloodReturnPeriod": 3,
   "TransactionId": "4",
   "FloodDepth": [   {
      "Depth": 4,
      "DepthDescription": "3 < x <= 6"
   }]
}