Phant (think elePHANT, I guess) “acts as a logging tool which allows any device to read and write data to and from the service”. After creating an account with Sparkfun, one can create feeds by interactively describing the data that will be included. Two keys are then supplied to the user: a private (read-write) one that can be used to submit or modify the data, and a public read-only one (all feeds are publicly viewable).
To submit data, one simply sends it in an html GET or POST request. It will then be captured by the database and a confirming reply sent. Similarly, one can retrieve data with a GET or POST request.
There is a space limit and a bandwidth limit, but these are set reasonably so that most users won’t be inconvenienced by them.
I have been storing data automatically into Phant for a few months now. I have a solar-powered ESP8266 WiFi-enabled processor which wakes up every ten minutes, takes temperature and battery-voltage readings, connects to my home network, and sends them up to Phant. You can view them as raw data at https://data.sparkfun.com/streams/2J5rnpZllATNjOOmqLrq, or graphed by another free service at https://analog.io/#/s5EV.
I am working with MQTT also as another, fairly different, IoT data broker, and will publish another blog entry about MQTT. A key difference between the two is that Phant is entirely passive – you can get data from it or put data into it, but it won’t notify you when new data arrives. MQTT is designed with a publish/subscribe architecture; you subscribe to a topic and when new data is published to that topic, you are notified with the new data.