Sprintf() escape characters show up in output string?

If I may jump in here - it looks to me as if “data” is interpreted as a string and not json. This is probably the right thing to do unless there is an encoding flag or similar on the publish() call.

The “data” value is simply a carrier for whatever else you want to add to the event - it could be html, xml, csv, as well as json, as posted here. In other words the cloud doesn’t really care what you put there - it’s the event name that’s important to the cloud, the data is used by your own applications.

When you’re reading events from the cloud api, and want to get your data string as jaon, then you’ll need to first read the json even data as normal, fetch out the data string, and then json decode that data string to another json object.