{
  "schema_version": "1.0",
  "generated_at": "2026-08-04T18:53:47.813764Z",
  "country_code": "FR",
  "country": "France",
  "reference_system": {
    "installedKwp": 10,
    "orientation": "S",
    "tiltDeg": 35,
    "systemLossPct": 14
  },
  "city_count": 10,
  "summary": {
    "tomorrow_average_kwh": 47.15,
    "tomorrow_min_kwh": 35.5,
    "tomorrow_max_kwh": 55.9,
    "typical_annual_average_kwh": 13106.483000000002,
    "typical_annual_min_kwh": 10710.15,
    "typical_annual_max_kwh": 16242.92
  },
  "cities": [
    {
      "city_id": "lyon",
      "city": "Lyon",
      "latitude": 45.764,
      "longitude": 4.8357,
      "forecast": {
        "cityId": "lyon",
        "name": "Lyon",
        "lat": 45.764,
        "lon": 4.8357,
        "timezone": "Europe/Paris",
        "featured": true,
        "targetDate": "2026-08-05",
        "expectedKwh": 51.2,
        "lowKwh": 40.7,
        "highKwh": 56.6,
        "bestWindowStart": "2026-08-05T12:00:00+02:00",
        "bestWindowEnd": "2026-08-05T16:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:41.614175Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 12883.4,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 18.82,
          "monthlyKwh": 583.29,
          "variabilityKwh": 99.47
        },
        {
          "month": 2,
          "averageDailyKwh": 28.76,
          "monthlyKwh": 805.32,
          "variabilityKwh": 173.51
        },
        {
          "month": 3,
          "averageDailyKwh": 37.9,
          "monthlyKwh": 1174.8,
          "variabilityKwh": 155.84
        },
        {
          "month": 4,
          "averageDailyKwh": 43.78,
          "monthlyKwh": 1313.31,
          "variabilityKwh": 184.41
        },
        {
          "month": 5,
          "averageDailyKwh": 43.57,
          "monthlyKwh": 1350.63,
          "variabilityKwh": 155.17
        },
        {
          "month": 6,
          "averageDailyKwh": 46.88,
          "monthlyKwh": 1406.5,
          "variabilityKwh": 117.83
        },
        {
          "month": 7,
          "averageDailyKwh": 47.95,
          "monthlyKwh": 1486.31,
          "variabilityKwh": 150.68
        },
        {
          "month": 8,
          "averageDailyKwh": 45.4,
          "monthlyKwh": 1407.42,
          "variabilityKwh": 88.44
        },
        {
          "month": 9,
          "averageDailyKwh": 41.74,
          "monthlyKwh": 1252.13,
          "variabilityKwh": 91.36
        },
        {
          "month": 10,
          "averageDailyKwh": 30.83,
          "monthlyKwh": 955.69,
          "variabilityKwh": 128.95
        },
        {
          "month": 11,
          "averageDailyKwh": 20.87,
          "monthlyKwh": 626.14,
          "variabilityKwh": 91.57
        },
        {
          "month": 12,
          "averageDailyKwh": 16.83,
          "monthlyKwh": 521.86,
          "variabilityKwh": 119.41
        }
      ]
    },
    {
      "city_id": "marseille",
      "city": "Marseille",
      "latitude": 43.2965,
      "longitude": 5.3698,
      "forecast": {
        "cityId": "marseille",
        "name": "Marseille",
        "lat": 43.2965,
        "lon": 5.3698,
        "timezone": "Europe/Paris",
        "featured": true,
        "targetDate": "2026-08-05",
        "expectedKwh": 55.9,
        "lowKwh": 49.2,
        "highKwh": 59.8,
        "bestWindowStart": "2026-08-05T12:00:00+02:00",
        "bestWindowEnd": "2026-08-05T16:00:00+02:00",
        "confidence": "high",
        "fetchedAt": "2026-08-04T18:53:41.772498Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 16242.92,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 31.39,
          "monthlyKwh": 973.06,
          "variabilityKwh": 133.46
        },
        {
          "month": 2,
          "averageDailyKwh": 39.15,
          "monthlyKwh": 1096.33,
          "variabilityKwh": 116.1
        },
        {
          "month": 3,
          "averageDailyKwh": 46.35,
          "monthlyKwh": 1436.81,
          "variabilityKwh": 116.78
        },
        {
          "month": 4,
          "averageDailyKwh": 50.77,
          "monthlyKwh": 1523.22,
          "variabilityKwh": 114.28
        },
        {
          "month": 5,
          "averageDailyKwh": 52.52,
          "monthlyKwh": 1627.98,
          "variabilityKwh": 123.77
        },
        {
          "month": 6,
          "averageDailyKwh": 55.06,
          "monthlyKwh": 1651.87,
          "variabilityKwh": 40.43
        },
        {
          "month": 7,
          "averageDailyKwh": 56.63,
          "monthlyKwh": 1755.62,
          "variabilityKwh": 45.96
        },
        {
          "month": 8,
          "averageDailyKwh": 54.24,
          "monthlyKwh": 1681.33,
          "variabilityKwh": 35.7
        },
        {
          "month": 9,
          "averageDailyKwh": 48.4,
          "monthlyKwh": 1451.88,
          "variabilityKwh": 78.15
        },
        {
          "month": 10,
          "averageDailyKwh": 39.25,
          "monthlyKwh": 1216.86,
          "variabilityKwh": 94.5
        },
        {
          "month": 11,
          "averageDailyKwh": 31.05,
          "monthlyKwh": 931.51,
          "variabilityKwh": 124.5
        },
        {
          "month": 12,
          "averageDailyKwh": 28.92,
          "monthlyKwh": 896.46,
          "variabilityKwh": 104.65
        }
      ]
    },
    {
      "city_id": "paris",
      "city": "Paris",
      "latitude": 48.8566,
      "longitude": 2.3522,
      "forecast": {
        "cityId": "paris",
        "name": "Paris",
        "lat": 48.8566,
        "lon": 2.3522,
        "timezone": "Europe/Paris",
        "featured": true,
        "targetDate": "2026-08-05",
        "expectedKwh": 46.1,
        "lowKwh": 33.6,
        "highKwh": 56,
        "bestWindowStart": "2026-08-05T13:00:00+02:00",
        "bestWindowEnd": "2026-08-05T17:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:41.646193Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 11295.22,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 13.64,
          "monthlyKwh": 422.95,
          "variabilityKwh": 70.96
        },
        {
          "month": 2,
          "averageDailyKwh": 22.45,
          "monthlyKwh": 628.5,
          "variabilityKwh": 142.29
        },
        {
          "month": 3,
          "averageDailyKwh": 32.08,
          "monthlyKwh": 994.59,
          "variabilityKwh": 160.07
        },
        {
          "month": 4,
          "averageDailyKwh": 42.34,
          "monthlyKwh": 1270.1,
          "variabilityKwh": 181.2
        },
        {
          "month": 5,
          "averageDailyKwh": 41.61,
          "monthlyKwh": 1289.99,
          "variabilityKwh": 185.2
        },
        {
          "month": 6,
          "averageDailyKwh": 43.42,
          "monthlyKwh": 1302.59,
          "variabilityKwh": 162.7
        },
        {
          "month": 7,
          "averageDailyKwh": 43.05,
          "monthlyKwh": 1334.55,
          "variabilityKwh": 152.58
        },
        {
          "month": 8,
          "averageDailyKwh": 40.04,
          "monthlyKwh": 1241.13,
          "variabilityKwh": 116.86
        },
        {
          "month": 9,
          "averageDailyKwh": 36.67,
          "monthlyKwh": 1099.99,
          "variabilityKwh": 92.04
        },
        {
          "month": 10,
          "averageDailyKwh": 25.67,
          "monthlyKwh": 795.92,
          "variabilityKwh": 84.73
        },
        {
          "month": 11,
          "averageDailyKwh": 16.62,
          "monthlyKwh": 498.65,
          "variabilityKwh": 87.05
        },
        {
          "month": 12,
          "averageDailyKwh": 13.43,
          "monthlyKwh": 416.27,
          "variabilityKwh": 97.69
        }
      ]
    },
    {
      "city_id": "bordeaux",
      "city": "Bordeaux",
      "latitude": 44.8412,
      "longitude": -0.5805,
      "forecast": {
        "cityId": "bordeaux",
        "name": "Bordeaux",
        "lat": 44.8412,
        "lon": -0.5805,
        "timezone": "Europe/Paris",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 41.5,
        "lowKwh": 28.1,
        "highKwh": 53.2,
        "bestWindowStart": "2026-08-05T14:00:00+02:00",
        "bestWindowEnd": "2026-08-05T18:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:41.940357Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 12771.15,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 19.9,
          "monthlyKwh": 616.79,
          "variabilityKwh": 99.8
        },
        {
          "month": 2,
          "averageDailyKwh": 29.72,
          "monthlyKwh": 832.26,
          "variabilityKwh": 137.1
        },
        {
          "month": 3,
          "averageDailyKwh": 35.65,
          "monthlyKwh": 1105.13,
          "variabilityKwh": 150.78
        },
        {
          "month": 4,
          "averageDailyKwh": 41.31,
          "monthlyKwh": 1239.33,
          "variabilityKwh": 159.8
        },
        {
          "month": 5,
          "averageDailyKwh": 42.71,
          "monthlyKwh": 1323.86,
          "variabilityKwh": 143.38
        },
        {
          "month": 6,
          "averageDailyKwh": 43.99,
          "monthlyKwh": 1319.65,
          "variabilityKwh": 109.38
        },
        {
          "month": 7,
          "averageDailyKwh": 45.02,
          "monthlyKwh": 1395.61,
          "variabilityKwh": 126.83
        },
        {
          "month": 8,
          "averageDailyKwh": 44.38,
          "monthlyKwh": 1375.71,
          "variabilityKwh": 82.96
        },
        {
          "month": 9,
          "averageDailyKwh": 41.88,
          "monthlyKwh": 1256.47,
          "variabilityKwh": 97.03
        },
        {
          "month": 10,
          "averageDailyKwh": 32.03,
          "monthlyKwh": 993.05,
          "variabilityKwh": 110.08
        },
        {
          "month": 11,
          "averageDailyKwh": 23.6,
          "monthlyKwh": 708.11,
          "variabilityKwh": 133.71
        },
        {
          "month": 12,
          "averageDailyKwh": 19.52,
          "monthlyKwh": 605.19,
          "variabilityKwh": 113.39
        }
      ]
    },
    {
      "city_id": "lille",
      "city": "Lille",
      "latitude": 50.6339,
      "longitude": 3.0551,
      "forecast": {
        "cityId": "lille",
        "name": "Lille",
        "lat": 50.6339,
        "lon": 3.0551,
        "timezone": "Europe/Paris",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 35.5,
        "lowKwh": 26,
        "highKwh": 43.2,
        "bestWindowStart": "2026-08-05T13:00:00+02:00",
        "bestWindowEnd": "2026-08-05T17:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:41.972616Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 10710.15,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 12.58,
          "monthlyKwh": 389.96,
          "variabilityKwh": 69.46
        },
        {
          "month": 2,
          "averageDailyKwh": 20.46,
          "monthlyKwh": 572.94,
          "variabilityKwh": 168.08
        },
        {
          "month": 3,
          "averageDailyKwh": 30.74,
          "monthlyKwh": 952.88,
          "variabilityKwh": 179.62
        },
        {
          "month": 4,
          "averageDailyKwh": 41.2,
          "monthlyKwh": 1236.01,
          "variabilityKwh": 173.88
        },
        {
          "month": 5,
          "averageDailyKwh": 41.03,
          "monthlyKwh": 1271.97,
          "variabilityKwh": 161.96
        },
        {
          "month": 6,
          "averageDailyKwh": 42.58,
          "monthlyKwh": 1277.35,
          "variabilityKwh": 165.82
        },
        {
          "month": 7,
          "averageDailyKwh": 40.94,
          "monthlyKwh": 1269.18,
          "variabilityKwh": 147.5
        },
        {
          "month": 8,
          "averageDailyKwh": 37.14,
          "monthlyKwh": 1151.48,
          "variabilityKwh": 125.11
        },
        {
          "month": 9,
          "averageDailyKwh": 34.26,
          "monthlyKwh": 1027.72,
          "variabilityKwh": 66.78
        },
        {
          "month": 10,
          "averageDailyKwh": 24.23,
          "monthlyKwh": 751.07,
          "variabilityKwh": 82.7
        },
        {
          "month": 11,
          "averageDailyKwh": 15.23,
          "monthlyKwh": 457.03,
          "variabilityKwh": 74.82
        },
        {
          "month": 12,
          "averageDailyKwh": 11.37,
          "monthlyKwh": 352.56,
          "variabilityKwh": 89.7
        }
      ]
    },
    {
      "city_id": "montpellier",
      "city": "Montpellier",
      "latitude": 43.6109,
      "longitude": 3.8763,
      "forecast": {
        "cityId": "montpellier",
        "name": "Montpellier",
        "lat": 43.6109,
        "lon": 3.8763,
        "timezone": "Europe/Paris",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 54.2,
        "lowKwh": 47.7,
        "highKwh": 58.2,
        "bestWindowStart": "2026-08-05T12:00:00+02:00",
        "bestWindowEnd": "2026-08-05T16:00:00+02:00",
        "confidence": "high",
        "fetchedAt": "2026-08-04T18:53:47.675079Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 15095.32,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 29.91,
          "monthlyKwh": 927.27,
          "variabilityKwh": 158.51
        },
        {
          "month": 2,
          "averageDailyKwh": 37.34,
          "monthlyKwh": 1045.63,
          "variabilityKwh": 162.11
        },
        {
          "month": 3,
          "averageDailyKwh": 42.67,
          "monthlyKwh": 1322.62,
          "variabilityKwh": 144.19
        },
        {
          "month": 4,
          "averageDailyKwh": 46.4,
          "monthlyKwh": 1391.94,
          "variabilityKwh": 128.95
        },
        {
          "month": 5,
          "averageDailyKwh": 48.86,
          "monthlyKwh": 1514.68,
          "variabilityKwh": 112.92
        },
        {
          "month": 6,
          "averageDailyKwh": 51.39,
          "monthlyKwh": 1541.78,
          "variabilityKwh": 81.48
        },
        {
          "month": 7,
          "averageDailyKwh": 53.13,
          "monthlyKwh": 1647.07,
          "variabilityKwh": 59.69
        },
        {
          "month": 8,
          "averageDailyKwh": 50.69,
          "monthlyKwh": 1571.32,
          "variabilityKwh": 48.39
        },
        {
          "month": 9,
          "averageDailyKwh": 45.03,
          "monthlyKwh": 1350.83,
          "variabilityKwh": 93.7
        },
        {
          "month": 10,
          "averageDailyKwh": 33.87,
          "monthlyKwh": 1050.11,
          "variabilityKwh": 142.21
        },
        {
          "month": 11,
          "averageDailyKwh": 29.55,
          "monthlyKwh": 886.43,
          "variabilityKwh": 134.16
        },
        {
          "month": 12,
          "averageDailyKwh": 27.28,
          "monthlyKwh": 845.63,
          "variabilityKwh": 117.47
        }
      ]
    },
    {
      "city_id": "nantes",
      "city": "Nantes",
      "latitude": 47.2172,
      "longitude": -1.5534,
      "forecast": {
        "cityId": "nantes",
        "name": "Nantes",
        "lat": 47.2172,
        "lon": -1.5534,
        "timezone": "Europe/Paris",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 50.3,
        "lowKwh": 38,
        "highKwh": 58.4,
        "bestWindowStart": "2026-08-05T13:00:00+02:00",
        "bestWindowEnd": "2026-08-05T17:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:41.900627Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 12213.07,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 16.74,
          "monthlyKwh": 518.89,
          "variabilityKwh": 77.1
        },
        {
          "month": 2,
          "averageDailyKwh": 26.71,
          "monthlyKwh": 747.91,
          "variabilityKwh": 122.7
        },
        {
          "month": 3,
          "averageDailyKwh": 34.26,
          "monthlyKwh": 1062.14,
          "variabilityKwh": 128.26
        },
        {
          "month": 4,
          "averageDailyKwh": 42.74,
          "monthlyKwh": 1282.19,
          "variabilityKwh": 172.9
        },
        {
          "month": 5,
          "averageDailyKwh": 43,
          "monthlyKwh": 1333.11,
          "variabilityKwh": 150.69
        },
        {
          "month": 6,
          "averageDailyKwh": 43.89,
          "monthlyKwh": 1316.71,
          "variabilityKwh": 148.87
        },
        {
          "month": 7,
          "averageDailyKwh": 44.38,
          "monthlyKwh": 1375.81,
          "variabilityKwh": 120.67
        },
        {
          "month": 8,
          "averageDailyKwh": 43.09,
          "monthlyKwh": 1335.87,
          "variabilityKwh": 112.67
        },
        {
          "month": 9,
          "averageDailyKwh": 39.77,
          "monthlyKwh": 1193,
          "variabilityKwh": 106.61
        },
        {
          "month": 10,
          "averageDailyKwh": 27.9,
          "monthlyKwh": 864.89,
          "variabilityKwh": 95.94
        },
        {
          "month": 11,
          "averageDailyKwh": 21.68,
          "monthlyKwh": 650.34,
          "variabilityKwh": 107.68
        },
        {
          "month": 12,
          "averageDailyKwh": 17.17,
          "monthlyKwh": 532.23,
          "variabilityKwh": 87.98
        }
      ]
    },
    {
      "city_id": "nice",
      "city": "Nice",
      "latitude": 43.7031,
      "longitude": 7.2661,
      "forecast": {
        "cityId": "nice",
        "name": "Nice",
        "lat": 43.7031,
        "lon": 7.2661,
        "timezone": "Europe/Paris",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 54.1,
        "lowKwh": 47.6,
        "highKwh": 58.4,
        "bestWindowStart": "2026-08-05T12:00:00+02:00",
        "bestWindowEnd": "2026-08-05T16:00:00+02:00",
        "confidence": "high",
        "fetchedAt": "2026-08-04T18:53:41.836045Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 15329.74,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 29.19,
          "monthlyKwh": 905.02,
          "variabilityKwh": 120.04
        },
        {
          "month": 2,
          "averageDailyKwh": 35.39,
          "monthlyKwh": 991,
          "variabilityKwh": 149.19
        },
        {
          "month": 3,
          "averageDailyKwh": 42.7,
          "monthlyKwh": 1323.75,
          "variabilityKwh": 153.65
        },
        {
          "month": 4,
          "averageDailyKwh": 47.04,
          "monthlyKwh": 1411.26,
          "variabilityKwh": 122.21
        },
        {
          "month": 5,
          "averageDailyKwh": 49.26,
          "monthlyKwh": 1526.95,
          "variabilityKwh": 113.11
        },
        {
          "month": 6,
          "averageDailyKwh": 52.37,
          "monthlyKwh": 1571.15,
          "variabilityKwh": 62.36
        },
        {
          "month": 7,
          "averageDailyKwh": 54.5,
          "monthlyKwh": 1689.55,
          "variabilityKwh": 59.99
        },
        {
          "month": 8,
          "averageDailyKwh": 52.57,
          "monthlyKwh": 1629.78,
          "variabilityKwh": 45.73
        },
        {
          "month": 9,
          "averageDailyKwh": 45.67,
          "monthlyKwh": 1370.2,
          "variabilityKwh": 78.26
        },
        {
          "month": 10,
          "averageDailyKwh": 37.26,
          "monthlyKwh": 1155.03,
          "variabilityKwh": 102.36
        },
        {
          "month": 11,
          "averageDailyKwh": 29.78,
          "monthlyKwh": 893.33,
          "variabilityKwh": 111.6
        },
        {
          "month": 12,
          "averageDailyKwh": 27.83,
          "monthlyKwh": 862.71,
          "variabilityKwh": 122.47
        }
      ]
    },
    {
      "city_id": "strasbourg",
      "city": "Strasbourg",
      "latitude": 48.5839,
      "longitude": 7.7455,
      "forecast": {
        "cityId": "strasbourg",
        "name": "Strasbourg",
        "lat": 48.5839,
        "lon": 7.7455,
        "timezone": "Europe/Paris",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 39.2,
        "lowKwh": 27.8,
        "highKwh": 48.8,
        "bestWindowStart": "2026-08-05T12:00:00+02:00",
        "bestWindowEnd": "2026-08-05T16:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:41.867316Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 11371.5,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 14.36,
          "monthlyKwh": 445.31,
          "variabilityKwh": 80.59
        },
        {
          "month": 2,
          "averageDailyKwh": 23.01,
          "monthlyKwh": 644.16,
          "variabilityKwh": 155.54
        },
        {
          "month": 3,
          "averageDailyKwh": 33.79,
          "monthlyKwh": 1047.41,
          "variabilityKwh": 192.23
        },
        {
          "month": 4,
          "averageDailyKwh": 41.4,
          "monthlyKwh": 1242.05,
          "variabilityKwh": 217.1
        },
        {
          "month": 5,
          "averageDailyKwh": 41.61,
          "monthlyKwh": 1290.02,
          "variabilityKwh": 184.88
        },
        {
          "month": 6,
          "averageDailyKwh": 44.89,
          "monthlyKwh": 1346.7,
          "variabilityKwh": 147.91
        },
        {
          "month": 7,
          "averageDailyKwh": 43.39,
          "monthlyKwh": 1345.14,
          "variabilityKwh": 158.21
        },
        {
          "month": 8,
          "averageDailyKwh": 40.37,
          "monthlyKwh": 1251.54,
          "variabilityKwh": 120.43
        },
        {
          "month": 9,
          "averageDailyKwh": 37.99,
          "monthlyKwh": 1139.83,
          "variabilityKwh": 102.85
        },
        {
          "month": 10,
          "averageDailyKwh": 25.1,
          "monthlyKwh": 778.05,
          "variabilityKwh": 98.92
        },
        {
          "month": 11,
          "averageDailyKwh": 15.5,
          "monthlyKwh": 465.02,
          "variabilityKwh": 72.85
        },
        {
          "month": 12,
          "averageDailyKwh": 12.14,
          "monthlyKwh": 376.27,
          "variabilityKwh": 99.67
        }
      ]
    },
    {
      "city_id": "toulouse",
      "city": "Toulouse",
      "latitude": 43.6043,
      "longitude": 1.4437,
      "forecast": {
        "cityId": "toulouse",
        "name": "Toulouse",
        "lat": 43.6043,
        "lon": 1.4437,
        "timezone": "Europe/Paris",
        "featured": false,
        "targetDate": "2026-08-05",
        "expectedKwh": 43.5,
        "lowKwh": 31.2,
        "highKwh": 54.3,
        "bestWindowStart": "2026-08-05T12:00:00+02:00",
        "bestWindowEnd": "2026-08-05T16:00:00+02:00",
        "confidence": "medium",
        "fetchedAt": "2026-08-04T18:53:41.804780Z",
        "freshness": "fresh",
        "stale": false
      },
      "typical_annual_kwh": 13152.36,
      "typical_monthly": [
        {
          "month": 1,
          "averageDailyKwh": 21.38,
          "monthlyKwh": 662.83,
          "variabilityKwh": 96.81
        },
        {
          "month": 2,
          "averageDailyKwh": 31.25,
          "monthlyKwh": 874.91,
          "variabilityKwh": 137.78
        },
        {
          "month": 3,
          "averageDailyKwh": 37.33,
          "monthlyKwh": 1157.28,
          "variabilityKwh": 129.87
        },
        {
          "month": 4,
          "averageDailyKwh": 42.26,
          "monthlyKwh": 1267.94,
          "variabilityKwh": 166.77
        },
        {
          "month": 5,
          "averageDailyKwh": 41.83,
          "monthlyKwh": 1296.85,
          "variabilityKwh": 128.28
        },
        {
          "month": 6,
          "averageDailyKwh": 44.2,
          "monthlyKwh": 1326.03,
          "variabilityKwh": 104.72
        },
        {
          "month": 7,
          "averageDailyKwh": 45.55,
          "monthlyKwh": 1412.12,
          "variabilityKwh": 109.87
        },
        {
          "month": 8,
          "averageDailyKwh": 45.39,
          "monthlyKwh": 1406.97,
          "variabilityKwh": 64.17
        },
        {
          "month": 9,
          "averageDailyKwh": 42.31,
          "monthlyKwh": 1269.19,
          "variabilityKwh": 93.17
        },
        {
          "month": 10,
          "averageDailyKwh": 34.19,
          "monthlyKwh": 1059.87,
          "variabilityKwh": 113.76
        },
        {
          "month": 11,
          "averageDailyKwh": 24.6,
          "monthlyKwh": 738.05,
          "variabilityKwh": 131.24
        },
        {
          "month": 12,
          "averageDailyKwh": 21.95,
          "monthlyKwh": 680.31,
          "variabilityKwh": 124.22
        }
      ]
    }
  ],
  "sources": {
    "tomorrow": {
      "weather": {
        "source_id": "OPEN_METEO",
        "name": "Open-Meteo weather forecast",
        "public_display_allowed": true,
        "requires_commercial_license": true,
        "terms_url": "https://open-meteo.com/en/terms",
        "pricing_url": "https://open-meteo.com/en/pricing"
      },
      "model": {
        "source_id": "GRIDPASSPORT_PV_PUBLIC_V1",
        "name": "GridPassport public PV forecast model",
        "description": "Weather-based physical PV estimate with public-safe inputs."
      },
      "attribution": {
        "text": "Weather forecast by Open-Meteo, PV estimate by GridPassport.",
        "transformation_notes": "GridPassport projects irradiance onto the configured PV array and applies public lead-magnet loss assumptions."
      }
    },
    "typical_year": {
      "name": "European Commission Joint Research Centre PVGIS 5.3",
      "url": "https://joint-research-centre.ec.europa.eu/photovoltaic-geographical-information-system-pvgis_en",
      "api": "https://re.jrc.ec.europa.eu/api/v5_3/PVcalc",
      "method": "Monthly average fixed-system output calculated from a multi-year solar radiation and climate series."
    }
  },
  "methodology_url": "https://gridpassport.com/solar-forecast/methodology/"
}
