Hi Carlo,

I have no doubt that it will stop working again. :\  At which point, you can try the test code.

As mine does not work, I will see what happens if I can drop-in the Xweather API call. It would be ideal if the JSON returned can be parsed by the code without any changes.

Cheers!

---
pablo


On 2025-09-24 15:52, carlo74 wrote:
Hi,
now it's OK, it works again ... whattt!?!
Schermata del 2025-09-24 21-46-54.png

 1. *This is the result of first method:* {
      "success": true,
      "error": null,
      "response": {
        "id": "LIRZ",
        "dataSource": "METAR_NOAA",
        "loc": {
          "long": 12.5,
          "lat": 43.1
        },
        "place": {
          "name": "perugia",
          "city": "perugia",
          "state": "",
          "country": "it"
        },
        "profile": {
          "tz": "Europe/Rome",
          "tzname": "CEST",
          "tzoffset": 7200,
          "isDST": true,
          "elevM": 205,
          "elevFT": 673
        },
        "obTimestamp": 1758741600,
        "obDateTime": "2025-09-24T21:20:00+02:00",
        "ob": {
          "type": "station",
          "timestamp": 1758741600,
          "dateTimeISO": "2025-09-24T21:20:00+02:00",
          "recTimestamp": 1758742093,
          "recDateTimeISO": "2025-09-24T21:28:13+02:00",
          "tempC": 17,
          "tempF": 63,
          "dewpointC": 14,
          "dewpointF": 57,
          "humidity": 82,
          "pressureMB": 1015,
          "pressureIN": 29.96,
          "spressureMB": 990,
          "spressureIN": 29.25,
          "altimeterMB": 1015,
          "altimeterIN": 29.97,
          "windKTS": 3,
          "windKPH": 6,
          "windMPH": 3,
          "windMPS": 1.54,
          "windSpeedKTS": 3,
          "windSpeedKPH": 6,
          "windSpeedMPH": 3,
          "windSpeedMPS": 1.54,
          "windDirDEG": 210,
          "windDir": "SSW",
          "windGustKTS": null,
          "windGustKPH": null,
          "windGustMPH": null,
          "windGustMPS": null,
          "flightRule": "VFR",
          "visibilityKM": 9.656064,
          "visibilityMI": 6,
          "weather": "Mostly Cloudy",
          "weatherShort": "Mostly Cloudy",
          "weatherCoded": "::BK",
          "weatherPrimary": "Mostly Cloudy",
          "weatherPrimaryCoded": "::BK",
          "cloudsCoded": "BK",
          "icon": "mcloudyn.png",
          "heatindexC": 17.2,
          "heatindexF": 63,
          "windchillC": 17.2,
          "windchillF": 63,
          "feelslikeC": 17.2,
          "feelslikeF": 63,
          "isDay": false,
          "sunrise": 1758689985,
          "sunriseISO": "2025-09-24T06:59:45+02:00",
          "sunset": 1758733446,
          "sunsetISO": "2025-09-24T19:04:06+02:00",
          "snowDepthCM": null,
          "snowDepthIN": null,
          "precipMM": 0,
          "precipIN": 0,
          "solradWM2": 0,
          "solradMethod": "estimated",
          "ceilingFT": 5300,
          "ceilingM": 1615.44,
          "light": 0,
          "uvi": null,
          "QC": "O",
          "QCcode": 10,
          "trustFactor": 100,
          "sky": 81
        },
        "raw": "METAR METAR LIRZ 241920Z AUTO 21003KT 160V260 9999
    FEW041/// BKN053/// 17/14 Q1015",
        "relativeTo": {
          "lat": 43.1,
          "long": 12.5,
          "bearing": 180,
          "bearingENG": "S",
          "distanceKM": 0,
          "distanceMI": 0
        }
      }
    }
 2. *This is the second: *{
      "success": true,
      "error": null,
      "response": [
        {
          "loc": {
            "lat": 43.1,
            "long": 12.5
          },
          "place": {
            "name": "sant'egidio",
            "state": "tr",
            "country": "it"
          },
          "periods": [
            {
              "timestamp": 1758742800,
              "dateTimeISO": "2025-09-24T21:40:00+02:00",
              "tempC": 16.64,
              "tempF": 61.95,
              "feelslikeC": 16.64,
              "feelslikeF": 61.95,
              "wetBulbGlobeTempC": 15.24,
              "wetBulbGlobeTempF": 59.43,
              "dewpointC": 14.15,
              "dewpointF": 57.47,
              "humidity": 85,
              "pressureMB": 1015,
              "pressureIN": 29.97,
              "windDir": "W",
              "windDirDEG": 272,
              "windSpeedKTS": 2.53,
              "windSpeedKPH": 4.69,
              "windSpeedMPH": 2.92,
              "windSpeedMPS": 1.3,
              "windGustKTS": 10.69,
              "windGustKPH": 19.8,
              "windGustMPH": 12.3,
              "windGustMPS": 5.5,
              "precipMM": 0,
              "precipIN": 0,
              "precipRateMM": 0,
              "precipRateIN": 0,
              "snowCM": 0,
              "snowIN": 0,
              "snowRateCM": 0,
              "snowRateIN": 0,
              "snowDepthCM": 0,
              "snowDepthIN": 0,
              "pop": 0,
              "visibilityKM": 9.656,
              "visibilityMI": 6,
              "sky": 79,
              "cloudsCoded": "BK",
              "weather": "Mostly Cloudy",
              "weatherCoded": "::BK",
              "weatherPrimary": "Mostly Cloudy",
              "weatherPrimaryCoded": "::BK",
              "icon": "mcloudyn.png",
              "solradWM2": 0,
              "uvi": 0,
              "isDay": false,
              "spressureMB": 984.2,
              "spressureIN": 29.06,
              "altimeterMB": 1015,
              "altimeterIN": 29.97,
              "solrad": {
                "azimuthDEG": 298.8726,
                "zenithDEG": 118.1063,
                "ghiWM2": 0,
                "dniWM2": 0,
                "dhiWM2": 0,
                "version": "v2"
              }
            }
          ],
          "profile": {
            "tz": "Europe/Rome",
            "tzname": "CEST",
            "tzoffset": 7200,
            "isDST": true,
            "elevM": 262,
            "elevFT": 860
          }
        }
      ]
    }
 3. *This is the third:* {
      "success": true,
      "error": null,
      "response": [
        {
          "loc": {
            "lat": 43.1122,
            "long": 12.38878
          },
          "place": {
            "name": "perugia",
            "state": "tr",
            "country": "it"
          },
          "periods": [
            {
              "timestamp": 1758742800,
              "dateTimeISO": "2025-09-24T21:40:00+02:00",
              "tempC": 16.94,
              "tempF": 62.48,
              "feelslikeC": 16.94,
              "feelslikeF": 62.48,
              "wetBulbGlobeTempC": 14.75,
              "wetBulbGlobeTempF": 58.55,
              "dewpointC": 11.8,
              "dewpointF": 53.23,
              "humidity": 72,
              "pressureMB": 1015,
              "pressureIN": 29.97,
              "windDir": "WNW",
              "windDirDEG": 283,
              "windSpeedKTS": 1.65,
              "windSpeedKPH": 3.06,
              "windSpeedMPH": 1.9,
              "windSpeedMPS": 0.85,
              "windGustKTS": 6.62,
              "windGustKPH": 12.26,
              "windGustMPH": 7.62,
              "windGustMPS": 3.41,
              "precipMM": 0,
              "precipIN": 0,
              "precipRateMM": 0,
              "precipRateIN": 0,
              "snowCM": 0,
              "snowIN": 0,
              "snowRateCM": 0,
              "snowRateIN": 0,
              "snowDepthCM": 0,
              "snowDepthIN": 0,
              "pop": 0,
              "visibilityKM": 16,
              "visibilityMI": 9.942,
              "sky": 100,
              "cloudsCoded": "OV",
              "weather": "Light Rain",
              "weatherCoded": ":L:R",
              "weatherPrimary": "Light Rain",
              "weatherPrimaryCoded": ":L:R",
              "icon": "rainn.png",
              "solradWM2": 0,
              "uvi": 0,
              "isDay": false,
              "spressureMB": 958,
              "spressureIN": 28.29,
              "altimeterMB": 1015.7,
              "altimeterIN": 29.99,
              "solrad": {
                "azimuthDEG": 298.7815,
                "zenithDEG": 118.0293,
                "ghiWM2": 0,
                "dniWM2": 0,
                "dhiWM2": 0,
                "version": "v2"
              }
            }
          ],
          "profile": {
            "tz": "Europe/Rome",
            "tzname": "CEST",
            "tzoffset": 7200,
            "isDST": true,
            "elevM": 493,
            "elevFT": 1617
          }
        }
      ]
    }

Il giorno mercoledì 24 settembre 2025 alle 20:01:53 UTC+2 Pablo Sanchez ha scritto:

    Hi Carlos,

    Good to check.

    I have had some time to look a bit further and Christian is
    correct that aerisweather has been rebranded to Xweather.
    Aerisweather seems to be available for backward compatibility. I
    have no idea how long that will last.

    I looked at the Python code[1] that is making the API call[2] and
    I am able to replicate my problem via the command line. I used the
    Xweather API builder to create what I believe is the new version
    of the call. The call returns good data. I have not changed the
    Python code (yet).

    If you want to try a test, I have provided my bash-compatible code
    below. Using your JSON data, I set some of the variables to
    reflect your location. You will need to set CLIENT_ID and
    CLIENT_SECRET before you copy-and-paste the shell script to a
    terminal.

    I would also suggest that you install jq. It prettifies the JSON.

    Shell code:

    ################################ - variables, set CLIENT_ID and
    CLIENT_SECRET
    LOC="perugia,it"
    LIMIT="7"

    LAT="43.1"
    LONG="12.5"
    CLIENT_ID="FILL_ME_IN"
    CLIENT_SECRET="DO_NOT_SHARE_THIS"

    FILTER="allstations"
    FILTER="day"

    ################################ - curl call
    # The current method - no worky pour moi
    curl -s -H "Content-Type: application/json" -X GET
    
"https://api.aerisapi.com/observations/$LAT,$LONG?&format=json&filter=allstations&filter=metar&limit=1&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET";
    
<https://api.aerisapi.com/observations/$LAT,$LONG?&format=json&filter=allstations&filter=metar&limit=1&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET>
    |
      jq -C | less -R

    # New method, using long/lat - the closest city decided is zillions of
    # KMs from my location!
    curl -s -H "Content-Type: application/json" -X GET
    
"https://data.api.xweather.com/conditions/$LAT,$LONG?format=json&plimit=1&filter=1min&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET";
    
<https://data.api.xweather.com/conditions/$LAT,$LONG?format=json&plimit=1&filter=1min&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET>
    |
      jq -C | less -R

    # New method, using a location (city/province) - use the Xweather app
    # builder to decide, or be bold and try!
    curl -s -H "Content-Type: application/json" -X GET
    
"https://data.api.xweather.com/conditions/$LOC?format=json&plimit=1&filter=1min&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET";
    
<https://data.api.xweather.com/conditions/$LOC?format=json&plimit=1&filter=1min&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET>
    |
      jq -C | less -R

    *_References
    _*1 - .../weewx-data/bin/user/belchertown.py
    2 - line 1169 in version 1.4 of the new Belchertown code

    ---
    pablo


    On 2025-09-24 13:41, carlo74 wrote:
    I think it is a temporary outage of xweather.com
    <http://xweather.com> ... Perhaps ... I hope.
    Schermata del 2025-09-24 19-37-01.png
    Schermata del 2025-09-24 19-40-10.png
    Thanks
    Carlo
    Il giorno mercoledì 24 settembre 2025 alle 18:51:21 UTC+2 Pablo
    Sanchez ha scritto:

        Hi Carlo,

        While the error message suggests something else, have you
        confirmed that you have not exceeded your monthly allotment
        of forecast queries?

        Cheers!

        ---
        pablo


        On 2025-09-24 12:15, carlo74 wrote:
        Hi to everyone,
        two days ago, it work fine. Today, again, NO.

        In my [[https://meteopievedicampo.ddns.net/json/forecast.json]]:
        "error": {"code": "warn_no_data", "description": "Valid
        request. No results available based on your query parameters."}

        In
        
[[https://www.meteocivitavecchia.it/weewx/belchertown/json/forecast.json]]
        it works.

        So, it's not only in Italy.
        Bye
        Carlo


        Il giorno mercoledì 24 settembre 2025 alle 15:18:27 UTC+2
        Pablo Sanchez ha scritto:

            Thank you for the tip Christian. I also found this
            thread
            https://github.com/poblabs/weewx-belchertown/issues/393
            which provides some of the development background. It
            lead me to look at my forecast.json file (below) and I
            see the error: Valid request. No results available based
            on your query parameters

            An additional issue with my situation is that
            Aerisweather, using the provided long/lats, is picking a
            city that is too far from my location for an accurate
            forecast.

            I have some time today (I think!) to dink around and run
            some tests. I will post back with my findings.

            # jq . forecast.json
            {
               "timestamp": 1758718818,
               "current": [
                 {
                   "success": true,
                   "error": {
            "code": "warn_no_data", "description": "Valid request.
            No results available based on your query parameters."
                   },
                   "response": []
                 }
               ],
               "forecast_24hr": [
                 {
                   "success": true,
                   "error": null,
                   "response": [
                     {
                       "loc": {
                         "long": -75.854,
                         "lat": 46.242
                       },
                       "interval": "day",
                       "place": {
                         "name": "saint-raphael",
                         "state": "qc",
                         "country": "ca"
                       },
                       "periods": [
            ...

            ---
            pablo


            On 2025-09-20 15:12, Christian Pieper wrote:
            I'm having the same problem. Aerisweather is no longer
            available, and it redirects to https://www.xweather.com/
            I think there's a problem with the URL when retrieving
            the data.

            Francesco Fasano schrieb am Freitag, 19. September 2025
            um 15:21:27 UTC+2:

                Hi guys,
                It doesn't work for me either, as I think it does
                for all users in Italy.
                www.meteocivitavecchia.it
                <http://www.meteocivitavecchia.it> Dubbing on the
                site is active.

                Il giorno ven 19 set 2025 alle ore 14:59 Pablo
                Sanchez <[email protected]> ha scritto:

                    Hi Carlo,

                    This is interesting! it is not working for me
                    either but I just started using WeeWX so I have
                    baseline.

                    Debug does not provide any insights on my end.

                    ---
                    pablo


                    On 2025-09-18 15:28, carlo74 wrote:
                    Hi,
                    yes, in weewx.conf *forecast_aeris_use_metar = 1*
                    It works until few days ago (for 4 years!)
                    Thanks
                    Carlo

                    p.s.: sorry for the reply.
                    Il giorno giovedì 18 settembre 2025 alle
                    17:11:30 UTC+2 Pablo Sanchez ha scritto:

                        Hi, yes, in weewx.conf debug is set to 1.

                        Hi Carlos,

                        Not debug but *forecast_aeris_use_metar =
                        1* There is no icon if set to 0.

                        Also, please reply to the list, not
                        directly to me.

                        Thx!

                        ---
                        pablo


                        On 2025-09-17 16:36, carlo74 wrote:
                        Hi everyone,
                        today i receive this error in weewx logs
                        with Belchertown skin:
                        ---------------------------------
                        weewxd[5830]: INFO user.belchertown: No
                        cloud cover data from Aeris weather
                        .....
                        weewxd[5830]: message repeated 11 times:
                        [ INFO user.belchertown: No cloud cover
                        data from Aeris weather]
                        ---------------------------------
                        In my homepage
                        (meteopievedicampo.ddns.net
                        <http://meteopievedicampo.ddns.net>) i
                        don't see the weather icon and other data
                        such visibility and cloudiness.
                        In my aeris area
                        (https://account.xweather.com/data/member)
                        i see the number remain for today: 200
                        total access (5.000 for a day). Secret
                        and Id api are OK in weewx.conf.
                        I delete forecast.js and restart weewx,
                        but nothing.
                        What happens?
                        Thanks
                        Carlo
-- You received this message because you are
                        subscribed to the Google Groups
                        "weewx-user" group.
                        To unsubscribe from this group and stop
                        receiving emails from it, send an email
                        to [email protected].
                        To view this discussion visit
                        
https://groups.google.com/d/msgid/weewx-user/259b6e5a-a4f5-49aa-9889-930219e6847fn%40googlegroups.com
                        
<https://groups.google.com/d/msgid/weewx-user/259b6e5a-a4f5-49aa-9889-930219e6847fn%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- You received this message because you are
                    subscribed to the Google Groups "weewx-user"
                    group.
                    To unsubscribe from this group and stop
                    receiving emails from it, send an email to
                    [email protected].
                    To view this discussion visit
                    
https://groups.google.com/d/msgid/weewx-user/52e24e64-ad59-4896-878e-80977a74a3ccn%40googlegroups.com
                    
<https://groups.google.com/d/msgid/weewx-user/52e24e64-ad59-4896-878e-80977a74a3ccn%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- You received this message because you are
                    subscribed to the Google Groups "weewx-user" group.
                    To unsubscribe from this group and stop
                    receiving emails from it, send an email to
                    [email protected].

                    To view this discussion visit
                    
https://groups.google.com/d/msgid/weewx-user/c4bddadb-e388-42f7-9ba5-c2936c5ed778%40hillsandlakes.com
                    
<https://groups.google.com/d/msgid/weewx-user/c4bddadb-e388-42f7-9ba5-c2936c5ed778%40hillsandlakes.com?utm_medium=email&utm_source=footer>.

-- You received this message because you are subscribed to
            the Google Groups "weewx-user" group.
            To unsubscribe from this group and stop receiving
            emails from it, send an email to
            [email protected].
            To view this discussion visit
            
https://groups.google.com/d/msgid/weewx-user/eb5a79c6-1a42-45cd-a93f-ffa0f9e65df8n%40googlegroups.com
            
<https://groups.google.com/d/msgid/weewx-user/eb5a79c6-1a42-45cd-a93f-ffa0f9e65df8n%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- You received this message because you are subscribed to the
        Google Groups "weewx-user" group.
        To unsubscribe from this group and stop receiving emails
        from it, send an email to [email protected].
        To view this discussion visit
        
https://groups.google.com/d/msgid/weewx-user/6787023d-2ee3-4fce-8001-5af7af8ed2cdn%40googlegroups.com
        
<https://groups.google.com/d/msgid/weewx-user/6787023d-2ee3-4fce-8001-5af7af8ed2cdn%40googlegroups.com?utm_medium=email&utm_source=footer>.

-- You received this message because you are subscribed to the
    Google Groups "weewx-user" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected].
    To view this discussion visit
    
https://groups.google.com/d/msgid/weewx-user/0310da1f-a3ca-4b27-accd-0b37dde7da12n%40googlegroups.com
    
<https://groups.google.com/d/msgid/weewx-user/0310da1f-a3ca-4b27-accd-0b37dde7da12n%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/weewx-user/de5a28ea-8629-4870-982f-3c72efb9dad8n%40googlegroups.com <https://groups.google.com/d/msgid/weewx-user/de5a28ea-8629-4870-982f-3c72efb9dad8n%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/weewx-user/a84cba8e-f3c9-4d9c-9ba4-d8eb44733dea%40hillsandlakes.com.

Reply via email to