Kiingy said: GiGs said: Can you point out which documentation doesn't work? On the roll20 help center page here, which I assume in the roll20s official documentation? <a href="https://help.roll20.net/hc/en-us/articles/360037772793-API-Objects#API:Objects-UsingtheNotes,GMNotes,andBiofieldsAsynchronous" rel="nofollow">https://help.roll20.net/hc/en-us/articles/360037772793-API-Objects#API:Objects-UsingtheNotes,GMNotes,andBiofieldsAsynchronous</a> It
straight up tells you to use a function that doesn't work. Then they say "be sure to also
look at" the Character Sheet documentation that links to a dead page. <a href="https://help.roll20.net/hc/en-us/articles/360037773113" rel="nofollow">https://help.roll20.net/hc/en-us/articles/360037773113</a> That first page is specifically for the Notes, GMNotes, and Bio fields from a character sheet, which have to be accessed asynchronously. I don't want to underestimate your comfort with JS (I don't know anything about you), so I'll just say for fullness of the explanation: async access of these fields can make it look like it failed. Consider: let charBio; let character = getObj("character", "-JMGkBaMgMWiQdNDwjjS"); character.get("bio", bio => { charBio = bio; }); log(charBio); When this runs and charBio is logged to the script log panel, it will be empty because the code immediately continues past the async callback. The charBio variable will be filled, eventually, but not in any kind of time where you would need to use it. Is this akin to what you were doing? And if so, do you see the dilemma? Or maybe you can post your code where you tried to use this function so we can see what is going on? Also, the link that is broken probably just went to a sheet like this one , discussing how character sheets *also* use the same sandbox as scripts. Not really necessary for you to consider when building a script... that's something more applicable to sheet builders and those-who-would-troubleshoot an odd error, knowing that it could attribute to the sheet rather than your script. Kiingy said: For a beacon sheet, you should use the getSheetItem function as discussed in this article , however, that *will* introduce async timing into your code, so be aware. I do use that, however it only works in the "Experimental" sandbox, and the game keeps swapping back to "Default". There's a memory problem with the xBox that they're working on. They're working on it in terms of Beacon being the would-be standard-bearer of the Roll20 experience, buuuuut..... API is always a lower priority than the wider VTT experience, so make of that timeline what you will. =/