I understand that -999 signifies a bad value, however I get bad values for precipitation at every location using the API, whether inside or outside the US. Am I doing something wrong, or can the API simply not provide precipitation values?
Not all stations report precip. If you list a couple of the URLs you're hitting it can be double checked. The other way to check is to find that same location/history on wunderground.com and see if precip is recorded there.
After further testing it seems percipitation data is not available outside of the US. I confirmed by hovering over the precipitation field on the main page, and noting 'undefined' reported as the time. I'll have to make do. Thanks.