Leverage The National Blend of Models (NBM) & The Global Forecast System (GFS) & The Rapid Refresh (RAP) & High-Resolution Rapid Refresh (HRRR) & GraphCast Global Forecast System (GraphCast GFS) & The Global Ensemble Forecast System (GEFS) & The Climate Forecast System (CFS)
Tens of thousands of points at hourly rate, for months at a time in a single http request, in seconds.
Simple API, open-source clients and clear documentation. Try it in minutes.
Killer pricing and performance. Extract only what you need. No need to download/archive, just consume the on-demand stream.
The National Blend of Models (NBM) is a robust, nationwide framework of calibrated forecast tools that combines both NWS and external numerical weather prediction outputs, along with refined post-processed guidance. Its primary objective is to deliver a highly accurate, consistent, and reliable foundation for gridded forecasts.
The Global Forecast System (GFS) is a weather forecasting model developed by the National Centers for Environmental Prediction (NCEP). It provides data on numerous atmospheric and land-soil characteristics—including temperature, wind, precipitation, soil moisture, and atmospheric ozone—by integrating four separate models for the atmosphere, ocean, land/soil, and sea ice. This combined approach helps depict weather conditions accurately.
The Rapid Refresh (RAP) is NOAA’s hourly-updated continental-scale assimilation and modeling system, operated by NCEP. Primarily covering North America, RAP consists of a numerical forecast model and an analysis/assimilation component to initialize that model. It is especially useful for producing Skew-T Log-P diagrams.
The High-Resolution Rapid Refresh (HRRR) is a real-time NOAA atmospheric model offering a 3-km resolution and hourly updates. It includes cloud-resolving and convection-allowing features, initialized by 3-km grids with radar data assimilation. Every 15 minutes, radar observations are incorporated over a one-hour cycle, adding further detail beyond the hourly data assimilation from the 13-km Rapid Refresh.
The GraphCast Global Forecast System (GraphCast GFS) is an experimental forecasting approach built upon Google DeepMind’s GraphCast Machine Learning Weather Prediction (MLWP) model. It aims to leverage cutting-edge machine learning methods for improved weather predictions.
The Global Ensemble Forecast System (GEFS) is a probabilistic weather prediction system managed by NOAA. It utilizes multiple ensemble members to generate a range of possible outcomes, enhancing the ability to assess weather uncertainties and probabilities. The ensemble approach helps to capture the range of possible weather scenarios by running slightly different initial conditions or model configurations, which are referred to as ensemble members or components.
Currently supported ensemble components in the GEFS include the "chem" for atmospheric chemistry forecasts, "wave prob" for probabilistic ocean wave forecasts, and "atmos mean" for averaged atmospheric conditions. Each component provides specialized forecasts that cater to different aspects of meteorological analysis and prediction, contributing to a comprehensive understanding of potential weather developments.
The Climate Forecast System (CFS), developed by NCEP, provides medium- to long-range global forecasts, spanning days to seasons. It integrates atmospheric, oceanic, land, and sea ice data using a coupled model that assimilates real-time observations from satellites, buoys, and weather stations.
CFS produces ensemble-based probabilistic forecasts, covering variables like temperature, pressure, wind, sea surface temperature, and soil moisture. It is widely used for seasonal climate outlooks, agricultural planning, water resource management, and energy forecasting, helping industries anticipate droughts, floods, and climate anomalies up to nine months ahead.
Actively being developed, hover items for details and don't hesitate contacting us for more information.
✅High-Resolution Rapid Refresh
✅Global Ensemble Forecast System
✅CSV
Parquet
JSON lines
Image PNG, JPG, TIFF
MP4 H.264 H.265
✅Latitude,Longitude
Zip Code
City
Shape
✅Range
✅List
✅Best series
✅Asof / Time-travel
Downsampling
Interpolation / upsampling
Averages
Weighted averages
Time weighted averages
Minimum, maximum
Percentiles
Histograms
Threshold based
EMA outlier
Prediction changed
To e-mail
To webhook
✅ readily available
start = datetime.datetime.now(datetime.UTC)
df = client.history(
dataset='gfs',
from_time=datetime.datetime(year=2022, month=8, day=10, hour=0),
until_time=datetime.datetime(year=2022, month=8, day=13, hour=0),
coordinates=[
{"lat": 40.75, "lon": -73.98},
{"lat": 29.75, "lon": -95.36},
{"lat": 47.60, "lon": -122.33},
],
variables=[
{"name": "TMP", "level": "2 m above ground", "info": ""},
{"name": "TMP", "level": "surface", "info": ""},
],
# Time travel. Before as_of, forecasted_time is history, after it is the forecast at as_of
as_of=datetime.datetime(year=2024, month=8, day=12, hour=0),
min_horizon=0,
max_horizon=264,
)
print(df.sort_values(['forecasted_time', 'lat', 'lon']).head(20).to_string(index=False))
print('response in:', datetime.datetime.now(datetime.UTC) - start)
forecasted_at forecasted_time lat lon TMP|2 m above ground| TMP|surface| 2022-08-10 00:00:00+00:00 2022-08-10 00:00:00+00:00 29.75 -95.36 305.76 306.26 2022-08-10 00:00:00+00:00 2022-08-10 00:00:00+00:00 40.75 -73.98 303.16 303.46 2022-08-10 00:00:00+00:00 2022-08-10 00:00:00+00:00 47.60 -122.33 297.66 298.66 2022-08-10 00:00:00+00:00 2022-08-10 01:00:00+00:00 29.75 -95.36 304.38 304.30 2022-08-10 00:00:00+00:00 2022-08-10 01:00:00+00:00 40.75 -73.98 301.58 301.80 2022-08-10 00:00:00+00:00 2022-08-10 01:00:00+00:00 47.60 -122.33 295.48 296.10 2022-08-10 00:00:00+00:00 2022-08-10 02:00:00+00:00 29.75 -95.36 303.24 303.22 2022-08-10 00:00:00+00:00 2022-08-10 02:00:00+00:00 40.75 -73.98 301.04 301.42 2022-08-10 00:00:00+00:00 2022-08-10 02:00:00+00:00 47.60 -122.33 294.24 294.52 2022-08-10 00:00:00+00:00 2022-08-10 03:00:00+00:00 29.75 -95.36 302.77 302.79 2022-08-10 00:00:00+00:00 2022-08-10 03:00:00+00:00 40.75 -73.98 300.47 300.69 2022-08-10 00:00:00+00:00 2022-08-10 03:00:00+00:00 47.60 -122.33 291.47 290.99 2022-08-10 00:00:00+00:00 2022-08-10 04:00:00+00:00 29.75 -95.36 301.26 300.90 2022-08-10 00:00:00+00:00 2022-08-10 04:00:00+00:00 40.75 -73.98 299.06 299.50 2022-08-10 00:00:00+00:00 2022-08-10 04:00:00+00:00 47.60 -122.33 288.96 288.20 2022-08-10 00:00:00+00:00 2022-08-10 05:00:00+00:00 29.75 -95.36 300.61 300.24 2022-08-10 00:00:00+00:00 2022-08-10 05:00:00+00:00 40.75 -73.98 297.31 297.44 2022-08-10 00:00:00+00:00 2022-08-10 05:00:00+00:00 47.60 -122.33 287.51 286.94 2022-08-10 06:00:00+00:00 2022-08-10 06:00:00+00:00 29.75 -95.36 300.38 299.93 2022-08-10 06:00:00+00:00 2022-08-10 06:00:00+00:00 40.75 -73.98 296.98 296.93 response in: 0:00:00.790859
Check out the full documentation and code examples on GitHub.
curl -X POST 'https://gribstream.com/api/v2/gfs/history' \
-H "Content-Type: application/json" \
-H "Accept-Encoding: gzip" \
-H "Authorization: Bearer $(curl https://gribstream.com/auth/demo)" \
-d '{
"fromTime": "2022-08-10T00:00:00Z",
"untilTime": "2022-08-13T00:00:00Z",
"asOf": "2022-08-12T00:00:00Z",
"minHorizon": 0,
"maxHorizon": 384,
"coordinates": [
{ "lat": 40.75, "lon": -73.98 },
{ "lat": 29.75, "lon": -95.36 },
{ "lat": 47.6, "lon": -122.33 }
],
"variables": [
{ "name": "TMP", "level": "2 m above ground", "info": "" },
{ "name": "TMP", "level": "surface", "info": "" }
]
}' | gunzip | head -20
forecasted_at,forecasted_time,lat,lon,TMP|2 m above ground|,TMP|surface| 2022-08-10T06:00:00Z,2022-08-10T06:00:00Z,47.60,-122.33,287.28,286.83 2022-08-10T06:00:00Z,2022-08-10T06:00:00Z,40.75,-73.98,296.98,296.93 2022-08-10T06:00:00Z,2022-08-10T06:00:00Z,29.75,-95.36,300.38,299.93 2022-08-10T06:00:00Z,2022-08-10T08:00:00Z,47.60,-122.33,286.82,286.09 2022-08-10T06:00:00Z,2022-08-10T08:00:00Z,40.75,-73.98,295.72,295.79 2022-08-10T06:00:00Z,2022-08-10T08:00:00Z,29.75,-95.36,300.22,299.79 2022-08-11T06:00:00Z,2022-08-11T07:00:00Z,47.60,-122.33,286.26,285.27 2022-08-11T06:00:00Z,2022-08-11T07:00:00Z,40.75,-73.98,296.06,296.17 2022-08-11T06:00:00Z,2022-08-11T07:00:00Z,29.75,-95.36,297.86,298.07 2022-08-10T18:00:00Z,2022-08-10T19:00:00Z,47.60,-122.33,292.47,293.05 2022-08-10T18:00:00Z,2022-08-10T19:00:00Z,40.75,-73.98,303.67,307.85 2022-08-10T18:00:00Z,2022-08-10T19:00:00Z,29.75,-95.36,308.17,310.65 2022-08-11T00:00:00Z,2022-08-11T04:00:00Z,47.60,-122.33,288.15,287.10 2022-08-11T00:00:00Z,2022-08-11T04:00:00Z,40.75,-73.98,297.95,298.00 2022-08-11T00:00:00Z,2022-08-11T04:00:00Z,29.75,-95.36,298.55,299.00 2022-08-10T18:00:00Z,2022-08-10T22:00:00Z,47.60,-122.33,295.04,295.85 2022-08-10T18:00:00Z,2022-08-10T22:00:00Z,40.75,-73.98,304.44,305.75 2022-08-10T18:00:00Z,2022-08-10T22:00:00Z,29.75,-95.36,308.14,309.55 2022-08-10T12:00:00Z,2022-08-10T14:00:00Z,47.60,-122.33,288.04,288.10
A Free Plan is available to get you started. Upgrade to one of our Pro plans for higher daily usage limits.
For larger-scale usage, customized plans, heavy backfills, higher performance, or additional features, contact us.
Daily Limit: 48,000 credits
$9.90 / month
Daily Limit: 96,000 credits
$18.80 / month
Daily Limit: 192,000 credits
$35.70 / month
Daily Limit: 384,000 credits
$67.80 / month
Daily Limit: 768,000 credits
$128.80 / month
Daily Limit: 1,536,000 credits
$244.70 / month
Daily Limit: 3,072,000 credits
$464.90 / month
Daily Limit: 6,144,000 credits
$883.30 / month
Daily Limit: 12,288,000 credits
$1678.30 / month
Credits are calculated as:
Credits = hours * parameters * (1 + (coordinates-1) / 500)
Or in words, hours of data, times the number of weather parameters, times bundles of 500 coordinates.
For larger-scale usage, customized plans, heavy backfills, higher performance, or additional features, contact us.