{
  "graph" : {
    "columns" : [
      {
        "date" : "2026-09-14T01:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.5",
        "wind" : {
          "direction" : "S",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-14T02:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "11.6",
        "wind" : {
          "direction" : "S",
          "speed" : "6"
        }
      },
      {
        "date" : "2026-09-14T03:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.4",
        "wind" : {
          "direction" : "SW",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-14T04:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.1",
        "wind" : {
          "direction" : "SW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-14T05:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "11.1",
        "wind" : {
          "direction" : "S",
          "speed" : "6"
        }
      },
      {
        "date" : "2026-09-14T06:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "11.6",
        "wind" : {
          "direction" : "S",
          "speed" : "2"
        }
      },
      {
        "date" : "2026-09-14T07:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "10.5",
        "wind" : {
          "direction" : "calm",
          "speed" : "0"
        }
      },
      {
        "date" : "2026-09-14T08:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.9",
        "wind" : {
          "direction" : "SE",
          "speed" : "6"
        }
      },
      {
        "date" : "2026-09-14T09:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "13.5",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-14T10:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "13.9",
        "wind" : {
          "direction" : "SW",
          "speed" : "15"
        }
      },
      {
        "date" : "2026-09-14T11:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "15.9",
        "wind" : {
          "direction" : "SW",
          "speed" : "24"
        }
      },
      {
        "date" : "2026-09-14T12:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "16.5",
        "wind" : {
          "direction" : "SW",
          "speed" : "22"
        }
      },
      {
        "date" : "2026-09-14T13:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "15.0",
        "wind" : {
          "direction" : "SW",
          "speed" : "24"
        }
      },
      {
        "date" : "2026-09-14T14:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "16.0",
        "wind" : {
          "direction" : "SW",
          "speed" : "24"
        }
      },
      {
        "date" : "2026-09-14T15:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "15.8",
        "wind" : {
          "direction" : "SW",
          "speed" : "24"
        }
      },
      {
        "date" : "2026-09-14T16:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "14.7",
        "wind" : {
          "direction" : "SW",
          "speed" : "22"
        }
      },
      {
        "date" : "2026-09-14T17:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "14.5",
        "wind" : {
          "direction" : "SW",
          "speed" : "20"
        }
      },
      {
        "date" : "2026-09-14T18:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "13.8",
        "wind" : {
          "direction" : "SW",
          "speed" : "20"
        }
      },
      {
        "date" : "2026-09-14T19:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.6",
        "wind" : {
          "direction" : "S",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-14T20:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "13.0",
        "wind" : {
          "direction" : "SW",
          "speed" : "19"
        }
      },
      {
        "date" : "2026-09-14T21:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.5",
        "wind" : {
          "direction" : "SW",
          "speed" : "15"
        }
      },
      {
        "date" : "2026-09-14T22:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.9",
        "wind" : {
          "direction" : "SW",
          "speed" : "20"
        }
      },
      {
        "date" : "2026-09-14T23:00:00+12:00",
        "rainFallPerHour" : "0.0",
        "rainfall" : 0.0,
        "temperature" : "12.0",
        "wind" : {
          "direction" : "SW",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-15T00:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "SW",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-15T01:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "SW",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-15T02:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "SW",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-15T03:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "10"
        }
      },
      {
        "date" : "2026-09-15T04:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-15T05:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "10",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-15T06:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "10",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-15T07:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-15T08:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-15T09:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "14",
        "wind" : {
          "direction" : "SW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-15T10:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "14",
        "wind" : {
          "direction" : "SW",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-15T11:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "SW",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-15T12:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "16",
        "wind" : {
          "direction" : "SW",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-15T13:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "16",
        "wind" : {
          "direction" : "SW",
          "speed" : "15"
        }
      },
      {
        "date" : "2026-09-15T14:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "16",
        "wind" : {
          "direction" : "SW",
          "speed" : "17"
        }
      },
      {
        "date" : "2026-09-15T15:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "16",
        "wind" : {
          "direction" : "SW",
          "speed" : "17"
        }
      },
      {
        "date" : "2026-09-15T16:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "SW",
          "speed" : "19"
        }
      },
      {
        "date" : "2026-09-15T17:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "SW",
          "speed" : "17"
        }
      },
      {
        "date" : "2026-09-15T18:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "14",
        "wind" : {
          "direction" : "SW",
          "speed" : "15"
        }
      },
      {
        "date" : "2026-09-15T19:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "13",
        "wind" : {
          "direction" : "SW",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-15T20:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "SW",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-15T21:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "SW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-15T22:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-15T23:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T00:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T01:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "W",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T02:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "10",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T03:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "10",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T04:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "10",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T05:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T06:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "SW",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T07:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "11",
        "wind" : {
          "direction" : "W",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T08:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "W",
          "speed" : "7"
        }
      },
      {
        "date" : "2026-09-16T09:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "14",
        "wind" : {
          "direction" : "W",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-16T10:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "14",
        "wind" : {
          "direction" : "W",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-16T11:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "W",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-16T12:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "W",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-16T13:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "W",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-16T14:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "W",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-16T15:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "W",
          "speed" : "15"
        }
      },
      {
        "date" : "2026-09-16T16:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "W",
          "speed" : "15"
        }
      },
      {
        "date" : "2026-09-16T17:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "15",
        "wind" : {
          "direction" : "W",
          "speed" : "13"
        }
      },
      {
        "date" : "2026-09-16T18:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "14",
        "wind" : {
          "direction" : "W",
          "speed" : "11"
        }
      },
      {
        "date" : "2026-09-16T19:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "13",
        "wind" : {
          "direction" : "NW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-16T20:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "13",
        "wind" : {
          "direction" : "NW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-16T21:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "NW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-16T22:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "NW",
          "speed" : "9"
        }
      },
      {
        "date" : "2026-09-16T23:00:00+12:00",
        "rainFallPerHour" : "0",
        "rainfall" : 0.0,
        "temperature" : "12",
        "wind" : {
          "direction" : "N",
          "speed" : "11"
        }
      }
    ],
    "series" : [
      {
        "count" : 23,
        "label" : "Observed",
        "start" : 0
      },
      {
        "count" : 48,
        "label" : "Forecast",
        "start" : 23
      }
    ],
    "sunriseSunset" : [
      {
        "date" : "2026-09-14T00:00:00+12:00",
        "riseHour" : 6,
        "setHour" : 18,
        "sunRise" : "6:22am",
        "sunRiseISO" : "2026-09-14T06:22:00+12:00",
        "sunSet" : "6:11pm",
        "sunSetISO" : "2026-09-14T18:11:00+12:00"
      },
      {
        "date" : "2026-09-15T00:00:00+12:00",
        "riseHour" : 6,
        "setHour" : 18,
        "sunRise" : "6:21am",
        "sunRiseISO" : "2026-09-15T06:21:00+12:00",
        "sunSet" : "6:12pm",
        "sunSetISO" : "2026-09-15T18:12:00+12:00"
      },
      {
        "date" : "2026-09-16T00:00:00+12:00",
        "riseHour" : 6,
        "setHour" : 18,
        "sunRise" : "6:19am",
        "sunRiseISO" : "2026-09-16T06:19:00+12:00",
        "sunSet" : "6:13pm",
        "sunSetISO" : "2026-09-16T18:13:00+12:00"
      }
    ]
  },
  "keys" : [
    {
      "items" : [
        {
          "label" : "Calm: 0"
        },
        {
          "icon" : "wind-north-light",
          "label" : "Light Winds: 1 - 14"
        },
        {
          "icon" : "wind-north-moderate",
          "label" : "Moderate: 15 - 29"
        },
        {
          "icon" : "wind-north-fresh",
          "label" : "Fresh: 30 - 39"
        },
        {
          "icon" : "wind-north-strong",
          "label" : "Strong: 40 - 62"
        },
        {
          "icon" : "wind-north-gale",
          "label" : "Gale: 63 - 89"
        },
        {
          "icon" : "wind-north-gale",
          "label" : "Severe Gale: > 89"
        }
      ],
      "label" : "Wind (km/h)"
    },
    {
      "items" : [
        {
          "className" : "rainfall-light",
          "icon" : "rainfall-light",
          "label" : "Light: 0.2 - 2.0"
        },
        {
          "className" : "rainfall-moderate",
          "icon" : "rainfall-moderate",
          "label" : "Moderate: 2.1 - 6.0"
        },
        {
          "className" : "rainfall-heavy",
          "icon" : "rainfall-heavy",
          "label" : "Heavy: 6.1 - 25"
        },
        {
          "className" : "rainfall-torrential",
          "icon" : "rainfall-torrential",
          "label" : "Torrential: > 25"
        }
      ],
      "label" : "Rain (mm/h)"
    }
  ],
  "labels" : [
    "",
    "Rainfall (mm/h)",
    "Temperature (°C)",
    "Avg wind speed (not gusts) in km/h"
  ],
  "name" : "forty-eight-hour-forecast/1",
  "notes" : [
    {
      "text" : "Total rainfall so far today: 0.0 mm. Total rainfall forecast for today: 0.0 mm"
    }
  ],
  "notesLast" : [
    {
      "text" : "The hourly model data shown can differ from the written forecast and icons, which are produced by MetService meteorologists and take into account model data along with many other data sources. If they differ significantly, please use the text forecasts."
    },
    {
      "text" : "Forecast data is specifically generated for Central Auckland (90544). Rainfall shown is for the sum up to the hour. Wind speed, wind direction and temperature are the observed or forecast values at the given hour."
    }
  ],
  "title" : "Hourly Observations and Forecast",
  "type" : "module",
  "types" : [
    "date",
    "rainfall",
    "temperature",
    "wind"
  ]
}