API Pricing

Please email us at contact@purpleair.com and we can provide further assistance with applying free points for your sensor(s).

1 Like

What a scam. This device is on our network. If we had local access, we wouldnā€™t need to pay (or even get ā€œfreeā€ points) to access our own data. I think its fine to charge for commercial use, but force us to go out our network, through your servers then back again and tell us that we need to chip in for the infrastructure costs is robbery.

1 Like

It is available on your network, if you load up the IP, you will get real-time and average readings, and you can pull the data from the http://ipaddress/json. They also have a tool here on the forums to pull the data from the SD card.

I think there are many valid criticisms, I just think yours is not. I agree it should be easier, there should be a mobile app and/or a significantly better webui with better ways to work with data from your own node, but there is no ā€˜scamā€™, they do not promise to give anything they are not giving.

3 Likes

Thanks for the suggestion of using the IP address and json. It works great!

3 Likes

Garth, we donā€™t want you to have to pay for the data from your own sensor. Please send us an email with the order number(s) of sensor(s) you have purchased, and weā€™ll apply free points to your account. Weā€™ll also need to know the email or an API key on the account.

Additionally, @Bugs is correct that you can access the data locally through the IP of the sensor. Outside of that, you can use the PurpleAir Utility to get live data, or you can use an SD card if the sensor has SD logging capabilities.

2 Likes

We intend to create an automated way to get your own sensor data for free, which should help with ease. Additionally, we have a new UI for the API Dashboard forthcoming.

An app is something we want to build as well, but this would likely be used primarily for basic user interfacing with owned sensor(s), such as connecting to WiFi, registering, and viewing current/recent sensor data (similar to viewing it on the map, but in a different format). Weā€™ll be posting a poll soon to get input from the community on desired features in an app.

1 Like

Thatā€™s great news.
One thing i would share is to check out the way Weatherflow has their app setup for the Tempest weather stations. Iā€™m pretty sure itā€™s some sort of PWA available on web, iOS and Android, but Iā€™m not a developer so i donā€™t know how difficult it would be.

Their setup is pretty similar, all the weather stations are available on Tempest Station Map just like the purpleAir sensor. It would be nice to have something similar in mobile app and i thought i would share that for whatever its worth :slight_smile:

1 Like

New guy - Clay Jackson, Amateur Radio N7QNM, here. ā€œInterestingā€ thread - here are some thoughts:
1 - There Ainā€™t No Such Thing As a Free Lunch - somoneā€™s gotta pay for the servers and connectivity that weā€™re all using (including this forum). Iā€™d rather see some sort of ā€œcommericalā€ operation like PurpleAir doing this than some individual or even group doing it ā€œout of the goodness of their heartā€. That way, thereā€™s at least a chance that what weā€™re doing will last longer than one person or group.
2 - Never attribute to malice what can be explained by stupidity or ignorance.

While they may have gotten the ā€œhorse before the cartā€ by not reassuring users/purchasers/data providers FIRST, they have REPEATEDLY said ā€œYou wonā€™t have to pay for your dataā€. So, letā€™s all follow the Community Guidelines and cut 'em a break.

I moved from a ā€œhome brewā€ PMS5003 setup, to SwitchDoc Labs (until they decided to call the ā€œhobbiest marketā€ quits) to PurpleAir just for the stabilty and longevity; and am really glad theyā€™re here!

I use weewx as a reporting mechanism (Prosser, Washington Current Weather Conditions) - havenā€™t integrated PurpleAir - thatā€™s tomorrow niteā€™s project :-).

Looking forward to a long and mutually beneficial relationship

3 Likes

thanks for sharing, i forgot about that project, but its not back to the top of my list :slight_smile:

Last year, I installed 10 sensors as a gift to our community to provide early detection of wild fire. I paid to have Apps created for iOS and Android to monitor those sensors. I discussed this with PurpleAir at the time.

Will I be able to access this data for free for my sensors, and if so, how? If not, the Apps will shut down because the cost to access data is unknowable (depends how many sensor a customer monitors).

2 Likes

Just wanted to say (as a web dev who also manages servers), good luck and I hope yā€™all can continue to keep the public web service afloat for folks. I know what itā€™s like having to maintain servers. FWIW: Itā€™s not just about bandwidth at all, thereā€™s so much more to it, including performance and security just to name a few.

Iā€™m thankful these devices can still hum along and be queried locally via the /json route on the LAN-based HTTP endpoint. Worst case (if purpleair.com itself ever went under) is youā€™d have to setup something that polls this locally on your network and pushes it out to your own servers somewhere. Obviously not practical for most folks. Would be awesome if we could tweak the software on these devices ourselves to adjust what they ping and, importantly, their data retention (e.g. ability to retain full 10min and up to 1 week locally, even in ephemeral memory) and just push the latest stats to server that just hosts the latest numbers.

Anyway, the reason why I say all this: My use case right now is that since the widget is broken for iPad, which is where I primarily use it (the bug is also visible on new versions of Safari on desktop). I started to investigate this since I was curious about ways I could maybe build my own widget so I could still look at the main 10min and share with family if it gets smoky out.

Itā€™s been a while since PurpleAir mentioned they were working on their ToS. I wonder if thereā€™s any update.

One thing that I keep wondering about is ability to host PA data mirrors. It seems on the surface that the total size of all PA data might be quite manageable, with a few assumptions (rough estimates):

  • 100,000 : sensors
  • 24 * 30 : measurements per day (every 2 minutes)
  • 365 * 5 : 5 years of data
  • 50 : bytes per measurement (thatā€™s quite generous IMO, assuming time series data and compression)

That gives me 100000*24*30*365*5*50 / (10^12) = 6.57 TB - completely manageable order of magnitude.

But from what I see the PA company tries to monetize the data more and more, so perhaps weā€™ll never see this allowed.

I think there are at least 2 separate things to consider. Thereā€™s storing the data and and 6.57 TB might seem manageable now but that will continue to grow. The other issue is providing a service to allow access to the data. That is not cheap as you have to maintain the equipment, OS patches, database/application software updates, etc. so a source of continuous income to pay for the service has to be in the business model otherwise it is not sustainable. Just look at what happened to many of the online services that provided free access, at some point they had to start charging or they shutdown.

Iā€™ve been operating a PWS since 2000 and used to upload my data to a bunch of websites. Looking at some old config files it looks like I used to upload to hamweather.net but I think that may have stopped when they sold out to another company and I never got around to trying to figure out how to upload to them. A couple of others have long since shutdown.

Currently I am uploading to WUnderground and CWOP which forwards to MesoWest which is operated by U of Utah and NWS which of course is run by the Feds so paid by tax payers. Wunderground is now run by The Weather Company and they provide a free API key to providers. Access used to be free as long as you uploaded data but theyā€™ve gone through a few iterations of their API and they now put a limit on the number of calls but looking at their website it looks like Iā€™ve been averaging just under 1200 calls a day for my personal IoT devices (at least 6 or 7 I think).

Iā€™m using a very old program to collect and upload my weather data but it is hard to maintain so I have been looking off and on for a replacement. Some of my IoT devices are driven by a computer at home where I could use the local connection to my PurpleAir device but another set of IoT devices are run in the cloud so I would need to use an API key but I figured I would quickly exhaust the initial free number calls Iā€™ve been given before I got something working much less stable to decide if Iā€™d want to keep paying for it.

If PurpleAir could provide a reasonable number of free API points every month then I would probably use their data in my personal IoT devices rather than relying solely on the Wunderground feed. At this point if the device was in need of repair or replacement it would not be high on the priority list as I have no real vested interest in using it other than the novelty of it.

QQ for you @Andrew_PurpleAir: Would it be possible to augment the system (under the hood) to instead either:

  1. Allow a particular account unlimited access to sensors they have proven they own. NOTE: ā€œUnlimitedā€ in the current context of a singular/canonical point system. This is why Iā€™d also recommend insteadā€¦
  2. Allow a monthly (or some other time frame) quota system and instead allow for free ā€œpointsā€ each month (or day, week, year, etc)?

The reason why I like those ideas more is because, while I donā€™t expect Iā€™d ever exhaust my quota with a single sensor, Iā€™d prefer to not have a clock that I could setup and completely forget about that is doomed to eventually reach zero some day. Also, I feel this rolling monthly (or whatever time period) quota might align better with server usage and maintenance costs, particularly as you could then charge on that recurring basis as well for those who go beyond the free tier.

This is pretty industry standard anyway, but I figured Iā€™d throw that idea out there since folks might prefer that, maybe. :sweat_smile:

Edit: p.s. If you reply, please @ me since I otherwise wonā€™t be notified (I know itā€™s a busy thread).

2 Likes

this is what i was thinking as well.
something where, i can earn points automatically each month as my sensor stays online. If i stop sending data i stop getting points, but as long as my sensor is sending data, i earn those points that i can use to download my data without worrying about hitting that limit at some unpredictable point in the future.

4 Likes

Yes, @patricknelson, the free points allotted to sensor owners are a temporary measure while we work on an automated system. More information about what that system will look like is forthcoming.

1 Like

Asking as a curious potential future owner of a PurpleAir sensorā€¦When I first started reading about the API pricing, I was immediately deterred from considering PurpleAir as an option. I currently use AirThings for indoor (I didnā€™t know about PurpleAir when I bought it :grimacing:), but now I want something for outdoor.

However, my next google search was to see if Wifi connected PurpleAir sensors have a local API endpoint, and it seems like they do, but it doesnā€™t seem to be well documented, or maybe not totally complete? I see posts on other sites about some sort of /json local API endpoint?

If there is a local API endpoint, I feel like thatā€™s the answer to a lot of these complaints, right?

I use a program called Home Assistant for my smart home. Itā€™s free/open source and you can run it locally. It has local web/API access, which is great. But if you want remote accessā€¦then you need to pay for their service which gives you secure remote access OR you can try to set up your own remote access (VPN, tailscale, reverse proxy, etc).

So my question isā€¦isnā€™t that similar with what PurpleAir is doing? As long as they provide a local API, then I donā€™t totally disagree with having to pay for their API service. If I really donā€™t want to use it, and I absolutely need remote access, I can figure out my own solution.

That said, if PurpleAir is benefiting from my data and not just providing a remote access API and I have the option to opt-in to sharing my data for them to use / sell, then yeah, I think it would be nice to get a kickback in the form of free API points to use against my own sensors (or just build the API to provide access to your own sensors for free, however hey want to implement it).

1 Like

iā€™m an app dev that uses purple air in my app, so iā€™m happy to pay, but wow is this a confusing as heck pricing scheme. why are you even making up your own currency called ā€œpointsā€? why canā€™t you just say each api call costs .001 cents or whatever. why obfuscate it and make it hard for everyone to comprehend? that just seems shady af

Yes, there is a local endpoint that can be used to retrieve the same data that is being passed to the PurpleAir cloud.

However, I should point out that you can retrieve data from your own sensor via the PurpleAir API. Weā€™re working on an automated system for this. For now, you can simply send us an email at contact@purpleair.com, and we will grant free points on your account.

Points represent processing power and bandwidth required to serve the data. This system also makes it easier to offer bulk pricing, which is evident in the fact that larger purchases offer more points per dollar.

A couple of tools that should be helpful in better calculating the costs of a data request can be found in two places: the Develop portal and the Data Download Tool. I hope they will help to simplify things a bit:

  1. On the Develop portal, selecting ā€œTopUp Accountā€ will take you to a pricing calculator where you can check the number of points youā€™ll receive in real-time by inserting different purchase amounts.
  2. On the download tool, you can set up a data request on the ā€œDownloadā€ tab, and it will display a points estimate at the bottom of the window. You can see an even more detailed version of this points breakdown by going to the ā€œSettingsā€ tab and checking the box next to the option ā€œShow Detailed Points Cost.ā€

We opted for a billing system that reflects charges to our users in the same way that we are charged for serving the data. We felt that this was the most transparent way to do it.