Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: U S Geological Survey Monitoring Locations API
x-refined-note:
- x-generated-from differs across the merged source definitions and was not carried
- x-keywords differs across the merged source definitions and was not carried
version: '1.0'
description: 'Operations tagged Monitoring Locations across 2 of this provider''s published API definitions: u-s-geological-survey-monitoring-locations-api-openapi.yml, u-s-geological-survey-water-data-ogc-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://earthquake.usgs.gov/fdsnws/event/1
description: USGS FDSN Event Web Service
- description: 'The United States Geological Survey (USGS) collects water data at monitoring locations across the United States using both automated sensors and manual data collection. These APIs provide access to that data, alongside metadata about data collections and monitoring locations, in standardized machine-readable formats.
'
url: https://api.waterdata.usgs.gov/ogcapi/v0
tags:
- name: Monitoring Locations
description: USGS stream gages, groundwater wells, and other water monitoring stations.
paths:
/collections/monitoring-locations/items:
get:
operationId: getMonitoringLocations
summary: USGS Water Data Get Monitoring Locations
description: Retrieve USGS water monitoring locations (stream gages, groundwater wells, springs, etc.) as GeoJSON features. Supports spatial filtering by bounding box, attribute filtering by state/county/HUC, and pagination.
tags:
- Monitoring Locations
parameters:
- $ref: '#/components/parameters/bbox'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/offset'
- $ref: '#/components/parameters/format'
- name: stateCd
in: query
required: false
description: Two-letter U.S. state or territory FIPS code (e.g., CA, TX, NY).
schema:
type: string
example: CA
- name: huc
in: query
required: false
description: Hydrologic Unit Code (2-12 digits) to filter by watershed.
schema:
type: string
example: '18010103'
- name: siteType
in: query
required: false
description: USGS site type code (ST for streams, GW for groundwater, LK for lakes, AT for atmosphere, WE for wetlands, etc.).
schema:
type: string
example: ST
- name: agencyCd
in: query
required: false
description: Agency code (default USGS).
schema:
type: string
example: USGS
responses:
'200':
description: GeoJSON FeatureCollection of monitoring locations.
content:
application/json:
schema:
$ref: '#/components/schemas/MonitoringLocationCollection'
examples:
GetMonitoringLocations200Example:
summary: Default getMonitoringLocations 200 response
x-microcks-default: true
value:
type: FeatureCollection
features:
- type: Feature
geometry:
type: Point
coordinates:
- -122.419
- 37.775
properties:
monitoringLocationIdentifier: USGS-11169025
monitoringLocationName: GUADALUPE R AB HWY 237 NR ALVISO CA
monitoringLocationTypeName: Stream
hucEightDigitCode: '18050001'
stateFIPSCode: '06'
countryCode: US
drainageAreaMeasure: 850.0
drainageAreaMeasureUnitCode: sq mi
siteWebAddress: https://waterdata.usgs.gov/nwis/inventory?agency_code=USGS&site_no=11169025
'400':
description: Invalid request parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: API key missing or unauthorized.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate limit exceeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
options:
description: 'Location information is basic information about the monitoring location including the name, identifier, agency responsible for data collection, and the date the location was established. It also includes information about the type of location, such as stream, lake, or groundwater, and geographic information about the location, such as state, county, latitude and longitude, and hydrologic unit code (HUC).
'
operationId: optionsMonitoring-locationsFeatures
responses:
'200':
description: options response
security:
- ApiKeyQuery: []
- ApiKeyHeader: []
summary: Options for Monitoring locations items
tags:
- Monitoring Locations
post:
description: 'Location information is basic information about the monitoring location including the name, identifier, agency responsible for data collection, and the date the location was established. It also includes information about the type of location, such as stream, lake, or groundwater, and geographic information about the location, such as state, county, latitude and longitude, and hydrologic unit code (HUC).
'
operationId: getCQL2Monitoring-locationsFeatures
requestBody:
content:
application/json:
schema:
$ref: https://schemas.opengis.net/cql2/1.0/cql2.json
description: Get items with CQL2
required: true
responses:
'200':
$ref: '#/components/responses/MonitoringLocationsFeatures'
'400':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/InvalidParameter
'403':
$ref: '#/components/responses/Forbidden403'
'429':
$ref: '#/components/responses/TooManyRequests429'
'500':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/ServerError
security:
- ApiKeyQuery: []
- ApiKeyHeader: []
summary: Get Monitoring locations items with CQL2
tags:
- Monitoring Locations
servers:
- url: https://earthquake.usgs.gov/fdsnws/event/1
description: USGS FDSN Event Web Service
/collections/monitoring-locations/items/{featureId}:
get:
operationId: getMonitoringLocation
summary: USGS Water Data Get Monitoring Location by ID
description: Retrieve a single USGS water monitoring location by its feature identifier (site number with agency prefix, e.g., USGS-11169025).
tags:
- Monitoring Locations
parameters:
- name: featureId
in: path
required: true
description: Monitoring location identifier in format AGENCY-SITENUMBER (e.g., USGS-11169025).
schema:
type: string
example: USGS-11169025
- $ref: '#/components/parameters/format'
responses:
'200':
description: Single monitoring location GeoJSON Feature.
content:
application/json:
schema:
$ref: '#/components/schemas/MonitoringLocationFeature'
examples:
GetMonitoringLocation200Example:
summary: Default getMonitoringLocation 200 response
x-microcks-default: true
value:
type: Feature
geometry:
type: Point
coordinates:
- -122.419
- 37.775
properties:
monitoringLocationIdentifier: USGS-11169025
monitoringLocationName: GUADALUPE R AB HWY 237 NR ALVISO CA
monitoringLocationTypeName: Stream
'403':
description: API key missing or unauthorized.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Monitoring location not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
options:
description: 'Location information is basic information about the monitoring location including the name, identifier, agency responsible for data collection, and the date the location was established. It also includes information about the type of location, such as stream, lake, or groundwater, and geographic information about the location, such as state, county, latitude and longitude, and hydrologic unit code (HUC).
'
operationId: optionsMonitoring-locationsFeature
parameters:
- $ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/parameters/featureId
responses:
'200':
description: options response
security:
- ApiKeyQuery: []
- ApiKeyHeader: []
summary: Options for Monitoring locations item by id
tags:
- Monitoring Locations
servers:
- url: https://earthquake.usgs.gov/fdsnws/event/1
description: USGS FDSN Event Web Service
/collections/monitoring-locations:
get:
description: 'Location information is basic information about the monitoring location including the name, identifier, agency responsible for data collection, and the date the location was established. It also includes information about the type of location, such as stream, lake, or groundwater, and geographic information about the location, such as state, county, latitude and longitude, and hydrologic unit code (HUC).
'
operationId: describeMonitoring-locationsCollection
parameters:
- $ref: '#/components/parameters/f'
- $ref: '#/components/parameters/lang'
responses:
'200':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/Collection
'400':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/InvalidParameter
'403':
$ref: '#/components/responses/Forbidden403'
'404':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/NotFound
'429':
$ref: '#/components/responses/TooManyRequests429'
'500':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/ServerError
summary: Get Monitoring locations metadata
tags:
- Monitoring Locations
servers:
- description: 'The United States Geological Survey (USGS) collects water data at monitoring locations across the United States using both automated sensors and manual data collection. These APIs provide access to that data, alongside metadata about data collections and monitoring locations, in standardized machine-readable formats.
'
url: https://api.waterdata.usgs.gov/ogcapi/v0
/collections/monitoring-locations/queryables:
get:
description: 'Location information is basic information about the monitoring location including the name, identifier, agency responsible for data collection, and the date the location was established. It also includes information about the type of location, such as stream, lake, or groundwater, and geographic information about the location, such as state, county, latitude and longitude, and hydrologic unit code (HUC).
'
operationId: getMonitoring-locationsQueryables
parameters:
- description: The properties that should be included. The parameter value is a comma-separated list of property names.
explode: false
in: query
name: properties
required: false
schema:
items:
enum:
- id
- agency_code
- agency_name
- monitoring_location_number
- monitoring_location_name
- district_code
- country_code
- country_name
- state_code
- state_name
- county_code
- county_name
- minor_civil_division_code
- site_type_code
- site_type
- hydrologic_unit_code
- basin_code
- altitude
- altitude_accuracy
- altitude_method_code
- altitude_method_name
- vertical_datum
- vertical_datum_name
- horizontal_positional_accuracy_code
- horizontal_positional_accuracy
- horizontal_position_method_code
- horizontal_position_method_name
- original_horizontal_datum
- original_horizontal_datum_name
- drainage_area
- contributing_drainage_area
- time_zone_abbreviation
- uses_daylight_savings
- construction_date
- aquifer_code
- national_aquifer_code
- aquifer_type_code
- well_constructed_depth
- hole_constructed_depth
- depth_source_code
- revision_note
- revision_created
- revision_modified
type: string
type: array
style: form
- $ref: '#/components/parameters/f'
- description: The profile to be applied to a given request
explode: false
in: query
name: profile
required: false
schema:
enum:
- actual-domain
- valid-domain
type: string
style: form
- $ref: '#/components/parameters/lang'
responses:
'200':
$ref: '#/components/responses/Queryables'
'400':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/InvalidParameter
'403':
$ref: '#/components/responses/Forbidden403'
'404':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/NotFound
'429':
$ref: '#/components/responses/TooManyRequests429'
'500':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/ServerError
security:
- ApiKeyQuery: []
- ApiKeyHeader: []
summary: Get Monitoring locations queryables
tags:
- Monitoring Locations
servers:
- description: 'The United States Geological Survey (USGS) collects water data at monitoring locations across the United States using both automated sensors and manual data collection. These APIs provide access to that data, alongside metadata about data collections and monitoring locations, in standardized machine-readable formats.
'
url: https://api.waterdata.usgs.gov/ogcapi/v0
/collections/monitoring-locations/schema:
get:
description: 'Location information is basic information about the monitoring location including the name, identifier, agency responsible for data collection, and the date the location was established. It also includes information about the type of location, such as stream, lake, or groundwater, and geographic information about the location, such as state, county, latitude and longitude, and hydrologic unit code (HUC).
'
operationId: getMonitoring-locationsSchema
parameters:
- $ref: '#/components/parameters/f'
- $ref: '#/components/parameters/lang'
responses:
'200':
$ref: '#/components/responses/Queryables'
'400':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/InvalidParameter
'403':
$ref: '#/components/responses/Forbidden403'
'404':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/NotFound
'429':
$ref: '#/components/responses/TooManyRequests429'
'500':
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/ServerError
security:
- ApiKeyQuery: []
- ApiKeyHeader: []
summary: Get Monitoring locations schema
tags:
- Monitoring Locations
servers:
- description: 'The United States Geological Survey (USGS) collects water data at monitoring locations across the United States using both automated sensors and manual data collection. These APIs provide access to that data, alongside metadata about data collections and monitoring locations, in standardized machine-readable formats.
'
url: https://api.waterdata.usgs.gov/ogcapi/v0
components:
schemas:
MonitoringLocationFeature:
title: MonitoringLocationFeature
type: object
description: GeoJSON Feature for a single USGS water monitoring location.
properties:
type:
type: string
description: GeoJSON type.
example: Feature
geometry:
type: object
description: GeoJSON Point geometry with longitude and latitude.
properties:
type:
type: string
example: Point
coordinates:
type: array
items:
type: number
example:
- -122.419
- 37.775
properties:
$ref: '#/components/schemas/MonitoringLocationProperties'
MonitoringLocationCollection:
title: MonitoringLocationCollection
type: object
description: GeoJSON FeatureCollection of USGS monitoring locations.
properties:
type:
type: string
description: GeoJSON type.
example: FeatureCollection
features:
type: array
items:
$ref: '#/components/schemas/MonitoringLocationFeature'
numberMatched:
type: integer
description: Total number of matching locations.
example: 8423
numberReturned:
type: integer
description: Number of locations returned.
example: 100
ErrorResponse:
title: ErrorResponse
type: object
description: Standard OGC API error response.
properties:
code:
type: string
description: Error code.
example: InvalidParameter
description:
type: string
description: Human-readable error description.
example: Invalid value for parameter bbox.
MonitoringLocationProperties:
title: MonitoringLocationProperties
type: object
description: Attributes describing a USGS water monitoring location.
properties:
monitoringLocationIdentifier:
type: string
description: Unique identifier in format AGENCY-SITENUMBER.
example: USGS-11169025
monitoringLocationName:
type: string
description: Name of the monitoring location.
example: GUADALUPE R AB HWY 237 NR ALVISO CA
monitoringLocationTypeName:
type: string
description: Type of monitoring location (Stream, Well, Lake, etc.).
example: Stream
hucEightDigitCode:
type: string
description: 8-digit Hydrologic Unit Code for the location's watershed.
example: '18050001'
stateFIPSCode:
type: string
description: Two-digit state FIPS code.
example: '06'
countryCode:
type: string
description: ISO 3166-1 alpha-2 country code.
example: US
drainageAreaMeasure:
type: number
description: Drainage area measurement value.
example: 850.0
drainageAreaMeasureUnitCode:
type: string
description: Unit code for drainage area.
example: sq mi
siteWebAddress:
type: string
description: URL for the USGS NWIS site page.
example: https://waterdata.usgs.gov/nwis/inventory?agency_code=USGS&site_no=11169025
MonitoringLocationsFeature:
properties:
geometry:
$ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/schemas/geometryGeoJSON
id:
type: string
properties:
properties:
agency_code:
description: 'The agency that is reporting the data. Agency codes are fixed values assigned by the National Water Information System (NWIS). A list of agency codes is available at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/agency-codes/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/agency-codes/items).
'
title: Agency code
type:
- string
- 'null'
agency_name:
description: 'The name of the agency that is reporting the data.
'
title: Agency name
type:
- string
- 'null'
altitude:
description: 'Altitude of the monitoring location referenced to the specified Vertical Datum.
'
title: Altitude
type:
- number
- 'null'
altitude_accuracy:
description: 'Accuracy of the altitude, in feet. An accuracy of +/- 0.1 foot would be entered as “.1”. Many altitudes are interpolated from the contours on topographic maps; accuracies determined in this way are generally entered as one-half of the contour interval.
'
title: Altitude accuracy
type:
- number
- 'null'
altitude_method_code:
description: 'Codes representing the method used to measure altitude.
'
title: Altitude method code
type:
- string
- 'null'
altitude_method_name:
description: 'The name of the method used to measure altitude.
'
title: Altitude method name
type:
- string
- 'null'
aquifer_code:
description: 'Local aquifers in the USGS water resources data base are identified by a geohydrologic unit code (a three-digit number related to the age of the formation, followed by a 4 or 5 character abbreviation for the geologic unit or aquifer name).
'
title: Aquifer code
type:
- string
- 'null'
aquifer_type_code:
description: 'Describes the confinement status of an aquifer at the monitoring location. A confined aquifer is an aquifer below the land surface that is saturated with water. A water table--or unconfined--aquifer is an aquifer whose upper water surface (water table) is at atmospheric pressure, and thus is able to rise and fall.
'
title: Aquifer type code
type:
- string
- 'null'
basin_code:
description: 'The Basin Code or "drainage basin code" is a two-digit code that further subdivides the 8-digit hydrologic-unit code. The drainage basin code is defined by the USGS State Office where the monitoring location is located.
'
title: Basin code
type:
- string
- 'null'
construction_date:
description: 'Date the well was completed.
'
title: Construction date
type:
- string
- 'null'
contributing_drainage_area:
description: 'The contributing drainage area of a lake, stream, wetland, or estuary monitoring location, in square miles. This item should be present only if the contributing area is different from the total drainage area. This situation can occur when part of the drainage area consists of very porous soil or depressions that either allow all runoff to enter the groundwater or traps the water in ponds so that rainfall does not contribute to runoff. A transbasin diversion can also affect the total drainage area.
'
title: Contributing drainage area
type:
- number
- 'null'
country_code:
description: 'The code for the country in which the monitoring location is located.
'
title: Country code
type:
- string
- 'null'
country_name:
description: 'The name of the country in which the monitoring location is located.
'
title: Country name
type:
- string
- 'null'
county_code:
description: 'The code for the county or county equivalent (parish, borough, etc.) in which the monitoring location is located. A list of codes is available at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/counties/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/counties/items).
'
title: County code
type:
- string
- 'null'
county_name:
description: 'The name of the county or county equivalent (parish, borough, etc.) in which the monitoring location is located. [A list of codes is available at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/counties/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/counties/items).
'
title: County name
type:
- string
- 'null'
depth_source_code:
description: 'A code indicating the source of water-level data.
'
title: Depth source code
type:
- string
- 'null'
district_code:
description: 'The Water Science Centers (WSCs) across the United States use the FIPS state code as the district code. In some case, monitoring locations and samples may be managed by a water science center that is adjacent to the state in which the monitoring location actually resides. For example a monitoring location may have a district code of 30 which translates to Montana, but the state code could be 56 for Wyoming because that is where the monitoring location actually is located.
'
title: District code
type:
- string
- 'null'
drainage_area:
description: 'The area enclosed by a topographic divide from which direct surface runoff from precipitation normally drains by gravity into the stream above that point.
'
title: Drainage area
type:
- number
- 'null'
hole_constructed_depth:
description: 'The total depth to which the hole is drilled, in feet below land surface datum. Note: Not all groundwater monitoring locations have information on Hole Depth. Such monitoring locations will not be retrieved using this search criteria.
'
title: Hole constructed depth
type:
- number
- 'null'
horizontal_position_method_code:
description: 'Indicates the method used to determine latitude longitude values. A list of codes is available at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-method-codes/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-method-codes/items).
'
title: Horizontal position method code
type:
- string
- 'null'
horizontal_position_method_name:
description: 'Indicates the method used to determine latitude longitude values. A list of codes is available at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-method-codes/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-method-codes/items).
'
title: Horizontal position method name
type:
- string
- 'null'
horizontal_positional_accuracy:
description: 'Indicates the accuracy of the latitude longitude values. A list of codes is available at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-accuracy-codes/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-accuracy-codes/items).
'
title: Horizontal positional accuracy
type:
- string
- 'null'
horizontal_positional_accuracy_code:
description: 'Indicates the accuracy of the latitude longitude values. A list of codes is available at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-accuracy-codes/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/coordinate-accuracy-codes/items).
'
title: Horizontal positional accuracy code
type:
- string
- 'null'
hydrologic_unit_code:
description: 'The hydrologic unit code (HUC) for the monitoring location. Supports prefix matching — querying with a shorter HUC (e.g. "04") matches all locations within that hydrologic region.
'
title: Hydrologic unit code (HUC)
type:
- string
- 'null'
id:
description: 'A unique identifier representing a single monitoring location. This corresponds to the `monitoring_location_id` field in other endpoints. Monitoring location IDs are created by combining the agency code of the agency responsible for the monitoring location (e.g. USGS) with the ID number of the monitoring location (e.g. 02238500), separated by a hyphen (e.g. USGS-02238500).
'
title: Monitoring location ID
type:
- string
- 'null'
minor_civil_division_code:
description: 'Codes for primary governmental or administrative divisions of the county or county equivalent in which the monitoring location is located.
'
title: Minor civil division code
type:
- string
- 'null'
monitoring_location_name:
description: 'This is the official name of the monitoring location in the database. For well information this can be a district-assigned local number.
'
title: Monitoring location name
type:
- string
- 'null'
monitoring_location_number:
description: 'Each monitoring location in the USGS data base has a unique 8- to 15-digit identification number.
'
title: Monitoring location number
type:
- string
- 'null'
national_aquifer_code:
description: 'National aquifers are the principal aquifers or aquifer systems in the United States, defined as regionally extensive aquifers or aquifer systems that have the potential to be used as a source of potable water. Not all groundwater monitoring locations can be associated with a National Aquifer. Such monitoring locations w
# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/u-s-geological-survey/refs/heads/main/openapi/u-s-geological-survey-monitoring-locations-api-openapi.yml