Api Endpoint

Data Lookup API

U.S. coastal tide data from NOAA — when's the next high or low tide, or what's the water level right now: high/low tide predictions for the next 48 hours (product=predictions, default), or the latest observed water level (product=water_level). Identify the location by NOAA CO-OPS station ID, or just pass lat+lng and the nearest station is used automatically (distanceKm in the response says how far it is). Heights in feet above MLLW datum, times in GMT.

Open interactive test console

Offering

Provider
x402-seller.onrender.com
Method
GET
Offering type
Api Endpoint
Transport type
http
Category
Weather And Environment
Delivery
Not provided
Pricing model
Not provided
x402 version
2

Endpoint context

URL
https://x402-seller.onrender.com/ocean/tides
MIME type
application/json
First seen
2026-10-16T01:50:10.647Z
Last seen
Tags
ocean, weather

Payment pricing

x402 payment terms are the authoritative price for calling this endpoint.

Payment option 1
0.001 USDC
Atomic price: 1000 · Network: eip155:8453 · Asset: USDC · Scheme: exact
Raw x402 terms
[
  {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amount": "1000",
    "payTo": "0xbd61dfb01f81c91f02b0ccd51b0220e0c8918639"
  }
]

Observed health

Status
Healthy
Latest latency
94 ms
Average latency
553 ms
HTTP status
402
Last checked
Reachability
100% over 11 checks

Latency is measured to the first response headers. A reachable result does not verify response accuracy or merchant identity.

Input schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "const": "http"
    },
    "method": {
      "type": "string",
      "enum": [
        "GET"
      ]
    },
    "queryParams": {
      "type": "object",
      "properties": {
        "station": {
          "type": "string",
          "description": "NOAA CO-OPS station ID (e.g. 9414290 for San Francisco); omit to resolve by lat/lng instead"
        },
        "lat": {
          "type": "string",
          "description": "Latitude — used with lng to find the nearest NOAA station when no station ID is given"
        },
        "lng": {
          "type": "string",
          "description": "Longitude — used with lat to find the nearest NOAA station when no station ID is given"
        },
        "product": {
          "type": "string",
          "enum": [
            "predictions",
            "water_level"
          ],
          "description": "predictions = next 48h high/low tides (default); water_level = latest observed reading"
        }
      },
      "required": []
    }
  },
  "required": [
    "type",
    "method"
  ],
  "additionalProperties": false
}

Output schema

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "method": {
          "enum": [
            "GET"
          ],
          "type": "string"
        },
        "queryParams": {
          "properties": {
            "lat": {
              "description": "Latitude — used with lng to find the nearest NOAA station when no station ID is given",
              "type": "string"
            },
            "lng": {
              "description": "Longitude — used with lat to find the nearest NOAA station when no station ID is given",
              "type": "string"
            },
            "product": {
              "description": "predictions = next 48h high/low tides (default); water_level = latest observed reading",
              "enum": [
                "predictions",
                "water_level"
              ],
              "type": "string"
            },
            "station": {
              "description": "NOAA CO-OPS station ID (e.g. 9414290 for San Francisco); omit to resolve by lat/lng instead",
              "type": "string"
            }
          },
          "required": [],
          "type": "object"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "properties": {
            "datum": {
              "type": "string"
            },
            "distanceKm": {
              "description": "Distance from the requested lat/lng to the station used; only present when resolved by lat/lng",
              "type": "number"
            },
            "heightFt": {
              "description": "Observed water level in feet above MLLW; present only when product=water_level",
              "type": "number"
            },
            "lat": {
              "type": [
                "number",
                "null"
              ]
            },
            "lng": {
              "type": [
                "number",
                "null"
              ]
            },
            "preliminary": {
              "description": "True if the reading is preliminary/unverified; present only when product=water_level",
              "type": "boolean"
            },
            "product": {
              "type": "string"
            },
            "source": {
              "type": "string"
            },
            "station": {
              "type": "string"
            },
            "stationName": {
              "type": [
                "string",
                "null"
              ]
            },
            "tides": {
              "description": "High/low tide predictions for the next 48 hours; present only when product=predictions",
              "type": "array"
            },
            "time": {
              "description": "Observation time (GMT); present only when product=water_level",
              "type": "string"
            },
            "timeZone": {
              "type": "string"
            },
            "units": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}