🌤 WUnderground data uploader

Ive tried a few variation of this blueprint including the original and the most recent by @dziban303 but i keep getting an authentication error. Ive tried an API key, my account password and the upload key but i keep getting a 401 error. Any tips or ideas?

I may be way off base here, but it looks like the URL has changed to https://weatherstation.wunderground.com/weatherstation/updateweatherstation.php?

https://support.weather.com/s/article/PWS-Upload-Protocol?language=en_US

Edit: I just forked it and updated the URL GitHub - cladkins/pwsweatherupload-cla: Upload weather data from Home Assistant to a PWS Weather station

Good you are sorted but are you sure you were using the correct Blueprint to start with

the URL you reference as changed has been in this Blueprint from Dirk since day one…

I didnt even see that Blueprint. Thank you.

1 Like

Is this stil working? I added the shell command to my configuration.yaml but I receive the following error when I look in the tracing: Fout: [Errno 2] No such file or directory: '‘curl' . Running HAOS latest version. When SSH to the HA I can use the command curl

working fine for me anyway......

based on your error possibly an issue with the yaml where around how you have the shell command setup so might be worth sharing that so it can be checked.....


# Loads default set of integrations. Do not remove.
default_config:

shell_command:
  curl_get: ‘curl -X GET {{ url }}’

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 10.0.0.200      # Add the IP address of the proxy server
    - 172.30.33.0/24  # You may also provide the subnet mask
    
sensor:
  - platform: rest
    resource: https://api.ipgeolocation.io/astronomy?lat=<numbers>&long=<numbers>&apiKey=<numbers>
    name: ip_geo_location
    scan_interval: 300
    value_template: "OK"
    json_attributes:
      - moonrise
      - moonset
      - moon_altitude

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml

Just changed the sensor with because of sensitive info, but this part is working fine

think your quote symbol might be off in the yaml....try this

curl_get: 'curl -X GET {{ url }}'

(you have curly quotes, I have straight quotes - am sure there is a better name for all this but hopefully you get what I mean

update....so after a quick search, apparently this ` is a backtick and this ' is an apostrophe......use the backtick)

How easy can it be. I copied the code directly from Home Assistant Blueprint page. It looks like something goes wrong then. I now copied your code and it is working fine. Many thanks!

1 Like

Glad everything works now.
Just checked, but this page and the Github page doesn't have a wrong code tag for the curl_get command. Where did you copy it from?

I copied it from the page that is shown when starting to fill in the automation. It looks like my browser did some translation from this code when copy/pasting the code into my yaml file. I just checked the code again by creating a new automation, but also there the code is shown fine. So I have no idea why this changed. Working on a Macbook using Safari so normally this should have worked fine

Hi. Thanks for this fantastic blueprint; it's allowed me to upload my data from a Tuya station that didn't have direct integration. Checking neighboring stations, I noticed that some provided information about the software used, so after some research, I found a "softwaretype" parameter in the payload that enables this. I modified my copy to include it, and it's working. If you'd like, you could include it in your master blueprint.

I have started to get this error, since updating to 2026.8.3, everything had been working fine for years, not sure what it is referring to. I tried to import the blueprint again and set it up, both with yaml and the visual editor, and will not save with the following error message, any ideas where to look?
Message malformed: Entity is neither a valid entity ID nor a valid UUID for dictionary value
@ data[‘entity_id’]