Endpoint: rivers/gauges

The rivers/gauges endpoint provides access to enhanced information for the river and lake gauges utilized within the rivers endpoint. The primary source the gauge information is the NOAA Advanced Hydrologic Prediction Service (AHPS). Gauge information will include location information and when available recent crests, historical crests and flood impacts.

https://api.aerisapi.com/rivers/gauges/

Data CoverageContinental US, Alaska, Hawaii

Included With Aeris Developer,  AMP Premium

Supported Actions

The following actions are supported with the rivers/gauges endpoint:

:id Requesting data by using the :id action is used for returning data for a particular item that has an ID associated with it. This is the primary method for requesting general weather information for a single location (observations, forecasts, advisories, etc.) as the location's name or a zip code serves as the id. Other endpoints may expect a certain value for the ID, such as storm cells whose ID value is a combination of the radar site identifier and unique identifier assigned to every storm cell. Refer to an enpoint's detailed documentation for specific information regarding how to use the :id action.
closest The closest action will query the API for data that is closest to the requested place and return the results, if any, in order from closest to farthest. If no limit is provided in the request, then only the closest single result will be returned.

If your request does not return results, you may try setting or increasing the radius being used.
search The search action is used as a more general query method and expects the query to be defined with the custom query for the request. Unlike the closest action, results will not be returned in any particular order.
within The within action allows for returning data within a variety of different geometrical regions. Currently supported geometries include a circle (requires a center point and radius), square (requires two coordinate points defining the top-left and bottom-right corners) and polygon (requires at least three coordinate points). Unlike the closest action, the results will not be returned in any particular order based on distance.

Supported Parameters

The following parameters are optional unless otherwise noted:

p p=:place Defines the location to query data for. Refer to the list of supported place value formats.
limit limit=:total The total number of results to return as an integer. Each endpoint may have a set maximum for this value depending on usage.

The default limit is 1 if not specified.
skip skip=:number Used to skip over a specific number of results in the data set.
query query=:string Used to filter results based on certain fields in the data set. See Advanced Queries for more details.
filter filter=:string Predefined filters for limiting the results. The filter value can be a single, comma-delimited or a semicolon delimited string of filter names.
sort sort=:string Used to sort results based on certain fields in the data set. See Sorting for more details.
radius radius=:distance:unit When requesting the closest results within a circle, the radius determines how far from the specified location to search. A valid unit value must be included in your radius value, e.g., "5mi", "10km", "25miles". If no unit is provided, your value is assumed to be in meters by default.

Most endpoints utilize a default radius of 50 miles, though some endpoints, such as lightning, may have tighter restrictions specified.
callback callback=:functionName Used with JSONP implementation.

Defines the callback function to use for the response. The response will be enclosed as C(response), where C is the callback function provided.
fields fields=:string Provides a comma separated list of values for the API to return. This parameter is often used to limit the amount of data returned. See Reducing Output.
format format=:string Defines the API output format. The available options include:
format=json - Standard JSON output. This is the default.
format=geojson - API will output GeoJSON


Supported Filters

The following filters can be passed to the filter parameter to reduce the results that are returned:

impacts Limit results to gauges with flood impact information
recentcrests Limit results to gauges that have recent crest information
historiccrests Limit results to gauges that have historic crest information
lowwaterrecords Limit results to gauges that have low water record information

Supported Query Properties

Use the following supported property keys when creating custom queries for your requests:

id Query by the gauge ID
place Query by the gauge place name
waterbody Query by the gauge waterbody name
state Query by the gauge two letter state abbreviation
country Query by the gauge two letter country abbreviation

Sortable Fields

You can use the following fields to sort the data returned in your response:

id Sort by the gauge IDs
place Sort by the gauge place names
waterbody Sort by the gauge waterbodys
state Sort by the gauge two letter state abbreviation
country Sort by the gauge two letter country abbreviation

Examples

The /[:endpoint]/[:action]? portion within the query template below can be exchanged with any of the examples. Also, please note you will need to input your client credentials in the [ID] and [SECRET] fields which can be found under the Apps section of the members area.

https://api.aerisapi.com/[:endpoint]/[:action]?client_id=[ID]&client_secret=[SECRET]

Return the 10 closest gauges to Houston, TX
/rivers/gauges/houston,tx?limit=10&

Return the 10 closest gauges to Houston, TX that include flood impact information
/rivers/gauges/houston,tx?limit=10&filter=impacts&

Response

The following is an example of what each object in the response will consist of. Depending on your requested action, the response may contain multiple instances of this object within an array.

Default
GeoJSON

{
   "id":"MRGI4",
   "loc":{
      "long":-95.431944,
      "lat":42.503889
   },
   "place":{
      "name":"galva",
      "state":"ia",
      "country":"us"
   },
   "profile":{
      "tz":"America\/Chicago",
      "waterbody":"maple river",
      "cats":{
         "actionFT":17,
         "actionM":5.18,
         "floodFT":19,
         "floodM":5.79,
         "moderateFT":21,
         "moderateM":6.4,
         "majorFT":23,
         "majorM":7.01,
         "lowthreshM":null,
         "lowthreshFT":null
      },
      "impacts":[
         {
            "heightFT":21,
            "heightM":6.4,
            "text":"Water begins to flood fields south of Galva."
         },
         {
            "heightFT":19,
            "heightM":5.79,
            "text":"Flooding begins to impact the fields north of Galva."
         }
      ],
      "lowWaterRecords":null,
      "crests":{
         "recent":[
            {
               "heightFT":23.37,
               "heightM":7.12,
               "timestamp":1403006400,
               "dateTimeISO":"2014-06-17T07:00:00-05:00"
            }
         ],
         "historic":[
            {
               "heightFT":23.37,
               "heightM":7.12,
               "timestamp":1403006400,
               "dateTimeISO":"2014-06-17T07:00:00-05:00"
            }
         ]
      }
   }
}
								

{
   "type":"FeatureCollection",
   "features":[
      {
         "type":"Feature",
         "id":"MRGI4",
         "geometry":{
            "type":"Point",
            "coordinates":[
               -95.431944,
               42.503889
            ]
         },
         "properties":{
            "id":"MRGI4",
            "loc":{
               "long":-95.431944,
               "lat":42.503889
            },
            "place":{
               "name":"galva",
               "state":"ia",
               "country":"us"
            },
            "profile":{
               "tz":"America\/Chicago",
               "waterbody":"maple river",
               "cats":{
                  "actionFT":17,
                  "actionM":5.18,
                  "floodFT":19,
                  "floodM":5.79,
                  "moderateFT":21,
                  "moderateM":6.4,
                  "majorFT":23,
                  "majorM":7.01,
                  "lowthreshM":null,
                  "lowthreshFT":null
               },
               "impacts":[
                  {
                     "heightFT":21,
                     "heightM":6.4,
                     "text":"Water begins to flood fields south of Galva."
                  },
                  {
                     "heightFT":19,
                     "heightM":5.79,
                     "text":"Flooding begins to impact the fields north of Galva."
                  }
               ],
               "lowWaterRecords":null,
               "crests":{
                  "recent":[
                     {
                        "heightFT":23.37,
                        "heightM":7.12,
                        "timestamp":1403006400,
                        "dateTimeISO":"2014-06-17T07:00:00-05:00"
                     }
                  ],
                  "historic":[
                     {
                        "heightFT":23.37,
                        "heightM":7.12,
                        "timestamp":1403006400,
                        "dateTimeISO":"2014-06-17T07:00:00-05:00"
                     }
                  ]
               }
            }
         }
      }
   ]
}
								

Response Properties

The following properties will be provided in every response object:

id (string) Gauge ID
profile (object) Object of profile information
profile.tz (string) The timezone name association with the gauge's location.
profile.waterbody (string) The waterbody that the gauge is on.
profile.cats (object) Object of the gauge flood categories
profile.cats.actionFT (number) The height in feet near flood stage. Null if not available
profile.cats.actionM (number) The height in meters near flood stage. Null if not available
profile.cats.floodFT (number) The water height in feet that flooding begins to occur. Null if not available.
profile.cats.floodM (number) The water height in meters that flooding begins to occur. Null if not available.
profile.cats.moderateFT (number) The water height in feet that moderate flooding begins to occur. Null if not available.
profile.cats.moderateM (number) The water height in meters that moderate flooding begins to occur. Null if not available.
profile.cats.majorFT (number) The water height in feet that major flooding begins to occur. Null if not available.
profile.cats.majorFM (number) The water height in meters that major flooding begins to occur. Null if not available.
profile.impacts (array) Array of flood impacts. Null if not available
profile.impacts.#.heightFT (number) The height in feet that the impact begins to occur.
profile.impacts.#.heightM (number) The height in meters that the impact begins to occur.
profile.impacts.#.text (string) The impact description.
profile.lowWaterRecords (array) Array of low water records
profile.lowWaterRecords.#.timestamp (number) The unix timestamp of the date the low water record occurred
profile.lowWaterRecords.#.dateTimeISO (string) ISO 8601 date of when the low water record occurred
profile.lowWaterRecords.#.heightFT (number) The water height in feet of the low water record.
profile.lowWaterRecords.#.heightM (number) The water height in meters of the low water record.
profile.crests (object) Object of crest information
profile.crests.recent (array) Array of recent crests. Null if unavailable
profile.crests.recent.#.timestamp (number) The unix timestamp of the date of the crest
profile.crests.recent.#.dateTimeISO (string) The ISO 8601 date of the crest
profile.crests.recent.#.heightFT (number) The height in feet of the crest
profile.crests.recent.#.heightM (number) The height in meters of the crest
profile.crests.historic (array) Array of historic crests. Null if unavailable
profile.crests.historic.#.timestamp (number) The unix timestamp of the date of the crest
profile.crests.historic.#.dateTimeISO (string) The ISO 8601 date of the crest
profile.crests.historic.#.heightFT (number) The height in feet of the crest
profile.crests.historic.#.heightM (number) The height in meters of the crest
loc.long (number) The longitude coordinate of the record.
loc.lat (number) The latitude coordinate of the record.
place.name (string) The place or nearest place to the record.
place.state (string) The state abbreviation in which the record is located. This may be null depending on the country.
place.country (string) The country abbreviation in which the record is located.
relativeTo.lat (number) Latitude coordinate of the location used for the request. This may be different than the record's loc.lat value if there was no record exactly at the request location.
relativeTo.long (number) Longitude coordinate of the location used for the request. This may be different than the record's loc.long value if there was no record exactly at the request location.
relativeTo.bearing (number) Bearing in degrees of the record's location relative to the location used for the request.
relativeTo.bearingEng (string) Cardinal direction of the record relative to the location used for the request.
relativeTo.distanceKM (number) Distance, in kilometers, from the requested location to the record's actual location.
relativeTo.distanceMI (number) Distance, in miles, from the requested location to the record's actual location.