Skip to content
GET /v1/forecast

Current sea state + daily summary

Try it live

10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.

Custom headers (optional)
api.oanor.com/marine-api

It works. Grab an API key and use it in your project.

Get an API key

Code snippets

curl "https://api.oanor.com/marine-api/v1/forecast" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/marine-api/v1/forecast", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/marine-api/v1/forecast");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
    "https://api.oanor.com/marine-api/v1/forecast",
    headers={"x-oanor-key": "oanor_test_..."}
)

Example response

A real response from this endpoint, captured by the latest health check.

{
    "data": {
        "daily": [
            {
                "time": "2026-06-08",
                "wave_height_max": 2.26,
                "wave_period_max": 8.65,
                "wind_wave_height_max": 0.9,
                "swell_wave_height_max": 2.12,
                "swell_wave_period_max": 8.05,
                "wave_direction_dominant": 312,
                "swell_wave_direction_dominant": 306
            },
            {
                "time": "2026-06-09",
                "wave_height_max": 2.74,
                "wave_period_max": 7.65,
                "wind_wave_height_max": 2.18,
                "swell_wave_height_max": 2.02,
                "swell_wave_period_max": 8.35,
                "wave_direction_dominant": 330,
                "swell_wave_direction_dominant": 308
            },
            {
                "time": "2026-06-10",
                "wave_height_max": 2.78,
                "wave_period_max": 8.05,
                "wind_wave_height_max": 1.62,
                "swell_wave_height_max": 2.14,
                "swell_wave_period_max": 7.8,
                "wave_direction_dominant": 334,
                "swell_wave_direction_dominant": 320
            }
        ],
        "units": {
            "wave_height": "m",
            "wave_period": "s",
            "wave_direction": "°"
        },
        "current": {
            "time": "2026-06-08T02:15",
            "wave_height": 2.1,
            "wave_period": 8.55,
            "wave_direction": 315,
            "wind_wave_height": 0.68,
            "wind_wave_period": 3.1,
            "swell_wave_height": 1.98,
            "swell_wave_period": 7.7,
            "swell_wave_direction": 308
        },
        "location": {
            "name": "Nazaré",
            "region": "Leiria District",
            "country": "Portugal",
            "latitude": 39.60289,
            "longitude": -9.06836
        }
    },
    "meta": {
        "timestamp": "2026-06-08T01:20:12.175Z",
        "request_id": "869ea870-dec4-4142-9f44-6a40930e01dc"
    },
    "status": "ok",
    "message": "Forecast retrieved successfully",
    "success": true
}