Department of Interior peaks API

Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

OpenAPI Specification

doi-peaks-api-openapi.yml Raw ↑
openapi: 3.0.2
info:
  contact:
    name: US Geological Survey - Water Data for the Nation
    url: https://waterdata.usgs.gov
    x-ogc-serviceContact:
      addresses: []
      emails:
      - value: wdfn@usgs.gov
      hoursOfService: pointOfContact
      links:
      - href: https://waterdata.usgs.gov/questions-comments/?referrerUrl=https://api.waterdata.usgs.gov
        type: text/html
      name: WDFN Support
  description: 'These APIs provide OGC-compliant interfaces to USGS water data, letting you download continuous sensor measurements, discrete field measurements, metadata about monitoring locations, and more.

    '
  license:
    name: US Government work in the public domain
    url: https://creativecommons.org/publicdomain/zero/1.0/
  termsOfService: https://creativecommons.org/publicdomain/zero/1.0/
  title: USGS Water Data OGC APIs agency-codes peaks API
  version: 0.56.0
  x-keywords:
  - geospatial
  - data
  - api
  - hydrology
  - USGS
servers:
- description: 'These APIs provide OGC-compliant interfaces to USGS water data, letting you download continuous sensor measurements, discrete field measurements, metadata about monitoring locations, and more.

    '
  url: https://api.waterdata.usgs.gov/ogcapi/v0
tags:
- description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

    '
  name: peaks
paths:
  /collections/peaks:
    get:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: describePeaksCollection
      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 Peaks metadata
      tags:
      - peaks
  /collections/peaks/items:
    get:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: getPeaksFeatures
      parameters:
      - description: The optional f parameter indicates the output format which the server shall provide as part of the response document.  The default format is GeoJSON.
        explode: false
        in: query
        name: f
        required: false
        schema:
          default: json
          enum:
          - json
          - html
          - jsonld
          - csv
          type: string
        style: form
      - $ref: '#/components/parameters/lang'
      - $ref: '#/components/parameters/bbox'
      - description: The optional limit parameter limits the number of items that are presented in the response document (maximum=50000, default=10).
        explode: false
        in: query
        name: limit
        required: false
        schema:
          default: 10
          maximum: 50000
          minimum: 1
          type: integer
        style: form
      - $ref: '#/components/parameters/crs'
      - $ref: '#/components/parameters/bbox-crs'
      - 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:
            - time_series_id
            - monitoring_location_id
            - parameter_code
            - id
            - unit_of_measure
            - value
            - last_modified
            - time
            - water_year
            - year
            - month
            - day
            - time_of_day
            - peak_since
            - qualifier
            type: string
          type: array
        style: form
      - $ref: '#/components/parameters/skipGeometry'
      - $ref: '#/components/parameters/wda_sortby'
      - $ref: '#/components/parameters/offset'
      - description: "A unique identifier representing a single time series. This corresponds to the `id` field in the `time-series-metadata` endpoint.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: time_series_id
        required: false
        schema:
          description: "A unique identifier representing a single time series. This corresponds to the `id` field in the `time-series-metadata` endpoint.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Time series ID
          type: string
        style: form
      - description: "A unique identifier representing a single monitoring location. This corresponds to the `id` field in the `monitoring-locations` endpoint. 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).\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: monitoring_location_id
        required: false
        schema:
          description: "A unique identifier representing a single monitoring location. This corresponds to the `id` field in the `monitoring-locations` endpoint. 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).\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Monitoring location ID
          type: string
        style: form
      - description: "Parameter codes are 5-digit codes used to identify the constituent measured and the units of measure. A complete list of parameter codes and associated groupings can be found at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/parameter-codes/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/parameter-codes/items).\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: parameter_code
        required: false
        schema:
          description: "Parameter codes are 5-digit codes used to identify the constituent measured and the units of measure. A complete list of parameter codes and associated groupings can be found at [https://api.waterdata.usgs.gov/ogcapi/v0/collections/parameter-codes/items](https://api.waterdata.usgs.gov/ogcapi/v0/collections/parameter-codes/items).\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Parameter code
          type: string
        style: form
      - description: Split parameters are enabled for this field, so you can supply multiple values separated by commas.
        explode: false
        in: query
        name: id
        required: false
        schema:
          title: ID
          type: string
        style: form
      - description: A human-readable description of the units of measurement associated with an observation.
        explode: false
        in: query
        name: unit_of_measure
        required: false
        schema:
          description: A human-readable description of the units of measurement associated with an observation.
          title: Unit of measure
          type: string
        style: form
      - description: 'The value of the observation. Values are transmitted as strings in the JSON response format in order to preserve precision.

          '
        explode: false
        in: query
        name: value
        required: false
        schema:
          description: 'The value of the observation. Values are transmitted as strings in the JSON response format in order to preserve precision.

            '
          title: Value
          type: string
        style: form
      - description: "The last time a record was refreshed in our database. This may happen due to regular operational processes and does not necessarily indicate anything about the measurement has changed.\nYou can query this field using date-times or intervals, adhering to RFC 3339, or using ISO 8601 duration objects. Intervals may be bounded or half-bounded (double-dots at start or end).\nExamples:\n\n  - A date-time: \"2018-02-12T23:20:50Z\"\n  - A bounded interval: \"2018-02-12T00:00:00Z/2018-03-18T12:31:12Z\"\n  - Half-bounded intervals: \"2018-02-12T00:00:00Z/..\" or \"../2018-03-18T12:31:12Z\"\n  - Duration objects: \"P1M\" for data from the past month or \"PT36H\" for the last 36 hours\n\nOnly features that have a `last_modified` that intersects the value of datetime are selected.\n"
        explode: false
        in: query
        name: last_modified
        required: false
        schema:
          description: "The last time a record was refreshed in our database. This may happen due to regular operational processes and does not necessarily indicate anything about the measurement has changed.\nYou can query this field using date-times or intervals, adhering to RFC 3339, or using ISO 8601 duration objects. Intervals may be bounded or half-bounded (double-dots at start or end).\nExamples:\n\n  - A date-time: \"2018-02-12T23:20:50Z\"\n  - A bounded interval: \"2018-02-12T00:00:00Z/2018-03-18T12:31:12Z\"\n  - Half-bounded intervals: \"2018-02-12T00:00:00Z/..\" or \"../2018-03-18T12:31:12Z\"\n  - Duration objects: \"P1M\" for data from the past month or \"PT36H\" for the last 36 hours\n\nOnly features that have a `last_modified` that intersects the value of datetime are selected.\n"
          title: Last modified date
          type: string
        style: form
      - description: "The date an observation represents. You can query this field using date-times or intervals, adhering to RFC 3339, or using ISO 8601 duration objects. Intervals may be bounded or half-bounded (double-dots at start or end).\nExamples:\n\n  - A date-time: \"2018-02-12T23:20:50Z\"\n  - A bounded interval: \"2018-02-12T00:00:00Z/2018-03-18T12:31:12Z\"\n  - Half-bounded intervals: \"2018-02-12T00:00:00Z/..\" or \"../2018-03-18T12:31:12Z\"\n  - Duration objects: \"P1M\" for data from the past month or \"PT36H\" for the last 36 hours\n\nOnly features that have a `time` that intersects the value of datetime are selected. If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.\n"
        explode: false
        in: query
        name: time
        required: false
        schema:
          description: "The date an observation represents. You can query this field using date-times or intervals, adhering to RFC 3339, or using ISO 8601 duration objects. Intervals may be bounded or half-bounded (double-dots at start or end).\nExamples:\n\n  - A date-time: \"2018-02-12T23:20:50Z\"\n  - A bounded interval: \"2018-02-12T00:00:00Z/2018-03-18T12:31:12Z\"\n  - Half-bounded intervals: \"2018-02-12T00:00:00Z/..\" or \"../2018-03-18T12:31:12Z\"\n  - Duration objects: \"P1M\" for data from the past month or \"PT36H\" for the last 36 hours\n\nOnly features that have a `time` that intersects the value of datetime are selected. If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.\n"
          title: Time
          type: string
        style: form
      - description: "The water year (running from October 1st to September 30th) a peak occurred.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: water_year
        required: false
        schema:
          description: "The water year (running from October 1st to September 30th) a peak occurred.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Water Year
          type: integer
        style: form
      - description: "The calendar year a peak occurred.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: year
        required: false
        schema:
          description: "The calendar year a peak occurred.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Year
          type: integer
        style: form
      - description: "The calendar month a peak occurred. If null, the month a peak occurred is unknown.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: month
        required: false
        schema:
          description: "The calendar month a peak occurred. If null, the month a peak occurred is unknown.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Month
          type: integer
        style: form
      - description: "The day of the month a peak occurred. If null, the day a peak occurred is unknown.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: day
        required: false
        schema:
          description: "The day of the month a peak occurred. If null, the day a peak occurred is unknown.\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Day
          type: integer
        style: form
      - description: 'The time of day a peak occurred. If null, the time of day a peak occurred is unknown.

          '
        explode: false
        in: query
        name: time_of_day
        required: false
        schema:
          description: 'The time of day a peak occurred. If null, the time of day a peak occurred is unknown.

            '
          format: time
          title: Time of Day
          type: string
        style: form
      - description: "If not null, this record represents the peak value for the parameter code since the year contained in \"peak_since\".\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
        explode: false
        in: query
        name: peak_since
        required: false
        schema:
          description: "If not null, this record represents the peak value for the parameter code since the year contained in \"peak_since\".\n Split parameters are enabled for this field, so you can supply multiple values separated by commas."
          title: Peak since
          type: integer
        style: form
      - description: 'This field indicates any qualifiers associated with an observation, for instance if a sensor may have been impacted by ice or if values were estimated.

          '
        explode: false
        in: query
        name: qualifier
        required: false
        schema:
          description: 'This field indicates any qualifiers associated with an observation, for instance if a sensor may have been impacted by ice or if values were estimated.

            '
          title: Qualifier
          type: string
        style: form
      - $ref: '#/components/parameters/filter'
      responses:
        '200':
          $ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/Features
        '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 Peaks items
      tags:
      - peaks
    options:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: optionsPeaksFeatures
      responses:
        '200':
          description: options response
      security:
      - ApiKeyQuery: []
      - ApiKeyHeader: []
      summary: Options for Peaks items
      tags:
      - peaks
    post:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: getCQL2PeaksFeatures
      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: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/responses/Features
        '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 Peaks items with CQL2
      tags:
      - peaks
  /collections/peaks/items/{featureId}:
    get:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: getPeaksFeature
      parameters:
      - $ref: https://schemas.opengis.net/ogcapi/features/part1/1.0/openapi/ogcapi-features-1.yaml#/components/parameters/featureId
      - $ref: '#/components/parameters/crs'
      - $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/Feature
        '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 Peaks item by id
      tags:
      - peaks
    options:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: optionsPeaksFeature
      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 Peaks item by id
      tags:
      - peaks
  /collections/peaks/queryables:
    get:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: getPeaksQueryables
      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:
            - time_series_id
            - monitoring_location_id
            - parameter_code
            - id
            - unit_of_measure
            - value
            - last_modified
            - time
            - water_year
            - year
            - month
            - day
            - time_of_day
            - peak_since
            - qualifier
            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 Peaks queryables
      tags:
      - peaks
  /collections/peaks/schema:
    get:
      description: 'Annual peak flow values are the maximum instantaneous streamflow values recorded at a particular site for the entire water year from October 1 to September 30. Note that the annual peak flow value may not occur at the same time the maximum water level occurs due to conditions such as backwater, tidal fluctuations, etc.

        '
      operationId: getPeaksSchema
      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 Peaks schema
      tags:
      - peaks
components:
  parameters:
    offset:
      description: The optional offset parameter indicates the index within the result set from which the server shall begin presenting results in the response document.  The first element has an index of 0 (default).
      explode: false
      in: query
      name: offset
      required: false
      schema:
        default: 0
        minimum: 0
        type: integer
      style: form
    skipGeometry:
      description: This option can be used to skip response geometries for each feature.
      explode: false
      in: query
      name: skipGeometry
      required: false
      schema:
        default: false
        type: boolean
      style: form
    f:
      description: The optional f parameter indicates the output format which the server shall provide as part of the response document.  The default format is GeoJSON.  CSV is also available.
      explode: false
      in: query
      name: f
      required: false
      schema:
        default: json
        enum:
        - json
        - html
        - jsonld
        - csv
        type: string
      style: form
    bbox:
      description: Only features that have a geometry that intersects the bounding box are selected.The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth).
      explode: false
      in: query
      name: bbox
      required: false
      schema:
        items:
          type: number
        maxItems: 6
        minItems: 4
        type: array
      style: form
    bbox-crs:
      description: Indicates the coordinate reference system for the given bbox coordinates.
      explode: false
      in: query
      name: bbox-crs
      required: false
      schema:
        format: uri
        type: string
      style: form
    filter:
      description: "CQL Text filter expression.  CQL JSON cannot be used here, only in the body. \nSee also: https://docs.pygeoapi.io/en/latest/cql.html \n\nExample: time_series_id IN ('64ee32f5350a4ec4967435dcd2e364ea', '3e55d9c2d8a54bec9ca5e292b07d5a96')"
      in: query
      name: filter
      required: false
      schema:
        type: string
    crs:
      description: Indicates the coordinate reference system for the results.
      explode: false
      in: query
      name: crs
      required: false
      schema:
        format: uri
        type: string
      style: form
    wda_sortby:
      description: "Specifies a comma-separated list of property names by which the response shall be sorted.  If the property name is preceded by a plus (+) sign it indicates an ascending sort for that property.  If the property name is preceded by a minus (-) sign it indicates a descending sort for that property.  If the property is not preceded by a plus or minus, then the default sort order implied is ascending (+).  \n\nOnly a single page of data can be returned when specifying sortby. If you need more than a single page of data, don't specify a sortby value and sort the full data set after it's been downloaded."
      explode: false
      in: query
      name: sortby
      required: false
      schema:
        items:
          pattern: '[+|-]?[A-Za-z_].*'
          type: string
        minItems: 1
        type: array
      style: form
    lang:
      description: The optional lang parameter instructs the server return a response in a certain language, if supported.  If the language is not among the available values, the Accept-Language header language will be used if it is supported. If the header is missing, the default server language is used. Note that providers may only support a single language (or often no language at all), that can be different from the server language.  Language strings can be written in a complex (e.g. "fr-CA,fr;q=0.9,en-US;q=0.8,en;q=0.7"), simple (e.g. "de") or locale-like (e.g. "de-CH" or "fr_BE") fashion.
      in: query
      name: lang
      required: false
      schema:
        default: en-US
        enum:
        - en-US
        type: string
  responses:
    TooManyRequests429:
      content:
        application/json:
          examples:
            rateLimitExceeded:
              summary: Rate Limit Exceeded
              value:
                error:
                  code: OVER_RATE_LIMIT
                  message: You have exceeded your rate limit. Make sure you provided your API key from https://api.waterdata.usgs.gov/signup/, then either try again later or contact us at https://waterdata.usgs.gov/questions-comments/?referrerUrl=https://api.waterdata.usgs.gov for assistance.
          schema:
            $ref: '#/components/schemas/Error'
        application/xml:
          example: "&ltresponse&gt\n      &lterror&gt\n        &ltcode&gtOVER_RATE_LIMIT&lt/code&gt\n        &ltmessage&gtYou have exceeded your rate limit. Make sure you provided your API key from https://api.waterdata.usgs.gov/signup/, then either try again later or contact us at https://waterdata.usgs.gov/questions-comments/?referrerUrl=https://api.waterdata.usgs.gov for assistance.&lt/message&gt\n      &lt/error&gt\n    &lt/response&gt"
          schema:
            properties:
              response:
                properties:
                  error:
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                    required:
                    - code
                    - message
                    type: object
                required:
                - error
                type: object
            type: object
        text/csv:
          examples:
            rateLimitCsv:
              summary: Rate Limit Exceeded (CSV)
              value: 'Error Code,Error Message

                OVER_RATE_LIMIT,You have exceeded your rate limit. Make sure you provided your API key from https://api.waterdata.usgs.gov/signup/, then either try again later or contact us at https://waterdata.usgs.gov/questions-comments/?referrerUrl=https://api.waterdata.usgs.gov for assistance.'
          schema:
            type: string
        text/html:
          examples:
            rateLimitHtml:
              summary: Rate Limit Exceeded (HTML)
              value: "&lthtml&gt\n      &ltbody&gt\n        &lth1&gtOVER_RATE_LIMIT&lt/h1&gt\n        &ltp&gtYou have exceeded your rate limit. Make sure you provided your API key from https://api.waterdata.usgs.gov/signup/, then either try again later or contact us at https://waterdata.usgs.gov/questions-comments/?referrerUrl=https://api.waterdata.usgs.gov for assistance.&lt/p&gt\n      &lt/body&gt\n    &lt/html&gt"
          schema:
            type: string
      description: Too Many Requests - Rate limit exceeded.
    Queryables:
      content:
        application/json:
          schema:
            $ref: '#/compo

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/doi/refs/heads/main/openapi/doi-peaks-api-openapi.yml