Want to log your own sensor or device data here? All you need is an API key and anything that can send an HTTP POST request. This page gets you from nothing to your first logged reading; see the API Reference for the full protocol (every parameter, batching, provisioning, and response formats).

Email larsi.org@gmail.com with a short description of your station (a name or location works well) and I'll set up a location record for you and send back an API key and your station's prefix. See API Key in the reference for the exact format.

Send a POST request to https://larsi.org/sensors/log with your key, a device id, and a comma-separated list of values - each value's position in the list is its channel number:

curl https://larsi.org/sensors/log \
  -d "key=YOUR_KEY" \
  -d "device=0" \
  -d "data=72.5,45.2,1013.2"

That logs channel 0 = 72.5, channel 1 = 45.2, channel 2 = 1013.2, all on device 0. A successful request answers with Data logged. See Log Data in the reference for every parameter, leaving a channel blank, batching several readings into one request, and the full list of error responses.

Provisioning tells the server what each channel actually is (device name, sensor model, property, unit), so reports show real labels instead of raw channel numbers. It's entirely optional - logging works fine without it - and typically only needs to run once:

curl https://larsi.org/sensors/provision \
  -d "key=YOUR_KEY" \
  -d "device=0" \
  -d "name=Weather Basement" \
  -d "mac=404CCA4C3D74" \
  -d "logInterval=5" \
  -d "reportEvery=1" \
  -d "channels=0,BME280,Temperature,C|1,BME280,Humidity,%"

See Provision a Device in the reference for the full parameter list and response format - mac is optional and purely for inventory/identification (there's no way for the server to see a request's real hardware address itself), not an authentication mechanism.

If you're wiring up actual hardware rather than scripting requests by hand, the reference ESP32 sensor-node library handles Wi-Fi provisioning, reconnecting after a move, and posting readings for you - bring your own sensors, declare your channels once, and it takes care of the network. See the Sensor Node project page and the ESP32 Sensor Node build for a working example.