# Unable to import tag JSON list in UDT, new or existing

**URL:** <https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313>\
**Category:** Ignition\
**Created:** [December 19, 2023, 2:45pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313 "2023-12-19T14:45:10Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![ian.sebryk](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ian.sebryk/32/49319_2.png) [@ian.sebryk](https://forum.inductiveautomation.com/u/ian.sebryk)\
**Post date:** [December 19, 2023, 2:45pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/1 "2023-12-19T14:45:10Z")

</div>

i will not manually add 250+ tags to my UDT through the UI. that's just 🐂 👕 . when i import an edited list, i get the following error:

![Screenshot 2023-12-19 072616](https://us1.discourse-cdn.com/inductiveautomation/original/3X/d/e/defba1c1e18b48c39a738594ca1df18bff939133.png)

when i export an existing tag list and try to import it immediately, with no changes, i get _the exact same error_. if i copy an existing UDT, export its tags, edit, and attempt to import: _same error_. regardless of combination: import yeilds error. i also noted that i cannot import from the context menu, but must use the little hamburger in the top left:

 ![Ignition_CannotImportTags](https://us1.discourse-cdn.com/inductiveautomation/original/3X/f/b/fb52377ff00c25a744845893e852882de79e85bf.png)

would someone be so kind as to explain what the 🍴 is going on?

running Ignition 8.1.27.

---

<div class="post-metadata">

**Author:** ![pascal.fragnoud](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pascal.fragnoud/32/24728_2.png) [@pascal.fragnoud](https://forum.inductiveautomation.com/u/pascal.fragnoud)\
**Post date:** [December 19, 2023, 2:54pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/2 "2023-12-19T14:54:35Z")

</div>

> [@ian.sebryk](#):
>
> 🐂 👕

cow blouse ? you madman.

---

<div class="post-metadata">

**Author:** ![ian.sebryk](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ian.sebryk/32/49319_2.png) [@ian.sebryk](https://forum.inductiveautomation.com/u/ian.sebryk)\
**Post date:** [December 19, 2023, 2:55pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/3 "2023-12-19T14:55:55Z")

</div>

i have been known to turn a phrase, now and then. 😃 😉

---

<div class="post-metadata">

**Author:** ![lrose](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/lrose/32/62724_2.png) [@lrose](https://forum.inductiveautomation.com/u/lrose)\
**Post date:** [December 19, 2023, 4:18pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/4 "2023-12-19T16:18:55Z")

</div>

I don't think you can import tags into the UDT definitions. The contextual menu is in "context" to UDT definitions. While the other assumes tag's are tag's as it is a standard menu.

> [@pascal.fragnoud](#):
>
> cow blouse ?

I arrived at Bull Shirt. 🤷‍♂️

---

<div class="post-metadata">

**Author:** ![Felipe\_CRM](https://avatars.discourse-cdn.com/v4/letter/f/dfb087/32.png) [@Felipe\_CRM](https://forum.inductiveautomation.com/u/Felipe_CRM)\
**Post date:** [December 19, 2023, 4:21pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/5 "2023-12-19T16:21:25Z")

</div>

Are you trying to modify the UDT definition by "importing" the list of internal tags?  
Honestly I kind of wish that worked. As it is, you might be better off copying JSON, modifying that in your favorite macro-enabled text editor/shell script, then pasting back in.

---

<div class="post-metadata">

**Author:** ![ian.sebryk](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ian.sebryk/32/49319_2.png) [@ian.sebryk](https://forum.inductiveautomation.com/u/ian.sebryk)\
**Post date:** [December 19, 2023, 4:38pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/6 "2023-12-19T16:38:54Z")

</div>

> [@Felipe\_CRM](#):
>
> then pasting back in

pasting? not importing? how does that work? i've exported and edited the JSON file (pretty bog-standard there). so this should be a no-brainer...

> [@lrose](#):
>
> I don't think you can import tags into the UDT definitions.

if that's true, that's one the dumbest things i've ever seen. are we really expected to manually build _ **hundreds** _ of UDT tags from scratch or copy/paste/modify them???

maybe i'm using the wrong terminology. i am working in the UDT definition tab, creating UDT tags. does this still apply??

---

<div class="post-metadata">

**Author:** ![Felipe\_CRM](https://avatars.discourse-cdn.com/v4/letter/f/dfb087/32.png) [@Felipe\_CRM](https://forum.inductiveautomation.com/u/Felipe_CRM)\
**Post date:** [December 19, 2023, 4:39pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/7 "2023-12-19T16:39:56Z")

</div>

Nevermind, I just tried it and it's not working the way I would have expected. Trying to paste on top of the existing UDT makes it think I'm trying to nest a second UDT inside, Just trying to paste the tag JSON makes it think I'm importing tags into the UDT definitions.

Maybe this needs to be a feature request because it's not behaving intuitively at all.

---

<div class="post-metadata">

**Author:** ![ian.sebryk](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ian.sebryk/32/49319_2.png) [@ian.sebryk](https://forum.inductiveautomation.com/u/ian.sebryk)\
**Post date:** [December 19, 2023, 4:40pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/8 "2023-12-19T16:40:54Z")

</div>

jacked up, right? this should be stupid simple. maybe i'm not stupid enough?? 😆

joking aside, i can't believe this is an issue. there must be something i'm missing.

---

<div class="post-metadata">

**Author:** ![Felipe\_CRM](https://avatars.discourse-cdn.com/v4/letter/f/dfb087/32.png) [@Felipe\_CRM](https://forum.inductiveautomation.com/u/Felipe_CRM)\
**Post date:** [December 19, 2023, 4:55pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/9 "2023-12-19T16:55:52Z")

</div>

Well, I don't know what I did differently from you, but I was able to get the export/import function to do what I wanted.

Right click - export tags:

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/d/e/de50bb03c88f6f8a3b7ef930c7e3238bc7f71ea5.png)

Edit in notepad to add a tag.

Right click - import tags - Interactive (direct might work but didn't check):

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/6/26aab22ad93c25963f49497963ef85d9688771fb.png)

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/0/207e3c8afbf1494db408fac77ae62ac71615503b.png)

Imports just fine.  
I'm also on Ignition 8.1.27 so I don't know what's going on.

---

<div class="post-metadata">

**Author:** ![lrose](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/lrose/32/62724_2.png) [@lrose](https://forum.inductiveautomation.com/u/lrose)\
**Post date:** [December 19, 2023, 4:56pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/10 "2023-12-19T16:56:39Z")

</div>

> [@ian.sebryk](#):
>
> i am working in the UDT definition tab, creating UDT tags. does this still apply??

UDT Definitions are where the structure of a UDT is defined. UDT Tags (Instances) are Tags which use the UDT as a type.

UDT Tags would be added in the Tags tag.

So the question is are you trying to create 150 different UDT Definitions, or are you trying to create 150 different instances of a UDT?

---

<div class="post-metadata">

**Author:** ![lrose](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/lrose/32/62724_2.png) [@lrose](https://forum.inductiveautomation.com/u/lrose)\
**Post date:** [December 19, 2023, 4:58pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/11 "2023-12-19T16:58:06Z")

</div>

> [@Felipe\_CRM](#):
>
> I don't know what's going on.

You exported and imported a UDT definition.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [December 19, 2023, 5:02pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/12 "2023-12-19T17:02:32Z")

</div>

I'm going to take the risk of wading into this thread (I have nothing to do with the UX of the tag system, so don't jump down my throat).

It sounds like what you're trying to do is take a collection of "regular" tags, maybe make some out of band modifications to them, and then add them to an existing UDT?

Again, I won't talk about my thoughts about the _nature_ of this flow, but to achieve that result, you can import your tags in the "regular" tag area, cut them from there, go to the UDT Definitions tab, expand the UDT you want to update, and paste the tags you want directly into it.

---

<div class="post-metadata">

**Author:** ![ian.sebryk](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ian.sebryk/32/49319_2.png) [@ian.sebryk](https://forum.inductiveautomation.com/u/ian.sebryk)\
**Post date:** [December 19, 2023, 5:19pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/13 "2023-12-19T17:19:51Z")

</div>

> [@lrose](#):
>
> So the question is are you trying to create 150 different UDT Definitions, or are you trying to create 150 different instances of a UDT?

UDT definitions. i exported UDT definitions, edited them, and tried to import the changes definitions back in.

FWIW, i am working with the labels, &c. that have come before me. if they are wrong (which is likely), please advise. for those who know me from a few months ago, i've been off developing a piece of software. but now i'm back (you poor bastards) and trying to reorient my brain to all things Ignition. 😃

everything i have attempted has been in the UDT Definitions tab.

> [@paul-griffith](#):
>
> you can import your tags in the "regular" tag area, cut them from there, go to the UDT Definitions tab, expand the UDT you want to update, and paste the tags you want directly into it.

@paul-griffith okay. i'll give that a shot. i had tried to import the definitions as 'Interactive' and they all dumped into the Tags tab. from what you've explained, this is halfway to where i need to get. and, yeah... we won't talk about workflow... 😉

---

<div class="post-metadata">

**Author:** ![Felipe\_CRM](https://avatars.discourse-cdn.com/v4/letter/f/dfb087/32.png) [@Felipe\_CRM](https://forum.inductiveautomation.com/u/Felipe_CRM)\
**Post date:** [December 19, 2023, 7:21pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/14 "2023-12-19T19:21:39Z")

</div>

I can only assume that whatever @ian.sebryk is trying to work with isn't being recognized as a UDT definition for reasons.

---

<div class="post-metadata">

**Author:** ![nminchin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/nminchin/32/6911_2.png) [@nminchin](https://forum.inductiveautomation.com/u/nminchin)\
**Post date:** [December 20, 2023, 4:05am UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/15 "2023-12-20T04:05:31Z")

</div>

I may not have read every reply here... but thought I'd chime in with my knowledge of the intricacies of importing tags into or updating _ **UDT definitions** _.

The tag editor does _ **not** _ accept:

- tag JSON
- copied tags from the tag browser

It only accepts tags copied from _within_ the tag editor.

The tag browser UDT tab does _ **not** _ allow:

- pasting tag JSON directly onto or into UDT Definitions.
  - To update a UDT Definition from tag JSON, you must select the folder it resides in, or the root (i.e. click just to the left of any UDT definition in the blank space so that nothing is selected) before pasting tag JSON from the clipboard. Otherwise, it will try to paste the tag JSON _into_ the UDT definition and fail.
  - To copy tags _into_ a UDT Definition, copy the tags (not the JSON) from the standard tab and then paste them into the UDT Definition in the UDT tab.  
If you've created the tag JSON from tools and it's in the clipboard, paste it into the standard Tags tab and then copy them from there and do as above.

---

<div class="post-metadata">

**Author:** ![Felipe\_CRM](https://avatars.discourse-cdn.com/v4/letter/f/dfb087/32.png) [@Felipe\_CRM](https://forum.inductiveautomation.com/u/Felipe_CRM)\
**Post date:** [December 20, 2023, 2:39pm UTC](https://forum.inductiveautomation.com/t/unable-to-import-tag-json-list-in-udt-new-or-existing/83313/16 "2023-12-20T14:39:43Z")

</div>

> [@nminchin](#):
>
> If you've created the tag JSON from tools and it's in the clipboard, paste it into the standard Tags tab and then copy them from there and do as above.

Not the most intuitive workflow but I'm glad there is one.

> [@nminchin](#):
>
> To update a UDT Definition from tag JSON, you must select the folder it resides in, or the root (i.e. click just to the left of any UDT definition in the blank space so that nothing is selected) before pasting tag JSON from the clipboard. Otherwise, it will try to paste the tag JSON _into_ the UDT definition and fail.

Now that I think about it, would this possibly be the reason why @ian.sebryk was unable to choose the "import tags" command when right clicking inside the UDT Definitions tab? I notice he right clicked on the UDT itself while I right clicked in empty space.
