# jsonSet workaround in script

**URL:** <https://forum.inductiveautomation.com/t/jsonset-workaround-in-script/27560>\
**Category:** Ignition\
**Created:** [August 19, 2019, 11:25am UTC](https://forum.inductiveautomation.com/t/jsonset-workaround-in-script/27560 "2019-08-19T11:25:28Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [August 19, 2019, 11:59am UTC](https://forum.inductiveautomation.com/t/jsonset-workaround-in-script/27560/2 "2019-08-19T11:59:13Z")

</div>

`jsonGet` and `jsonSet` are functions in Ignition’s expression language, they aren’t usable from places where you’re writing scripts in Python.

This case is a little awkward - you’ll have to parse the JSON into a dictionary using [`jsonDecode`](https://docs.inductiveautomation.com/display/DOC80/system.util.jsonDecode), modify the corresponding element (something like `foo["documentation"] = "blah"`, depends on the structure of your UDT), then turn the dictionary back to JSON with [`jsonEncode`](https://docs.inductiveautomation.com/display/DOC80/system.util.jsonEncode), and write that updated JSON back to the tag with `system.tag.write`.

edit: the Document object in our tag system might be a mutable GSON object and not a String… I’ll have to look at this in a bit when I get the office.

---

_[View the full topic](https://forum.inductiveautomation.com/t/jsonset-workaround-in-script/27560)._
