# Default configuration in tags. How do I know?

**URL:** <https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [September 2, 2025, 8:23am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326 "2025-09-02T08:23:48Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![danielps1818](https://avatars.discourse-cdn.com/v4/letter/d/ecae2f/32.png) [@danielps1818](https://forum.inductiveautomation.com/u/danielps1818)\
**Post date:** [September 2, 2025, 8:23am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/1 "2025-09-02T08:23:48Z")

</div>

Hi!  
Having this two tags:

```json
{
"tagType": "AtomicTag",
"value": 10,
"readOnly":false
}

```

```json
{
"tagType": "AtomicTag",
"value": 10
}

```

Is there any real difference? If you don't set the readOnly property it defaults to _false_. What is the point of actually writting it? How could I get ALL the configuration even if is not set?

I'm simply trying to understand how tags saves the information.

Thanks!

---

<div class="post-metadata">

**Author:** ![David\_Stone](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/david_stone/32/79749_2.png) [@David\_Stone](https://forum.inductiveautomation.com/u/David_Stone)\
**Post date:** [September 2, 2025, 8:35am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/2 "2025-09-02T08:35:53Z")

</div>

> [@danielps1818](#):
>
> What is the point of actually writting it?

To overwrite a default from a UDT or similar.

---

<div class="post-metadata">

**Author:** ![danielps1818](https://avatars.discourse-cdn.com/v4/letter/d/ecae2f/32.png) [@danielps1818](https://forum.inductiveautomation.com/u/danielps1818)\
**Post date:** [September 2, 2025, 9:35am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/3 "2025-09-02T09:35:34Z")

</div>

But if I don't overwrite how do I know what parameter is using? I mean, how do I know that, for example, is using "readOnly" as false if is not writted?

Am I explaning myself?

---

<div class="post-metadata">

**Author:** ![David\_Stone](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/david_stone/32/79749_2.png) [@David\_Stone](https://forum.inductiveautomation.com/u/David_Stone)\
**Post date:** [September 2, 2025, 9:39am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/4 "2025-09-02T09:39:39Z")

</div>

> [@danielps1818](#):
>
> is using "readOnly" as false if is not writted?

Because if it was true, it would be listed in the config.  
If you write it to false, then read it again, it will just be missing.  
If you write it to true, then read it again, it will show as true.

If you have a doubt that the setting is false, you can set it to false and it will change if it was not.  
I don't understand what the issue is? Has this broken a script?

---

<div class="post-metadata">

**Author:** ![danielps1818](https://avatars.discourse-cdn.com/v4/letter/d/ecae2f/32.png) [@danielps1818](https://forum.inductiveautomation.com/u/danielps1818)\
**Post date:** [September 2, 2025, 10:01am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/5 "2025-09-02T10:01:32Z")

</div>

If I config it manually to false it shows this:

```python
{
"tagType": "AtomicTag",
"value": 10
}

```

If I set it to true it shows this:

```python
{
"tagType": "AtomicTag",
"value": 10,
"readOnly": true
}

```

If I set it to false again then it shows this:

```python
{
"tagType": "AtomicTag",
"value": 10,
"readOnly": false
}

```

So I don't get it.. Set it to false or not having it is the same (?)

---

<div class="post-metadata">

**Author:** ![David\_Stone](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/david_stone/32/79749_2.png) [@David\_Stone](https://forum.inductiveautomation.com/u/David_Stone)\
**Post date:** [September 2, 2025, 10:09am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/6 "2025-09-02T10:09:49Z")

</div>

> [@David\_Stone](#):
>
> I don't understand what the issue is? Has this broken a script?

What is the problem you need us to help solve?

---

<div class="post-metadata">

**Author:** ![danielps1818](https://avatars.discourse-cdn.com/v4/letter/d/ecae2f/32.png) [@danielps1818](https://forum.inductiveautomation.com/u/danielps1818)\
**Post date:** [September 2, 2025, 10:13am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/7 "2025-09-02T10:13:10Z")

</div>

I wanna compare 2 tags.  
But having it to false and not having it should be the same. Because it has the same meaning. And I don't know how to do that

---

<div class="post-metadata">

**Author:** ![tgarrison](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/tgarrison/32/80965_2.png) [@tgarrison](https://forum.inductiveautomation.com/u/tgarrison)\
**Post date:** [September 2, 2025, 11:38am UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/8 "2025-09-02T11:38:04Z")

</div>

In order to save “space" (I’m guessing that’s the reason - could also be to simplify updates) - The tags only contain configuration that varies from the default values for that tag type. But also values for anything that HAS been changed at some point from the default - as you found.

If you want to know the actual value for something, be it default or not, simply use a tag read command. Something such as system.tag.read(‘[default]MyTag.readOnly’)[0].value will get you the current setting of readOnly. You can also use the same path for writing that value rather than system.tag.configure…

Where to find a table of defaults - not sure..

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [September 2, 2025, 12:06pm UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/9 "2025-09-02T12:06:53Z")

</div>

It isn't a table, but a **model**.

> [@Parse a JSON Tag?](https://forum.inductiveautomation.com/t/parse-a-json-tag/109693/4):
>
> The closest you can get right now is to retrieve the tag configuration model from a tag provider (via context's .tagManager then .getTagConfigModelAsync(provider)). You can interrogate the model with [.getApplicableProperties(propertyset)](https://files.inductiveautomation.com/sdk/javadoc/ignition81/8.1.47/com/inductiveautomation/ignition/common/config/ConfigurationPropertyModel.html#getApplicableProperties(com.inductiveautomation.ignition.common.config.PropertySet)) for a given configuration (turned into a PropertySet). Not particularly simple.

---

<div class="post-metadata">

**Author:** ![Chris\_Bingham](https://avatars.discourse-cdn.com/v4/letter/c/e5b9ba/32.png) [@Chris\_Bingham](https://forum.inductiveautomation.com/u/Chris_Bingham)\
**Post date:** [September 2, 2025, 12:37pm UTC](https://forum.inductiveautomation.com/t/default-configuration-in-tags-how-do-i-know/110326/10 "2025-09-02T12:37:29Z")

</div>

> [@danielps1818](#):
>
> I wanna compare 2 tags.

I would use the Tag Report Tool for this, where possible. It’s usefulness starts to break down when trying to compare things like UDT parameters and Alarm configurations, but has been very useful for me in comparing runtime values.

If scripting is preferred, the tool gives you the ability to copy a configured query as script.
