Skip to content

Validate API

The Validate API, formally named PRUVE, provides tools for validating POWER data against authoritative ground-based surface observations. Given a location, data parameter, and date range of interest, validate automatically identifies the closest qualifying surface station and in-situ data source. It then compares POWER modeled or observed data to that station's measurements.

The PRUVE naming designation refers to the former application before the capabilities were merged into the DAV. The name remains, and it now refers solely to user side analysis of POWER data quality at in-situ surface site locations.

Additional Data Specifications:

  • Validate selects the closest qualifying surface site to the requested latitude and longitude.
  • Validation sources include NOAA ISD (hourly meteorology), NOAA GSOD (daily meteorology), WCRP BSRN (solar radiation), and NASA AERONET (aerosol-related solar).
  • All times are UTC.

Where Validate Fits

PRUVE is the API behind the Validate tool in the Data Access Viewer (DAV). The legacy PaRameter Uncertainty ViEwer application remains functional, but new development is focused on the DAV Validate tool backed by this API.

Services

Services Description
Descriptive Statistics Computes descriptive statistics (mean, median, min, max, standard deviation) for POWER and the nearest surface site at a point location.
Validation Analysis Computes validation statistics (bias, RMSE, slope, intercept, r²) comparing POWER data to the nearest surface site.
Advanced Plots Generates interactive visualizations comparing POWER and surface site data (heatmap, time series, trend, and anomalies).

Formats

Formats Available Purpose
HTML Yes Human-readable plotting.
JSON Yes Text-based object for ingestion into web applications using the Bokeh plotting library. This is the default.

Time Standard

PRUVE provides data in Universal Time Coordinated (UTC).

  • Hourly and daily temporal levels are available.
  • Use time-standard=utc in the API request URL (default).

Validation Sources

Domain Source Temporal Level
Hourly meteorology NOAA ISD Hourly
Daily meteorology NOAA GSOD Daily
Solar radiation WCRP BSRN Hourly, Daily
Aerosol-related solar NASA AERONET Hourly, Daily

Each source has its own site-selection and quality-control criteria applied during pre-processing. The application selects the closest qualifying surface site to the requested location.

Request Structure

  • The request arguments can be in any order after the question mark.
  • PRUVE automatically selects the nearest qualifying surface site based on the requested location, temporal level, and parameter.

To help construct and test API requests, use the API Pages for the POWER Validate API.

Descriptive Statistics

Returns descriptive statistics and histogram plots for both POWER and the nearest surface site at the requested location.

1
/api/pruve/statistics/descriptive?temporal=daily&parameter=t2m&start=2020-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=HTML
1
/api/pruve/statistics/descriptive?temporal=daily&parameter=t2m&start=2020-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=JSON
1
/api/pruve/statistics/descriptive?temporal=daily&parameter=t2m&start=2020-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=HTML&units=imperial
1
/api/pruve/statistics/descriptive?temporal=hourly&parameter=allsky_sfc_sw_dwn&start=2020-06-01&end=2020-06-30&latitude=48.0&longitude=2.3&format=HTML

Validation Analysis

Returns POWER-vs-station validation statistics including bias, RMSE, slope, intercept, r², scatter plots, and time-series comparisons.

1
/api/pruve/statistics/validation?temporal=daily&parameter=t2m&start=2019-01-01&end=2019-12-31&latitude=40.7&longitude=-74.0&format=HTML
1
/api/pruve/statistics/validation?temporal=daily&parameter=ws10m&start=2020-01-01&end=2020-12-31&latitude=51.5&longitude=-0.1&format=HTML
1
/api/pruve/statistics/validation?temporal=hourly&parameter=allsky_sfc_sw_dwn&start=2020-06-01&end=2020-08-31&latitude=48.0&longitude=2.3&format=HTML
1
/api/pruve/statistics/validation?temporal=daily&parameter=t2m&start=2019-01-01&end=2019-12-31&latitude=40.7&longitude=-74.0&format=JSON

Advanced Plots

Heatmap

Returns a climatological heatmap comparing POWER and surface site data.

1
/api/pruve/plot/heatmap?temporal=daily&parameter=t2m&start=2015-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=HTML&operation=climatological-days
1
/api/pruve/plot/heatmap?temporal=daily&parameter=t2m&start=2015-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=HTML&operation=monthly

Time Series

Returns a time-series plot with rolling averages for POWER and surface site data.

1
/api/pruve/plot/variable?temporal=daily&parameter=allsky_sfc_sw_dwn&start=2020-01-01&end=2020-12-31&latitude=48.0&longitude=2.3&format=HTML
1
/api/pruve/plot/variable?temporal=daily&parameter=t2m&start=2020-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=JSON

Trend

Returns an annual trend plot with aggregated whisker statistics for POWER and surface site data.

1
/api/pruve/plot/trend?temporal=daily&parameter=ws10m&start=2010-01-01&end=2020-12-31&latitude=51.5&longitude=-0.1&format=HTML
1
/api/pruve/plot/trend?temporal=daily&parameter=t2m&start=2010-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=JSON

Anomalies

Returns a monthly anomalies plot relative to the climatological mean. An optional month parameter (1–12) filters results to a single month; the default (0) returns all months.

1
/api/pruve/plot/anomalies?temporal=daily&parameter=t2m&start=2005-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=HTML
1
/api/pruve/plot/anomalies?temporal=daily&parameter=t2m&start=2005-01-01&end=2020-12-31&latitude=35.0&longitude=-80.0&format=HTML&month=7
1
/api/pruve/plot/anomalies?temporal=daily&parameter=allsky_sfc_sw_dwn&start=2005-01-01&end=2020-12-31&latitude=48.0&longitude=2.3&format=JSON

Limitations

Temporal Level

  • The PRUVE endpoints were written to validate hourly and daily POWER data only.
  • The anomalies plot endpoint does not support hourly data.
  • Heatmap plots are not available for AERONET data.

Site Availability

  • Not all parameters have surface station coverage at every location. If no qualifying site exists near the requested point, the API returns a validation error.
  • Surface site availability varies by time period. Longer date ranges increase the likelihood of finding a qualifying site.
  • While POWER data is continuous, surface sites have lots of data gaps due to a variety of factors. A timeseries request may show missing data, even if the site is considered "available" for the time range.

OpenAPI Reference

The authoritative request/response schema for every PRUVE endpoint is published on the POWER PRUVE API Pages.

See Also