AWDB Web Service Announcements and Release Notes
- October 1, 2021: The following changes apply to the getCentralTendency method:
The getFlags parameter will be replaced with getNumberObservationsUsed
The dataSetFlag will be replaced with dataset_NumberObservationsUsed
The getForecastPeriodAverages and getForecastPeriodCentralTendency methods will now have the getNumberObservationsUsedParameter
January 25, 2017: USDA moves all websites to HTTP Secure. The National Water and Climate Center (NWCC) is part of the United States Department of Agriculture (USDA) Natural Resources Conservation Service (NRCS). Over the last several weeks, all USDA websites (including the NWCC website) have moved from Hyper Text Transfer Protocol (HTTP) to Hyper Text Transfer Protocol Secure (HTTPS) for internet data transfer. The move to HTTPS ensures that all communications between the user's browser and USDA websites are encrypted and secure. Web browsers such as Internet Explorer, Firefox, and Chrome now display a padlock icon in the address bar to visually indicate an HTTPS connection.
If users are experiencing problems with bookmarks, saved URLs, web service calls, or other functions, it may be related to the change from HTTP to HTTPS. If there's a reference or bookmark to http://www.wcc.nrcs.usda.gov, try changing it to https://www.wcc.nrcs.usda.gov.
Attention Users Connecting to the AWDB Web Service from a .NET Application: If you are attempting to connect to the AWDB Web Service from a .NET client, you may receive an HTTP 502 (Bad Gateway) error. This is because, by default, .NET applications include the "HTTP" header "Expect: 100-continue". This header causes the AWDB Web Service to return the HTTP 502 (Bad Gateway) error. This can be resolved by telling the .NET application to not include this HTTP header when making requests to the web service. Adding the following line will prevent the header from being included in requests to the AWDB Web Service. Note: Ensure that this is set before any calls are made to the web service.
System.Net.ServicePointManager.Expect100Continue = false;
On Thursday, March 31, 2016, the Air-Water Database (AWDB) Web Service moved from the Portland, OR, data center to a new server at the National Information Technical Center in Kansas City, MO. Most users of the AWDB Web Service are being automatically redirected from the Portland server to the Kansas City server and no action is necessary.
However, some users whose systems do not support redirected urls may not see this change. These users will need to change the WSDL (Web Service Definition Language) url from the old location to the new WSDL url location. For more information on changing the url to the AWDB Web Service, click here.
January 14, 2015 - The AWDB Web Service has been updated to version 2.18.0. This release contains the addition of two attributes to the Data object that is returned by the getData method. The first attribute is the stationTriplet. This identifies the station that each Data object which is in the array returned by the getData method is for. The second attribute is an array of collectionDates that will contain the date of collection for each value which is returned when a user asks for SEMIMONTHLY data.
If you use the Visual Basic API, any Excel spreadsheet or other application that uses the API will continue to work, and you will not have to make any changes to your code. If you want to use the stationTriplet or the collectionDates returned by the getData method, you can get the updated Visual Basic API here. The zip file AwdbWebServiceVBClasses-1.9.10.zip contains the latest version of the API that supports retrieval of the stationTriplet and the collectionDates from the getData method.
If your application does not call the getData method of the AWDB Web Service you also are not affected by the changes and you do not have to do anything to your application(s).
If you have generated "stubs" from the WSDL for the AWDB Web Service to have your application communicate with the AWDB Web Service, you will need to re-generate the "stubs" and rebuild your application. To prevent any downtime for your application, you can rebuild your application in advance of January 14 by generating new "stubs" using the new WSDL file.
If you have any questions about these changes, please contact ServiceNow.
|Sept. 13, 2016
|Added new methods: getDataInsertedOrUpdatedSince and getInstantaneousDataInsertedOrUpdatedSince.
Jan. 15, 2015
- Removed the dependence on the SNOTEL Web Service for the getInstantaneousData call (this may result in a slight performance improvement also).
- Modified the getStationMetadata method so that it doesn’t issue an error when some of the metadata values are null (such as county or timezone).
- Modified the getData method to return the stationTriplet in the return object for each station included in the results.
- Modified the getData method to return collectionDates when the duration is ‘SEMIMONTHLY’ if collection dates exist for the data being requested.
|Oct. 23, 2013
|Fixed a defect in the getStations() method where using wildcards in the stationId parameter was not working correctly. Also, the getStationMetadata() and getStationMetadataMultiple() methods now return the precise latitude and longitude for all stations.
|Aug. 7, 2013
|Fixed a defect in the getInstantaneousData method where it was not returning an empty slot when a station did not have data for the requested element. This was causing data to be misinterpreted by applications when data for multiple stations was being requested. If someone had requested data for two stations and the first station didn’t have any data for the requested element, nothing was being returned for the first station, so applications would assume that the data returned was for the first station requested and there was no data for the second station.
Fixed a problem in the getHourlyData method where it would always retrieve ordinal 1 data regardless of the ordinal passed in. Also modified getInstantaneousData so that it will work to retrieve ordinal 2 or greater data even if there is only an ordinal 1 station element that exists.
|July 24, 2013
|Modified the getData and getInstanteousData methods so that network codes are not hard-coded and instead are table-driven. This will allow changing the network codes of stations (such as splitting SNTL into SNTL and SCAN) in the database. Also added a timestamp on the status page.
|May 9, 2013
|The getData method now has an additional parameter called ‘alwaysReturnDailyFeb29’. If ‘true’ is passed in for this parameter (or null), requests for daily data will always return a slot for February 29 (regardless of whether the year is a leap year or not. For leap years, the actual February 29 value will be returned; for non-leap years, null will be returned). If ‘false’ is passed in, requests for daily data will only return a slot for February 29 for leap years.
The methods that return central tendencies (and peak central tendencies) now return values rounded to the precision of the sensor that collected the data.
The value that is returned for snow depth data is no longer affected by the snow water equivalent data co-located at a station (previously if the snow water equivalent value was zero, the snow depth value would be forced to zero).
|Apr. 5, 2013
|Defect fix on getHourlyData method which was producing return of erroneous results.
|Mar. 7, 2013
|Modified the getStations call so that the “hucs” parameter has an implied wildcard at the end.
Modified the getStationMetadata call so that the “huc” attribute now returns the 12-digit HUC (hydrologic unit code) of the station. There is a new attribute that is now returned called “hud” which is the 8-digit HUC (based on the Hydrologic Unit Dataset).
|Feb. 11, 2013
|Defect fix on the status page which was causing the status page to fail in production.
|Jan. 14, 2013
|The data retrieval code was modified so that if a SWE value is between 0 and -1, it will be returned as 0.
Deployed Web Service Test Tool to https://www.wcc.nrcs.usda.gov/awdbWebService
|Dec. 17, 2013
|Modified the getStationMetadata call so that the “huc” attribute now returns the 12-digit HUC of the station. There is a new attribute that is now returned also called “hud” which is the 8-digit HUC (that is based on the Hydrologic Unit Dataset).
|Nov. 26, 2013
|Modified the code so that derived PRCP normals are rounded to the precision of the sensor before subtraction.
|Oct. 15, 2013
|Fixed a defect in getCentralTendencyData where it was not setting the centralTendencyType correctly in the return object.
Oct. 1, 2012
Added the following 30-Year Central Tendency methods: