local incoming = http.jsondecode(response.body);
incoming.report_counter <- report_counter;
response.body = http.jsonencode(incoming);
You mentioned the “new slot” operator; I was in fact trying to create a new key in the existing table (rather than replacing existing data). My actual error message was that the key didn’t exist. I suppose another fix would have been to add the key at the device level prior to transmitting and just setting it to -1 or something, then replacing it in the agent.
Follow up question for bonus points: where can I read about the “new slot” operator, and should i be using it in order to create a new key instead of what I did (which apparently did create a new key)?