Current Weather Conditions

Forecasts are useful for predicting today's weather at the start of the day, but conditions can change quickly. At that point, having a more recent reading of the area's weather is key for making decisions in the middle of the day. The Current Weather Conditions, or Nowcast, API provides the current conditions. This API uses the data from the nearest weather station that is capable of hourly updates.

API Request

API Endpoints

HTTP Verbs and URIs

GET /v2/weather/fields/{fieldId}/currentconditions
  • Returns the current conditions from the nearest station capable of hourly reporting.

Parameters

Parameter Description Valid Values
{fieldId} The ID of the field location for which you want weather. A string

Query String Parameters

Query Parameter Name Description Valid Values
properties Only include these properties in the response. If not specified, then all properties are included by default. Any properties not specified are always included, and all child properties of a selection are included. Separate multiple choices with a comma. For example if you specify temperatures you will get min, max, and units. temperature
precipitation
solar
relativeHumidity
wind
units By default, the API will return metric units (e.g., Celsius, millimeters, etc). When set to usa:
  • temperatures are returned in Fahrenheit
  • precipitation is returned in inches
  • wind speed is returned in miles per hour
usa
metric (default)
sources The current conditions API returns the most recent report from the nearest station. By default, the stations include METAR (those considered "official" by NOAA) stations and personal weather stations. You can choose to only select only METAR stations or personal weather stations. Note that in some areas, the nearest METAR station may be rather far away. metar
mesonet
metar-mesonet
pws
all (default)

Request Body

None

HTTP Headers

Remember to always send your OAuth2 Access Token in the Authorization header (see Authentication). This API doesn't require any additional headers.

API Response

Response HTTP Status Codes and Headers

This API returns standard HTTP status codes and headers for aWhere APIs. No additional headers are used.

Response Body

Format

{
    "dateTime":"{timestamp}",
    "location":":{
        "latitude":{latitude},
        "longitude":{longitude},
        "fieldId":"{fieldId}",
        "nearestStation":{
            "distance":{distance},
            "units":"{distanceUnits}",
            "bearing":{bearingDegrees}
            }
        },
    "conditionsCode":"{conditionsCode}",
    "conditionsText":"{conditionsText}",
    "temperature":{ 
        "amount":{temperature}, 
        "units":"{tempUnits}"
        },
    "precipitation":{
        "amount":{precipitation},
        "units":"{precipUnits}"
        },
    "solar":{
        "amount":{solar},
        "units":"{solarUnits}"
        },
    "relativeHumidity":{ 
        "amount":{humidity}
        },
    "wind":{ 
        "amount":{wind},
        "units":"{windUnits}",
        "bearing":"{windBearing}",
        "direction":"{windDirection}",
        },
    "_links":{ 
        "self":{"href":"{selfLink}"},
        "curies":[{
            "name":"awhere",
            "href":"http://awhere.com/rels/{rel}",
            "templated":true
            }],
        "awhere:field":{"href":"{fieldLink}"}
        } 
}

Property Descriptions

Name Description
dateTime The timestamp of when the values were last reported.
location The location of the field from which the API is finding the nearest station, including the geolocation and repeating the supplied Field ID. The nearestStation property specifies the distance and bearing to the station used for the report.
conditionsCode A three-digit code that describes the forecasted conditions (e.g., "no rain, light winds"). Each digit corresponds to a different sub-section of the forecast. These digits can be used to render the correct icons or images. See the section below on conditions for details. Note: Weather stations do a poor job of reporting cloud cover in real time, therefore these codes do not include the cloud conditions like the forecast API does. In it's place, we return an X as a placeholder.
conditionsText A human-friendly description of the forecasted conditions. See the section below on conditions for details.
temperatures The last temperature reading, plus a property that describes the temperature units (e.g., "F" for Fahrenheit or "C" for Celsius). You can change the units with the units query string parameter.
precipitation The amount of rain that has fallen in the last hour or so, with the units (either "mm" or millimeters or "in" for inches). You can change the units with the units query string parameter.
solar The amount solar energy received so far this day. There is a units child property, but its value will always be in Watt hours per square meter (Wh/m^2).
humidity The current relative humidity. The units are always in percent.
wind The last reported wind speed at the reporting station, with the units (either "m/sec" for meters per second, or "mph" for miles per hour). You can change the units with the units query string parameter. Also included are child properties for the direction of the wind, either as the bearing (in degrees) or in a human-friendly direction string.
{selfLink} The URI you can use to retrieve this object again, however the data may be different.
awhere:field The URI you can use to retrieve the field location information.

Conditions Codes and Text

Conditions are the easy-to-understand summaries of the most recent weather stations reading, rendered in the conditionsCode and conditionsText response properties. Specifically, the condition code is a three-digit code where each digit represents a different category of the forecast. The first digit is for cloud conditions, the second digit for rainfall conditions, and the third digit represents wind forecast.

Digit Textual Description Constraints / Qualifications
Cloud Conditions (First Digit)
X Cloud Conditions Not Available Weather stations do a poor job of reporting cloud cover in real time, therefore these codes do not include the cloud conditions like the forecast API does. In it's place, we return an X as a placeholder.
Rain Conditions (Second Digit)
X Rain Not Reported The reporting station did not report a rain condition.
1 No Rain No trace of rain/precipitation.
2 Light Rain Trace amounts up to 2.54mm/hour.
3 Moderate Rain 2.55mm/hour to 7.62mm/hour of rainfall.
4 Heavy Rain More than 7.62mm/hour of rainfall.
Wind Conditions (Third Digit)
X Wind Not Reported The reporting station did not report a wind condition.
1 Light Wind / Calm 0–8 km/hr
2 Moderate Wind 8.01–32 km/hr
3 Windy 32.01–48 km/hr
4 Very Windy 48.01–64 km/hr
5 Strong Winds 64.01–88 km/hr
6 Hurricane Force More than 88 km/hr