05/01/2026: The nadp module is now deprecated. Calling any of get_annual_MDN_map, get_annual_NTN_map, or get_zip will emit a DeprecationWarning. The module is scheduled for removal on or after 2026-11-01. NADP is not a USGS data source; users should retrieve NADP data directly from https://nadp.slh.wisc.edu/.
04/23/2026: Added waterdata.get_nearest_continuous(targets, ...) — for each of N target timestamps, fetches the single continuous observation closest to that timestamp in one HTTP round-trip (auto-chunked when the resulting CQL filter is long, via the facility added in #238). The helper is designed for workflows that pair many discrete-measurement timestamps with surrounding instantaneous data, which the OGC time parameter can't express since it only accepts one instant or one interval per request. Ties at window midpoints are resolved per a configurable on_tie ∈ {"first", "last", "mean"}; the default window="PT7M30S" matches a 15-minute continuous gauge.
04/22/2026: Highlights since the v1.1.0 release (2025-11-26), which shipped the waterdata module:
- Added
get_channelfor channel-measurement data (#218) andget_stats_por/get_stats_date_rangefor period-of-record and daily statistics (#207). - Added
get_reference_table(and made it considerably simpler and faster in #209), then extended it to accept arbitrary collections-API query parameters (#214). - Removed the deprecated
waterwatchmodule (#228) and several defunct NWIS stubs (#222, #225), and addedpy.typedsodataretrievalships type information to downstream users (#186). - Now supports
pandas3.x (#221). - The OGC
waterdatagetters (get_continuous,get_daily,get_field_measurements, and the six others built on the same OGC collections) now acceptfilterandfilter_langkwargs that are passed through to the service's CQL filter parameter. This enables advanced server-side filtering that isn't expressible via the other kwargs — most commonly, OR'ing multiple time ranges into a single request. A long expression made up of a top-levelORchain is transparently split into multiple requests that each fit under the server's URI length limit, and the results are concatenated.
12/04/2025: The get_continuous() function was added to the waterdata module, which provides access to measurements collected via automated sensors at a high frequency (often 15 minute intervals) at a monitoring location. This is an early version of the continuous endpoint and should be used with caution as the API team improves its performance. In the future, we anticipate the addition of an endpoint(s) specifically for handling large data requests, so it may make sense for power users to hold off on heavy development using the new continuous endpoint.
11/24/2025: dataretrieval is pleased to offer a new module, waterdata, which gives users access USGS's modernized Water Data APIs. The Water Data API endpoints include daily values, instantaneous values, field measurements (modernized groundwater levels service), time series metadata, and discrete water quality data from the Samples database. Though there will be a period of overlap, the functions within waterdata will eventually replace the nwis module, which currently provides access to the legacy NWIS Water Services. More example workflows and functions coming soon. Check help(waterdata) for more information.
09/03/2024: The groundwater levels service has switched endpoints, and dataretrieval was updated accordingly in v1.0.10. Older versions using the discontinued endpoint will return 503 errors for nwis.get_gwlevels or the service='gwlevels' argument. Visit Water Data For the Nation for more information.
03/01/2024: USGS data availability and format have changed on Water Quality Portal (WQP). Since March 2024, data obtained from WQP legacy profiles will not include new USGS data or recent updates to existing data. All USGS data (up to and beyond March 2024) are available using the new WQP beta services. You can access the beta services by setting legacy=False in the functions in the wqp module.
To view the status of changes in data availability and code functionality, visit: https://doi-usgs.github.io/dataRetrieval/articles/Status.html