NOAA CO-OPS Datagetter API
The Datagetter API from NOAA CO-OPS — 1 operation(s) for datagetter.
The Datagetter API from NOAA CO-OPS — 1 operation(s) for datagetter.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/noaa-co-ops-datagetter-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: NOAA CO-OPS Data Retrieval Benchmarks Datagetter API
description: Retrieves real-time and historical observational and prediction data from NOAA CO-OPS coastal and Great Lakes monitoring stations. Products include water levels, tidal predictions, meteorological observations (wind, air pressure, air and water temperature, humidity, conductivity, salinity, visibility), and currents data.
version: 1.0.0
contact:
name: CO-OPS User Services
email: co-ops.userservices@noaa.gov
license:
name: Public Domain
url: https://www.noaa.gov/disclaimer
servers:
- url: https://api.tidesandcurrents.noaa.gov/api/prod
description: NOAA CO-OPS Data Retrieval API
tags:
- name: Datagetter
paths:
/datagetter:
get:
operationId: getData
summary: Retrieve observational or prediction data
description: Returns tides, water levels, currents, meteorological observations, or predictions from a specified NOAA CO-OPS station for a given time range and product type.
parameters:
- name: station
in: query
required: true
description: 7-character station ID (e.g., 9414290) or currents station code (e.g., cb1401).
schema:
type: string
example: '9414290'
- name: product
in: query
required: true
description: The type of data product to retrieve.
schema:
type: string
enum:
- water_level
- hourly_height
- high_low
- daily_mean
- predictions
- air_gap
- air_temperature
- water_temperature
- wind
- air_pressure
- conductivity
- visibility
- humidity
- salinity
- currents
- currents_predictions
- currents_header
- ofs_water_level
- name: begin_date
in: query
required: false
description: 'Start date for data retrieval. Format: yyyyMMdd or MM/dd/yyyy. Required unless using `date` or `range`.'
schema:
type: string
example: '20230101'
- name: end_date
in: query
required: false
description: 'End date for data retrieval. Format: yyyyMMdd or MM/dd/yyyy. Required unless using `date` or `range`.'
schema:
type: string
example: '20230131'
- name: date
in: query
required: false
description: Quick time reference shorthand. Mutually exclusive with begin_date/end_date/range.
schema:
type: string
enum:
- today
- latest
- recent
- name: range
in: query
required: false
description: Hours of data to retrieve from the current time (or from begin_date if supplied). Use `range=1` to `range=48` for sub-daily products; large values for predictions.
schema:
type: integer
example: 24
- name: datum
in: query
required: false
description: Vertical datum for water level data. Required for water_level and predictions products.
schema:
type: string
enum:
- CRD
- IGLD
- LWD
- MHHW
- MHW
- MTL
- MSL
- MLW
- MLLW
- NAVD
- STND
- name: time_zone
in: query
required: false
description: Time zone for returned timestamps.
schema:
type: string
enum:
- gmt
- lst
- lst_ldt
default: gmt
- name: interval
in: query
required: false
description: Data interval. Use 'h' for hourly, or integer minutes (1, 6, 15, 30, 60). Applies to water_level and currents.
schema:
type: string
example: '6'
- name: units
in: query
required: false
description: Measurement unit system.
schema:
type: string
enum:
- metric
- english
default: metric
- name: bin
in: query
required: false
description: Current depth bin number for ADCP currents data.
schema:
type: integer
example: 1
- name: vel_type
in: query
required: false
description: Current velocity output format.
schema:
type: string
enum:
- speed_dir
- default
- name: format
in: query
required: false
description: Response format.
schema:
type: string
enum:
- json
- xml
- csv
default: json
- name: application
in: query
required: false
description: Identifier for the calling application. Helps NOAA track usage.
schema:
type: string
example: MyApp
- name: expand
in: query
required: false
description: Include additional detail in currents response.
schema:
type: string
enum:
- detailed
responses:
'200':
description: Successful data response
content:
application/json:
schema:
$ref: '#/components/schemas/DataResponse'
example:
metadata:
id: '9414290'
name: San Francisco
lat: '37.8063'
lon: '-122.4659'
data:
- t: 2023-01-01 00:00
v: '1.234'
s: '0.009'
f: 0,0,0,0
q: v
'400':
description: Bad request — invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
tags:
- Datagetter
components:
schemas:
DataResponse:
type: object
properties:
metadata:
$ref: '#/components/schemas/StationMetadata'
data:
type: array
items:
$ref: '#/components/schemas/DataPoint'
StationMetadata:
type: object
properties:
id:
type: string
description: Station ID
example: '9414290'
name:
type: string
description: Station name
example: San Francisco
lat:
type: string
description: Station latitude
example: '37.8063'
lon:
type: string
description: Station longitude
example: '-122.4659'
DataPoint:
type: object
properties:
t:
type: string
description: Timestamp in YYYY-MM-DD HH:mm format
example: 2023-01-01 00:00
v:
type: string
description: Observed or predicted value
example: '1.234'
s:
type: string
description: Standard deviation of the 1-second samples used to compute the 6-minute sample (water level only)
example: '0.009'
f:
type: string
description: Data quality flags
example: 0,0,0,0
q:
type: string
description: Quality assurance/quality control level (v=verified, p=preliminary)
example: v
ErrorResponse:
type: object
properties:
error:
type: object
properties:
message:
type: string
description: Human-readable error description
example: No data was found. This product was not offered at this station at the requested time.