Well, I just did an experiment. Firefox. My roll20 campaign is not really an RPG, it's a table top wargame manager, so people go on at different times, do their moves on different pages and I adjudicate where contacts take place, sightings, etc. Conflicts are resolved, when necessary, at my house on my wargames table with model tanks and figures, with indirect fire artillery support from artillery/mortar units in range of the battle. So we are not on the campaign at the same time. Anyway, it's just in development now. I had downloaded APIHeartBeat and enabled it and it seemed to keep the API going for me. But after seeing some of the comments above, I turned on my Wargame Campaign moved a couple a couple of dug in units and artillery units set up to fire. My APIs include a lot of on("change:graphic", function(obj, prev) { events that move units with specific token markers right back to where they started from. All worked fine. I waited exactly an hour. I came back, and the API was working fine. I then disabled the APIHeartBeat script. Closed the browser. Restarted and turned on the Wargame Campaign. Initially, things worked as designed. Ten minutes later, they did not. The only drawback about the very cool APIHeartBeat script, which won't apply to my Wargame Campaign, is that it continuously changes the players' colours. The D&D game in which I'm about to take part (half an hour or so), that would be a but of a pain, as we can always tell who is rolling and who to congratulate or yell at for the result! :) (Yes, it's on the chat window, but it's more fun to yell at the actual dice, LOL) -- Tim