ESP32: POST /logs/info with product+UID to get the latest stored log unix time, then POST /logs for files newer than that. Raw body + X-Product / X-UID / Content-Length (optional X-Unix, Content-Encoding: gzip).
Kind must be non-numeric. Those lines are unique on TS + kind + tick. A purely numeric kind is an old log and keeps one row per timestamp. Export CSV and Remove can use a from/to date range. Remove clears parsed rows for that UID (or that range); raw files are kept.