Introduction
WindBorne releases a pip installable library built to interact with Data and Forecasts APIs that comes with a Command Line Interface (CLI) out of the box. The CLI functions match the described in the Data API and Forecasts API documentation.
WindBorne uses API keys to authenticate API requests. If an API request is not properly authenticated, it will fail. To get an API key, email data@windbornesystems.com.
In order to authenticate with the api, you must set the following environment variables:
- WB_CLIENT_ID
- WB_API_KEY
Need access?
Email data@windbornesystems.comwindborne super-observations
Fetches super observations within a time range and saves them to specified file(s). If a single filename is provided, it will save data to that file. Otherwise, it will automatically break up the super observations by timestamp and mission id and save them to separate files.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
start_time | string | A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the starting time of fetching data. |
end_time | string | Optional. A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the end time of fetching data. If not provided, it will fetch until the present. |
output | string | If a file, saves all data to this file rather than splitting by time and mission. Supported formats are '.csv', '.json', '.little_r' and '.nc'. Alternatively, can be 'csv', 'json', 'netcdf' or 'little_r' to save as separate files. |
-d | string | Optional. Directory path where the separate files should be saved. If not provided, files will be saved in current directory. |
-b | integer | Optional. Size of time buckets in hours. Defaults to 6 hours. |
-m | string | Optional. Restrict observations to the provided mission id. |
windborne observations
Fetches observations within a time range and saves them to specified file(s). If a single filename is provided, it will save data to that file. Otherwise, it will automatically break up the observations by timestamp and mission id and save them to separate files.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
start_time | string | A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the starting time of fetching data. |
end_time | string | Optional. A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the end time of fetching data. If not provided, current time is used as end time. |
output | string | If a file, saves all data to this file rather than splitting by time and mission. Supported formats are '.csv', '.json', '.little_r' and '.nc'. Alternatively, can be 'csv', 'json', 'netcdf' or 'little_r' to save as separate files. |
-d | string | Optional. Directory path where the separate files should be saved. If not provided, files will be saved in current directory. |
-mt | string | Optional. Filter observations data taken after this time. |
-xt | string | Optional. Filter observations data take prior to this time. |
-u | boolean | Optional. Include update timestamps in response. |
-m | string | Optional. Restrict observations to the provided mission id. |
-ml | float | Optional.Minimum latitude boundary. |
-xl | float | Optional. Maximum latitude boundary. |
-mg | float | Optional. Minimum longitude boundary. |
-xg | float | Optional. Maximum longitude boundary. |
-b | integer | Optional. Size of time buckets in hours. Defaults to 6 hours. |
windborne poll-super-observations
Run super observation fetching in an infinite loop, continuously saving this outputs.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
start_time | string | A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the starting time of fetching data. |
end_time | string | Optional. A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the end time of fetching data. If not provided, it will fetch until the present. |
output | string | If a file, saves all data to this file rather than splitting by time and mission. Supported formats are '.csv', '.json', '.little_r' and '.nc'. Alternatively, can be 'csv', 'json', 'netcdf' or 'little_r' to save as separate files. |
-d | string | Optional. Directory path where the separate files should be saved. If not provided, files will be saved in current directory. |
-b | integer | Optional. Size of time buckets in hours. Defaults to 6 hours. |
-m | string | Optional. Restrict observations to the provided mission id. |
windborne poll-observations
Run observation fetching in an infinite loop, continuously saving this outputs.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
start_time | string | A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the starting time of fetching data. |
end_time | string | Optional. A date string, supporting formats 'YYYY-MM-DD HH:MM:SS', YYYY-MM-DD_HH:MM and ISO strings, representing the end time of fetching data. If not provided, current time is used as end time. |
output | string | If a file, saves all data to this file rather than splitting by time and mission. Supported formats are '.csv', '.json', '.little_r' and '.nc'. Alternatively, can be 'csv', 'json', 'netcdf' or 'little_r' to save as separate files. |
-d | string | Optional. Directory path where the separate files should be saved. If not provided, files will be saved in current directory. |
-mt | string | Optional. Filter observations data taken after this time. |
-xt | string | Optional. Filter observations data take prior to this time. |
-u | boolean | Optional. Include update timestamps in response. |
-m | string | Optional. Restrict observations to the provided mission id. |
-ml | float | Optional.Minimum latitude boundary. |
-xl | float | Optional. Maximum latitude boundary. |
-mg | float | Optional. Minimum longitude boundary. |
-xg | float | Optional. Maximum longitude boundary. |
-b | integer | Optional. Size of time buckets in hours. Defaults to 6 hours. |
windborne super-observations-page
Retrieves a single page of super observations and either prints it or saves it to a file.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
since | string | Start time of fetching observations data. |
-mt | string | Optional. Filter observations data taken after this time. |
-xt | string | Optional. Filter observations data take prior to this time. |
-id | boolean | Include observation IDs in response. |
-mn | boolean | Include mission names in response. |
-u | boolean | Include update timestamps in response. |
-m | string | Filter observations by mission ID. |
save_to_file | string | Optional. Path to save the response data in .csv/.json format. |
windborne observations-page
Retrieves a single page of observations and either prints it or saves it to a file.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
since | string | Start time of fetching observations data. |
min_time | string | Optional. Filter observations data taken after this time. |
max_time | string | Optional. Filter observations data take prior to this time. |
-id | boolean | Optional. Include observation IDs in response. |
-mn | boolean | Optional. Include mission names in response. |
-ml | float | Optional.Minimum latitude boundary. |
-xl | float | Optional. Maximum latitude boundary. |
-mg | float | Optional. Minimum longitude boundary. |
-xg | float | Optional. Maximum longitude boundary. |
-u | boolean | Optional. Include update timestamps in response. |
-m | string | Optional. Filter observations by mission ID. |
save_to_file | string | Optional. Save the response data in .csv / .json format. |
windborne flying-missions
Retrieves a list of currently flying missions. This mirrors the flying missions API.
It accepts the following argument:
Name | Type | Description |
---|---|---|
save_to_file | string | Optional. Path to save the response data. If provided, saves the data in CSV or JSON format. |
windborne launch-site
Retrieves launch site information for a specified mission. This mirrors the mission launch site API.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
mission_id | string | The mission for which to obtain launch site. |
save_to_file | string | Optional. Path to save the response data. If provided, saves the data in CSV or JSON format. |
windborne predict-path
Fetches the predicted flight path for a given mission currently flying and saves it to a file. The format matches the predicted flight path API.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
mission_id | string | The mission for which to obtain predicted flight path. |
save_to_file | string | Required. Path to save the response data, which may end in either .csv or .json |
windborne points
This command allows getting the forecast at a given point or set of points. This runs WindBorne's custom point forecasting model, making it more accurate than simple interpolation of the gridded output. It returns the response of API or saves the response data in output_file.
Available initialization times for point forecasts can be found using windborne init_times.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
coordinates | string | A semi-colon separated list of latitude,longitude tuples, eg 37,-121;40.3,-100 |
-mt, --min-time | string | Optional. An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the minimum forecast time to calculate point forecasts for. |
-xt, --max-time | string | Optional. An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the maximum forecast time to calculate point forecasts for. |
-mh, --min-hour | integer | Optional. The minimum forecast hour to calculate point forecasts for. |
-xh, --max-hour | integer | Optional. The maximum forecast hour to calculate point forecasts for. |
-i, --init-time | string | Optional. An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time at which the forecast was made. This looks solely at the date and the hour; minutes and seconds are discarded. If nothing is provided, the latest forecast is used. |
output_file | string | Optional. The file to which the response will be written. If not provided, the response will be printed to stdout. |
windborne init_times
This command allows getting available initialization times for point forecasts.
It doesn't accept any arguments.
It returns the following:
Name | Type | Description |
---|---|---|
available | [string] | An array of ISO8601 timestamps of available initialization times for point forecasts, ordered from newest to oldest. |
latest | string | The ISO8601 timestamp of latest available initialization time for point forecasts. |
windborne grid_full
This command allows getting the full gridded output of global forecasts, including data for all variables at all levels. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_temp_2m
This command allows getting the gridded output of global 2m temperature forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_wind_u_10m
This command allows getting the gridded output of global 10m u-component of wind forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_wind_v_10m
This command allows getting the gridded output of global 10m v-component of wind forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_pressure_msl
This command allows getting the gridded output of global mean sea level pressure forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_500hpa_temperature
This command allows getting the gridded output of global 500hPa temperature forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_850hpa_temperature
This command allows getting the gridded output of global 850hPa temperature forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_500hpa_wind_u
This command allows getting the gridded output of global 500hPa u-component of wind forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
windborne grid_500hpa_wind_v
This command allows getting the gridded output of global 500hPa v-component of wind forecasts. These outputs are saved as a netCDF (.nc) file.
If there is no forecast available within an hour of the requested time, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
save_to_file | string | Path to save the file. |
hist_temp_2m
This command allows getting the historical output of global 2m temperature forecasts. These outputs are saved as a netCDF (.nc) file.
If the requested forecast is not available, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
initialization_time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
forecast_hour | integer | How many hours after the run time the forecast is valid at. |
output_file | string | Path to save the file. |
hist_500hpa_geopotential
This command allows getting the historical output of global 500hPa geopotential forecasts. These outputs are saved as a netCDF (.nc) file.
If the requested forecast is not available, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
initialization_time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
forecast_hour | integer | How many hours after the run time the forecast is valid at. |
output_file | string | Path to save the file. |
hist_500hpa_wind_u
This command allows getting the historical output of global 500hPa u-component of wind forecasts. These outputs are saved as a netCDF (.nc) file.
If the requested forecast is not available, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
initialization_time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
forecast_hour | integer | How many hours after the run time the forecast is valid at. |
output_file | string | Path to save the file. |
hist_500hpa_wind_v
This command allows getting the historical output of global 500hPa v-component of wind forecasts. These outputs are saved as a netCDF (.nc) file.
If the requested forecast is not available, a 404 status code will be displayed.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
initialization_time | string | An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time for which to get the forecast. This looks solely at the date and the hour; minutes and seconds are discarded. |
forecast_hour | integer | How many hours after the run time the forecast is valid at. |
output_file | string | Path to save the file. |
Tropical Cyclones
This endpoint allows getting the predicted ground track of active tropical cyclones.
It accepts the following arguments:
Name | Type | Description |
---|---|---|
initialization_time | string | Optional. An ISO 8601 date string, supporting formats YYYYMMDDHH, YYYY-MM-DDTHH, and YYYY-MM-DDTHH:mm:ss., representing the time at which the forecast was made. This looks solely at the date and the hour; minutes and seconds are discarded. If nothing is provided, the latest forecast is used. |
-b | string | Optional. A string indicating the tropical cyclones basins to be filtered in the response. If not set, all tropical cyclones will be included. |
output_file | string | Optional. Path to save the response data. If provided, saves the data in .json, .csv, .gpx, .geojson, .kml, or .little_r format. |
The basin parameter defines specific geographical regions where tropical cyclones are present:
Name | Type | Description |
---|---|---|
NA | string | North Atlantic Basin spanning from African Coast (20°E) to 140°W and Equator to 90°N. |
EP | string | Eastern Pacific Basin spanning from 140°W to 180°W and Equator to 90°N. |
WP | string | Western Pacific Basin spanning from 100°E to 180°E and Equator to 60°N. |
NI | string | North Indian Ocean Basin spanning from 45°E to 100°E and Equator to 90°N. |
SI | string | South-West Indian Ocean Basin spanning from 20°E to 90°E and 40°S to Equator. |
AU | string | Australian Region Basin spanning from 90°E to 160°E and 36°S to Equator. |
SP | string | South Pacific Basin spanning from 160°E to 120°W and 40°S to Equator. |
It returns an object (dictionary) with keys being tropical cyclone IDs and values being arrays of ground track points. Each ground track point is of the form:
Name | Type | Description |
---|---|---|
latitude | number | The latitude where the tropical cyclone is predicted to be |
longitude | number | The longitude where the tropical cyclone is predicted to be |
time | string | The ISO8601 timestamp of when this forecast point is valid |