# Sea Temperature & Waves API
> Real-time and forecast ocean conditions for any coastal or open-water location. Get the current sea-surface temperature (in °C and °F) together with a wave snapshot — height, direction, period, swell and wind-wave — pull an hourly series of temperature and waves, or a daily forecast with sea-temperature min/avg/max and wave aggregates. Global ocean coverage sourced from Open-Meteo’s Marine model, delivered through a fast, reliable API; inland coordinates return a clear not-found so you always know you have ocean data. Ideal for surf and sailing apps, fishing and diving, beach and tourism services, shipping and coastal or climate monitoring.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/seatemp-api/..."
```

## Pricing
- **Free** (Free) — 1,000 calls/Mo, 2 req/s
- **Basic** ($5/Mo) — 75,000 calls/Mo, 5 req/s
- **Pro** ($15/Mo) — 300,000 calls/Mo, 15 req/s
- **Mega** ($39/Mo) — 1,200,000 calls/Mo, 40 req/s

## Endpoints

### Sea

#### `GET /v1/current` — Current sea temperature + waves

**Parameters:**
- `lat` (query, required, string) — Latitude -90..90 (ocean/coastal) Example: `36.6`
- `lon` (query, required, string) — Longitude -180..180 Example: `-122`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/seatemp-api/v1/current?lat=36.6&lon=-122"
```

**Response:**
```json
{
    "data": {
        "time": "2026-05-30T11:15",
        "waves": {
            "height_m": 2.1,
            "period_s": 9.4,
            "direction_deg": 299,
            "swell_height_m": 1.5,
            "swell_period_s": 6,
            "wind_wave_height_m": 0.6
        },
        "latitude": 36.625,
        "timezone": "America/Los_Angeles",
        "longitude": -122.04166,
        "sea_temperature": {
            "celsius": 14.6,
            "fahrenheit": 58.3
        }
    },
    "meta": {
        "timestamp": "2026-05-30T18:17:04.429Z",
        "request_id": "8a572442-0949-464f-808d-e0cf6a956b65"
    },
    "status": "ok",
    "message": "Current sea conditions retrieved",
    "success": true
}
```

#### `GET /v1/forecast` — Daily sea temperature + wave forecast

**Parameters:**
- `lat` (query, required, string) — Latitude -90..90 (ocean/coastal) Example: `36.6`
- `lon` (query, required, string) — Longitude -180..180 Example: `-122`
- `days` (query, optional, string) — 1-7 (default 7) Example: `3`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/seatemp-api/v1/forecast?lat=36.6&lon=-122&days=3"
```

**Response:**
```json
{
    "data": {
        "days": 3,
        "forecast": [
            {
                "date": "2026-05-30",
                "sea_temperature_c": {
                    "avg": 14.7,
                    "max": 14.9,
                    "min": 14.4
                },
                "wave_height_max_m": 2.7,
                "wave_period_max_s": 10.8,
                "swell_height_max_m": 2.1,
                "wave_direction_dominant_deg": 300
            },
            {
                "date": "2026-05-31",
                "sea_temperature_c": {
                    "avg": 14.3,
                    "max": 14.6,
                    "min": 14.1
                },
                "wave_height_max_m": 2.7,
                "wave_period_max_s": 9.4,
                "swell_height_max_m": 2.5,
                "wave_direction_dominant_deg": 301
            },
            {
                "date": "2026-06-01",
                "sea_temperature_c": {
                    "avg": 14.5,
                    "max": 14.9,
                    "min": 14.1
                },
                "wave_height_max_m": 2.5,
                "wave_period_max_s": 10.6,
                "swell_height_max_m": 2.2,
                "wave_direction_dominant_deg": 291
            }
        ],
        "latitude": 36.625,
        "timezone": "America/Los_Angeles",
        "longitude": -122.04166
    },
    "meta": {
        "timestamp": "2026-05-30T18:17:05.972Z",
        "request_id": "70bc2999-4867-4bb7-a311-2dae8574
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/hourly` — Hourly sea temperature + waves

**Parameters:**
- `lat` (query, required, string) — Latitude -90..90 (ocean/coastal) Example: `36.6`
- `lon` (query, required, string) — Longitude -180..180 Example: `-122`
- `hours` (query, optional, string) — 1-168 (default 24) Example: `24`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/seatemp-api/v1/hourly?lat=36.6&lon=-122&hours=24"
```

**Response:**
```json
{
    "data": {
        "hours": 24,
        "series": [
            {
                "time": "2026-05-30T11:00",
                "wave_height_m": 2.1,
                "wave_period_s": 9.4,
                "sea_temperature_c": 14.6,
                "wave_direction_deg": 299
            },
            {
                "time": "2026-05-30T12:00",
                "wave_height_m": 2.2,
                "wave_period_s": 9.3,
                "sea_temperature_c": 14.6,
                "wave_direction_deg": 299
            },
            {
                "time": "2026-05-30T13:00",
                "wave_height_m": 2.2,
                "wave_period_s": 9.2,
                "sea_temperature_c": 14.7,
                "wave_direction_deg": 300
            },
            {
                "time": "2026-05-30T14:00",
                "wave_height_m": 2.3,
                "wave_period_s": 9,
                "sea_temperature_c": 14.8,
                "wave_direction_deg": 300
            },
            {
                "time": "2026-05-30T15:00",
                "wave_height_m": 2.3,
                "wave_period_s": 8.9,
                "sea_temperature_c": 14.8,
                "wave_direction_deg": 301
            },
            {
                "time": "2026-05-30T16:00",
                "wave_height_m": 2.4,
                "wave_period_s": 8.7,
                "sea_temperature_c": 14.8,
                "wave_direction_deg": 302
            },
            {
                "time": "20
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/seatemp-api
OpenAPI spec: https://www.oanor.com/api/seatemp-api/openapi.json
