Openmeteo Get Flood
openmeteo_get_floodGloFAS (Global Flood Awareness System) daily river discharge (m³/s) from the GloFAS 0.05° grid cell nearest the given coordinates — no river ID needed. The response's latitude and longitude name that cell. It is not reliably on the river intended: a point near a confluence, a pair of parallel channels, or a bank can resolve to a cell with little flow. When the value is far below what the named river carries, step the coordinate 0.05° across the channel and compare the values. One mode per call: forecast_days for the outlook, or start_date and end_date together for a date range. A date range accepts dates from 1984-01-01, but GloFAS discharge begins 1997-01-01 — every model returns null before it. The two modes are mutually exclusive, and a date range needs both ends — a lone start_date or end_date is rejected. forecast_days accepts up to 210, but the current GloFAS run sets how far the data reaches (about six months ahead); later days come back null and the notice names where the data ends. What a date range holds depends on the model. Omitting models reads seamless_v4: consolidated_v4 reanalysis before 2023-08-05, then forecast-run discharge from 2023-08-05 on, so a range crossing that date changes source mid-series. Set models to pin a source: seamless_v4 (default — consolidated_v4 reanalysis before 2023-08-05, forecast_v4 runs from 2023-08-05 into the live forecast), consolidated_v4 (reanalysis from 1997-01-01 through 2025-05-31; null outside that span and on every forecast_days call), forecast_v4 (forecast runs from 2023-06-01 into the live forecast; null before). consolidated_v4 is the only way to read reanalysis for 2023-08-05 through 2025-05-31. With 2+ models every daily column is suffixed with the model name (river_discharge_consolidated_v4). Available daily variables: "river_discharge" (the daily discharge value; the mean across ensemble members is "river_discharge_mean"), and the ensemble statistics "river_discharge_mean", "river_discharge_median", "river_discharge_min", "river_discharge_max", "river_discharge_p25" (25th percentile), and "river_discharge_p75" (75th percentile). The statistics carry spread across ensemble members on forecast-run days — the forecast_days outlook, and date-range days from 2023-08-05 under seamless_v4 or forecast_v4. On reanalysis days (seamless_v4 before 2023-08-05, consolidated_v4 through 2025-05-31) they repeat river_discharge and are not uncertainty estimates. Returns null for coordinates far from any river or in areas without GloFAS coverage. A wide date range produces thousands of daily records and spills to a DataCanvas when canvas is enabled, returning canvas_id and table_name with truncated: true — inspect the staged columns with openmeteo_dataframe_describe, then query the full set with openmeteo_dataframe_query. With canvas disabled it returns a bounded preview instead.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"latitude": "<latitude>",
"longitude": "<longitude>"
},
"name": "openmeteo_get_flood"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| models | No | GloFAS models to read from: seamless_v4 (default — consolidated_v4 reanalysis before 2023-08-05, forecast_v4 runs from 2023-08-05 into the live forecast), consolidated_v4 (reanalysis from 1997-01-01 through 2025-05-31; null outside that span and on every forecast_days call), forecast_v4 (forecast runs from 2023-06-01 into the live forecast; null before). Omit to use Open-Meteo's seamless_v4 default. With 2+ models each daily column and unit key is suffixed with the model name (river_discharge_consolidated_v4); one model keeps plain names. A model with no data for the requested days answers with null values rather than an error, and the notice names those columns. A name outside this list (the GloFAS v3 selectors included) is sent upstream rather than rejected here. | |
| end_date | No | End of the date range (YYYY-MM-DD, inclusive). Must be on or after start_date. Days from 2023-08-05 are forecast-run discharge under the default seamless_v4; consolidated_v4 reanalysis ends 2025-05-31 and answers later days with null. Requires start_date — the pair must be sent together, and neither combines with forecast_days. | |
| latitude | Yes | Latitude in decimal degrees. Discharge is returned for the GloFAS 0.05° grid cell nearest this point — no river ID required, and that cell is not reliably on the river intended. When the value is far below what the named river carries, step the coordinate 0.05° across the channel and compare. Use openmeteo_search_locations to resolve a place name. | |
| timezone | No | IANA timezone or "auto". Default "auto". | auto |
| canvas_id | No | DataCanvas token for wide date-range queries. When a result is too large to return inline — driven by total payload size, so a multi-variable pull can spill at any row count — it spills to this canvas: pass the returned token to openmeteo_dataframe_describe to list the staged table and its columns, then to openmeteo_dataframe_query to run SQL against it. Omit to create a fresh canvas. | |
| longitude | Yes | Longitude in decimal degrees. With latitude it selects the nearest GloFAS 0.05° grid cell, which is not reliably on the river intended. | |
| start_date | No | Start of a date range (YYYY-MM-DD, e.g., "2023-01-01"). The earliest date accepted is 1984-01-01, but GloFAS discharge begins 1997-01-01, so earlier days come back null. Under the default seamless_v4 a range holds consolidated_v4 reanalysis before 2023-08-05 and forecast-run discharge from 2023-08-05 on; request models: ["consolidated_v4"] for reanalysis through 2025-05-31. Requires end_date — the pair must be sent together, and neither combines with forecast_days. | |
| forecast_days | No | Number of forecast days ahead (1–210). The API accepts up to 210, but the current GloFAS run sets how far the data reaches (about six months); later days come back null. consolidated_v4 serves no forecast days — with it every row is null. Mutually exclusive with start_date/end_date — omit it entirely when pulling a date range. | |
| daily_variables | No | Daily discharge variables to fetch (e.g., ["river_discharge", "river_discharge_p25", "river_discharge_p75", "river_discharge_min", "river_discharge_max"]). Required. river_discharge is the daily discharge value; the _mean, _median, _min, _max, _p25, and _p75 statistics span the ensemble members on forecast-run days — the forecast_days outlook, and date-range days from 2023-08-05 under seamless_v4 or forecast_v4. On reanalysis days (seamless_v4 before 2023-08-05, consolidated_v4 through 2025-05-31) they repeat river_discharge and are not uncertainty estimates. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| daily | No | Per-day records with "time" (YYYY-MM-DD) + one key per requested variable containing discharge in m³/s — per model, suffixed with the model name (river_discharge_consolidated_v4), when 2+ models were requested — or null for coordinates outside GloFAS coverage and days the selected model does not serve. When truncated, contains only a preview — query canvas_id for the full dataset when one is present. | |
| error | No | Present when the call failed. Absent on success. | |
| models | No | GloFAS models requested — echoes the models parameter. Absent when models was omitted, which means the data came from seamless_v4: consolidated_v4 reanalysis before 2023-08-05, forecast_v4 runs from 2023-08-05 on. | |
| notice | No | Everything this response needs to say beyond the data, composed into one advisory: columns GloFAS returned with the unit "undefined" (a name it parsed but does not serve); recognized columns that come back null for requested days — days before GloFAS discharge begins on 1997-01-01, days outside the selected model's span, or a cell GloFAS carries no discharge for — with the dates that do carry values; and, when the result spilled, either the canvas and table holding the full row set plus the two dataframe tools that read it, or — with DataCanvas disabled — why there is no canvas_id and how to reach the rows the preview omits. | |
| latitude | No | Snapped latitude — the GloFAS grid cell the discharge comes from | |
| timezone | No | Resolved IANA timezone | |
| canvas_id | No | DataCanvas token for the staged full dataset. Present only when truncated is true AND DataCanvas is enabled (CANVAS_PROVIDER_TYPE=duckdb) — absent otherwise, in which case the preview is all this response carries. Pass to openmeteo_dataframe_describe to list the staged table and its columns, then to openmeteo_dataframe_query to run SQL against it. | |
| longitude | No | Snapped longitude — the GloFAS grid cell the discharge comes from | |
| truncated | No | True when the response was too large to return inline, so daily carries a bounded preview rather than the full set. With DataCanvas enabled the complete data is staged at canvas_id. With it disabled there is no canvas_id, and the omitted rows are reached only by narrowing the request. | |
| table_name | No | DuckDB table name for the staged data — use as the FROM target in openmeteo_dataframe_query SQL; openmeteo_dataframe_describe lists its columns. Present only alongside canvas_id. | |
| daily_units | No | Variable → unit string for daily data (e.g., {"river_discharge": "m³/s"}), model-suffixed like the records when 2+ models were requested. | |
| record_count | No | Total number of daily discharge records — the full staged count when truncated is true, not the length of the daily preview. |