Endpoint: observations/summary

The observations/summary endpoint provides access to daily summaries based on received observations.

https://api.aerisapi.com/observations/summary/

Data CoverageGlobal

Included With API Developer,  API Premium

Supported Actions

The following actions are supported with the observations/summary 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.
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.
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.
query query=:string Used to filter results based on certain fields in the data set. See Advanced Queries for more details.
sort sort=:string Used to sort results based on certain fields in the data set. See Sorting for more details.
skip skip=:number Used to skip over a specific number of results in the data set.
from from=:string Returns the results starting form the value specified.

Supports a UNIX timestamp or a specific date string. Alternatively, common date formats supported by the PHP strtotime() function will be accepted; however, commas are not accepted.

Examples:
from=tomorrow
from=friday
from=1302883980
from=7/10/2011
from=2011/07/10
from=+2hours
from=2017-02-27 5:00 PM
to to=:string Returns the results between now and the value specified. When used in conjunction with the from parameter, the value of to will be relative to the value of from, not relative to the current time.

Supports a UNIX timestamp or a specific date string. Alternatively, common date formats supported by the PHP strtotime() function will be accepted; however, commas are not accepted.

Examples:
to=+6hours
to=+5days
to=1302883980
to=7/10/2011
to=2011/07/10
to=2017-02-27 5:00 PM
plimit plimit=:total Applied only on the periods property, the total number of periods to return as an integer. This parameter has a normal default of one (1).
psort psort=:string Applied only on the periods property, used to sort results based on certain fields contained within the periods.
pskip pskip=:number Applied only on the periods property, used to skip over a specific number of periods in the data set.
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.

Supported Filters

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

allstations Returns records using all available stations including personal weather stations.
official Returns records using official government stations.
metar Returns records using only METAR observation stations.
pws Returns records using only PWS observation stations.
mesonet Returns records using only MESONET observation stations.
hasprecip Returns records that contain a precipitation observation.

Supported Query Properties

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

id Query against the station ID.
count Query against the total number of observations used to create the summary.
maxt Query against the maximum temperature in Celsius.
mint Query against the minimum temperature in Celsius.
avgt Query against the average temperature in Celsius.
maxdewpt Query against the maximum dew point temperature in Celsius.
mindewpt Query against the minimum dew point temperature in Celsius.
avgdewpt Query against the average dew point temperature in Celsius.
maxrh Query against the maximum relative humidity (percentage).
minrh Query against the minimum relative humidity (percentage).
avgrh Query against the average relative humidity (percentage).
maxv Query against the maximum visibility in meters.
minv Query against the minimum visibility in meters.
avgv Query against the average visibility in meters.
wind Query against the maximum wind speed in knots.
gust Query against the maximum wind gust speed in knots.
maxp Query against the maximum pressure in millibars.
minp Query against the minimum pressure in millibars.
avgp Query against the average pressure in millibars.
precip Query against the total precipitation in millimeters (liquid equivalent).
precipc Query against the total number of observations that reported precipitation.
elev Query against the observation station elevation in meters.
name The name of the observation station.
state The 2-letter state/province abbreviation of the observation station (US & Canada).
country The 2-letter country abbreviation of the observation station.
dt Query against the date of the record.
hasprecip Returns observations that have a recorded precipitation.

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 latest summary for ICAO KMSP.
/observations/summary/KMSP?

Returns the daily summary for yesterday for ICAO KMSP.
/observations/summary/KMSP?from=yesterday&

Returns the daily summaries for the last 5 days for ICAO KMSP.
/observations/summary/KMSP?from=-5days&plimit=5&

Returns the daily summary for the closest observation station to Minneapolis, MN that at least reported temperature information.
/observations/summary/minneapolis,mn?from=yesterday&

Return the current day summary for up to 5 observations near zip code 55403.
/observations/summary/closest?p=55403&limit=5&

Return the daily summary with the hottest temperature from the past week for the closest observation station to zip code 55403.
/observations/summary/closest?p=55403&psort=maxt:-1&plimit=1&from=-1week&

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.


{
   "id":"MID_E3700",
   "loc":{
      "long":-93.32573,
      "lat":44.95275
   },
   "place":{
      "name":"saint louis park",
      "state":"mn",
      "country":"us"
   },
   "periods":[
      {
         "summary":{
            "timestamp":1410152400,
            "dateTimeISO":"2014-09-08T00:00:00-05:00",
            "ymd":20140908,
            "range":{
               "maxTimestamp":1410216000,
               "maxDateTimeISO":"2014-09-08T17:40:00-05:00",
               "minTimestamp":1410152400,
               "minDateTimeISO":"2014-09-08T00:00:00-05:00",
               "count":102
            },
            "temp":{
               "maxC":24,
               "maxF":76,
               "minC":16,
               "minF":60,
               "avgC":18.6,
               "avgF":65.4,
               "count":102
            },
            "dewpt":{
               "maxC":15,
               "maxF":60,
               "minC":11,
               "minF":51,
               "avgC":12.5,
               "avgF":54.5,
               "count":102
            },
            "rh":{
               "max":75,
               "min":55,
               "avg":68,
               "count":102
            },
            "pressure":{
               "maxMB":1013,
               "maxIN":29.92,
               "minMB":1007,
               "minIN":29.72,
               "avgMB":1009.9,
               "avgIN":29.82,
               "count":102
            },
            "visibility":{
               "maxKM":null,
               "maxMI":null,
               "minKM":null,
               "minMI":null,
               "count":0,
               "avgKM":null,
               "avgMI":null
            },
            "wind":{
               "maxKTS":5,
               "maxKPH":10,
               "maxMPH":6,
               "gustKTS":14,
               "gustKPH":26,
               "gustMPH":16,
               "count":102,
               "minKTS":1,
               "minKPH":1,
               "minMPH":1,
               "avgKTS":2.4,
               "avgKPH":4.5,
               "avgMPH":2.8
            },
            "precip":{
               "totalMM":0,
               "totalIN":0,
               "count":102,
               "trace":false,
               "traceCount":0,
               "QC": "G",
               "method": "sum",
               "QCcode": 10 
            },
            "weather":{
               "coded":[
                  ":L:R"
               ],
               "count":1,
               "phrase":"Partly Cloudy with Light Rain",
               "primary":"Light Rain",
               "primaryCoded":":L:R",
               "icon":"rain.png"
            },
            "sky":{
               "max":81,
               "min":19,
               "avg":64,
               "count":102,
               "coded":[
                  "BK",
                  "SC",
                  "FW"
               ]
            },
            "solrad":{
               "maxWM2":null,
               "minWM2":null,
               "avgWM2":null,
               "count":0
            },
            "QC": {
               "max": null,
               "min": null,
               "types": [
                  null
               ],
               "count": 0
            }
            "spressure":{
               "maxMB":982,
               "maxIN":28.99,
               "minMB":976,
               "minIN":28.81,
               "avgMB":978.4,
               "avgIN":28.89,
               "count":102
            }
         }
      }
   ],
   "profile":{
      "tz":"America/Chicago",
      "elevM":271,
      "elevFT":889,
      "hasPrecip": true
   }
}
								

Response Properties

The following properties will be provided in every response object:

id (string) The observation station ID.
periods (array) An array of observation summary objects.
periods[#].summary.timestamp (number) UNIX timestamp of the summary. Midnight local time.
periods[#].summary.dateTimeISO (string) ISO 8601 date of the summary.
periods[#].summary.ymd (number) The year, month and date in YYYYMMDD format. Example: Jan 7, 2014: 20140107
periods[#].summary.range.maxTimestamp (number) UNIX timestamp of the maximum (latest) observation time in the summary.
periods[#].summary.range.maxDateTimeISO (string) ISO 8601 of the maximum (latest) observation time in the summary.
periods[#].summary.range.minTimestamp (number) UNIX timestamp of the minimum (earliest) observation time in the summary.
periods[#].summary.range.minDateTimeISO (string) ISO 8601 of the minimum (earliest) observation time in the summary.
periods[#].summary.range.count (number) The total number of observations used to make the summary.
periods[#].summary.temp.maxC (number) The maximum temperature in Celsius. Null if unavailable.
periods[#].summary.temp.maxF (number) The maximum temperature in Fahrenheit. Null if unavailable.
periods[#].summary.temp.minC (number) The minimum temperature in Celsius. Null if unavailable.
periods[#].summary.temp.minF (number) The minimum temperature in Fahrenheit. Null if unavailable.
periods[#].summary.temp.avgC (number) The average temperature in Celsius. Null if unavailable.
periods[#].summary.temp.avgF (number) The average temperature in Fahrenheit. Null if unavailable.
periods[#].summary.temp.count (number) The total number of observations that included temperature information.
periods[#].summary.dewpt.maxC (number) The maximum dew point in Celsius. Null if unavailable.
periods[#].summary.dewpt.maxF (number) The maximum dew point in Fahrenheit. Null if unavailable.
periods[#].summary.dewpt.minC (number) The minimum dew point in Celsius. Null if unavailable.
periods[#].summary.dewpt.minF (number) The minimum dew point in Fahrenheit. Null if unavailable.
periods[#].summary.dewpt.avgC (number) The average dew point in Celsius. Null if unavailable.
periods[#].summary.dewpt.avgF (number) The average dew point in Fahrenheit. Null if unavailable.
periods[#].summary.dewpt.count (number) The total number of observations that included dew point information.
periods[#].summary.rh.max (number) The maximum relative humidity (0-100%). Null if not available.
periods[#].summary.rh.min (number) The minimum relative humidity (0-100%). Null if not available.
periods[#].summary.rh.avg (number) The average relative humidity (0-100%). Null if not available.
periods[#].summary.rh.count (number) The total number of observations that included relative humidity information.
periods[#].summary.pressure.maxMB (number) The maximum MSLP in millibars. Null if not available.
periods[#].summary.pressure.maxIN (number) The maximum MSLP in inches mercury. Null if not available.
periods[#].summary.pressure.minMB (number) The minimum MSLP in millibars. Null if not available.
periods[#].summary.pressure.minIN (number) The minimum MSLP in inches mercury. Null if not available.
periods[#].summary.pressure.avgMB (number) The average MSLP in millibars. Null if not available.
periods[#].summary.pressure.avgIN (number) The average MSLP in inches mercury. Null if not available.
periods[#].summary.pressure.count (number) The total number of observations that included pressure information.
periods[#].summary.spressure.maxMB (number) The maximum station pressure in millibars. Null if not available.
periods[#].summary.spressure.maxIN (number) The maximum station pressure in inches mercury. Null if not available.
periods[#].summary.spressure.minMB (number) The minimum station pressure in millibars. Null if not available.
periods[#].summary.spressure.minIN (number) The minimum station pressure in inches mercury. Null if not available.
periods[#].summary.spressure.avgMB (number) The average station pressure in millibars. Null if not available.
periods[#].summary.spressure.avgIN (number) The average station pressure in inches mercury. Null if not available.
periods[#].summary.spressure.count (number) The total number of observations that included pressure information.
periods[#].summary.visibility.maxKM (number) The maximum visibility in kilometers. Null if not available.
periods[#].summary.visibility.maxMI (number) The maximum visibility in miles. Null if not available.
periods[#].summary.visibility.minKM (number) The minimum visibility in kilometers. Null if not available.
periods[#].summary.visibility.minMI (number) The minimum visibility in miles. Null if not available.
periods[#].summary.visibility.avgKM (number) The average visibility in kilometers. Null if not available.
periods[#].summary.visibility.avgMI (number) The average visibility in miles. Null if not available.
periods[#].summary.visibility.count (number) The total number of observations that included visibility information.
periods[#].summary.wind.maxKTS (number) The maximum wind speed in knots. Null if not available.
periods[#].summary.wind.maxKPH (number) The maximum wind speed in kilometers per hour. Null if not available.
periods[#].summary.wind.maxMPH (number) The maximum wind speed in miles per hour. Null if not available.
periods[#].summary.wind.minKTS (number) The minimum wind speed in knots. Null if not available.
periods[#].summary.wind.minKPH (number) The minimum wind speed in kilometers per hour. Null if not available.
periods[#].summary.wind.minMPH (number) The minimum wind speed in miles per hour. Null if not available.
periods[#].summary.wind.avgKTS (number) The average wind speed in knots. Null if not available.
periods[#].summary.wind.avgKPH (number) The average wind speed in kilometers per hour. Null if not available.
periods[#].summary.wind.avgMPH (number) The average wind speed in miles per hour. Null if not available.
periods[#].summary.wind.gustKTS (number) The maximum wind gust in knots. Null if not available.
periods[#].summary.wind.gustKPH (number) The maximum wind gust in kilometers per hour. Null if not available.
periods[#].summary.wind.gustMPH (number) The maximum wind gust in miles per hour. Null if not available.
periods[#].summary.wind.count (number) The total number of observations that included wind information.
periods[#].summary.precip.totalMM (number) The total liquid equivalent precipitation in millimeters. Null if not available.
periods[#].summary.precip.totalIN (number) The total liquid equivalent precipitation in inches. Null if not available.
periods[#].summary.precip.count (number) The total number of observations that included precip information.
periods[#].summary.precip.trace (boolean) True if at least one observation reported a trace of precipitation.
periods[#].summary.precip.traceCount (number) The total number of observations that reported a trace of precipitation.
periods[#].summary.weather.coded (array) Array of observed weather observations. Null if not available.
Refer to the coded weather doc for possible values.
periods[#].summary.weather.count (number) Total number of observations that reported observed weather.
periods[#].summary.weather.phrase (string) The general weather phrase for the summary period. Null if not available.
periods[#].summary.weather.primary (string) The primary weather string that occurred during the summary period. Null if not available.
periods[#].summary.weather.primaryCoded (string) The primary weather coded string. Null if not available.
Refer to the coded weather doc for possible values.
periods[#].summary.weather.icon (string) The standard Aeris icon string. Null if not available.
periods[#].summary.sky.max (number) The maximum sky coverage (0-100, 0 = clear, 100 = overcast). Null if not available.
periods[#].summary.sky.min (number) The minimum sky coverage (0-100, 0 = clear, 100 = overcast). Null if not available.
periods[#].summary.sky.avg (number) The average sky coverage (0-100, 0 = clear, 100 = overcast). Null if not available.
periods[#].summary.sky.count (number) Total number of observations that reported cloud coverage.
periods[#].summary.sky.coded (array) The coded reported sky coverages.
Refer to the coded weather doc for possible values.
periods[#].summary.solrad.maxWM2 (number) The maximum reported solar radiation. Null if not available.
periods[#].summary.solrad.minWM2 (number) The minimum reported solar radiation. Null if not available.
periods[#].summary.solrad.avgWM2 (number) The average reported solar radiation. Null if not available.
periods[#].summary.solrad.count (number) Total number of observations that reported solar radiation.
profile.hasPrecip (boolean) A boolean stating if the observation summary has precipitation.
profile.elevM (number) The elevation of the location in meters.
profile.elevFT (number) The elevation of the location in feet.
profile.tz (string) The timezone name association with the record's location.
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.