Can I upload historical data?

DevicePilot is primarily about dealing with live data, but sometimes data gets caught in transit

Yes. Each time you send data into DevicePilot you can optionally add a $ts field, which is the timestamp of that data (if you don't do this, DevicePilot assumes the data is live). This covers two common use-cases:

  1. You're using DevicePilot for the first time and you want to get your historical data in
  2. Your system topology contains devices (typically edge devices or gateways) which are capable of doing "store-and-forward" on data if the connection is temporarily interrupted.

To avoid rate-limiting, batch multiple updates into a single POST if you can. Sort updates by time, i.e. oldest data first.