# Get UDT defs from provider?

**URL:** <https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101>\
**Category:** Ignition\
**Created:** [April 21, 2017, 5:58am UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101 "2017-04-21T05:58:55Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![lstone](https://avatars.discourse-cdn.com/v4/letter/l/8e8cbc/32.png) [@lstone](https://forum.inductiveautomation.com/u/lstone)\
**Post date:** [April 21, 2017, 5:58am UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101/1 "2017-04-21T05:58:55Z")

</div>

I’d like to grab the UDT definitions from a given provider, the goal being a dataset comprised of the full path of every UDT definition for use in a script. I’ve attempted some search-fu but didn’t find a post about this specific topic.Is there a way to accomplish this directly?

---

<div class="post-metadata">

**Author:** ![JGJohnson](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jgjohnson/32/29582_2.png) [@JGJohnson](https://forum.inductiveautomation.com/u/JGJohnson)\
**Post date:** [April 21, 2017, 12:43pm UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101/3 "2017-04-21T12:43:47Z")

</div>

We have been able to get all of our UDT paths by using system.tag.browseTags. Our UDT definitions are nested in folders under a common folder named “UDT”. So we do a recursive browse on the folder “_types_/UDT/” and then filter out the sub-folder names out of the results…

```auto
folder = "_types_/UDT/"
filter = "*DEVICES*"
results = system.tag.browseTags(parentPath=folder, tagPath=filter, recursive=1, sort="ASC")
for r in results:
	print r

```

---

<div class="post-metadata">

**Author:** ![lstone](https://avatars.discourse-cdn.com/v4/letter/l/8e8cbc/32.png) [@lstone](https://forum.inductiveautomation.com/u/lstone)\
**Post date:** [April 21, 2017, 5:39pm UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101/4 "2017-04-21T17:39:15Z")

</div>

Thanks! I had just discovered the ‘types’ folder, this makes sense now.

ETA: I also just learned that this text input field in the new forum software treats underscores as formatting instructions for the words they enclose. The more you know.

---

<div class="post-metadata">

**Author:** ![JGJohnson](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jgjohnson/32/29582_2.png) [@JGJohnson](https://forum.inductiveautomation.com/u/JGJohnson)\
**Post date:** [April 24, 2017, 5:40pm UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101/5 "2017-04-24T17:40:19Z")

</div>

> [@lstone](#):
>
> ETA: I also just learned that this text input field in the new forum software treats underscores as formatting instructions for the words they enclose. The more you know.

I didn't know that either. I see that it italicized the word types in my folder path outside of the code block. Apparently double underscores on either side of text will **bold** it.

---

<div class="post-metadata">

**Author:** ![lstone](https://avatars.discourse-cdn.com/v4/letter/l/8e8cbc/32.png) [@lstone](https://forum.inductiveautomation.com/u/lstone)\
**Post date:** [April 25, 2017, 6:22pm UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101/6 "2017-04-25T18:22:41Z")

</div>

Hm, still having trouble getting into the Data Types folder. I can’t get browseTags() to return any UDT definitions. I tried using “_types_/Folder” for tagPath and it still only returns tags from the actual tag tree. I’ve resorted to just exporting the data types folder and manually compiling a list.

---

<div class="post-metadata">

**Author:** ![JordanCClark](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jordancclark/32/83362_2.png) [@JordanCClark](https://forum.inductiveautomation.com/u/JordanCClark)\
**Post date:** [April 28, 2017, 3:15pm UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101/7 "2017-04-28T15:15:24Z")

</div>

I got results by omitting the filter:  
 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/9/988be89421030a8d5927594fa905aa411925f256.jpg)

 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/9/919eda68a6154d1bde6a00ead3e03e8ef455c67b.jpg)

---

<div class="post-metadata">

**Author:** ![lstone](https://avatars.discourse-cdn.com/v4/letter/l/8e8cbc/32.png) [@lstone](https://forum.inductiveautomation.com/u/lstone)\
**Post date:** [April 28, 2017, 6:15pm UTC](https://forum.inductiveautomation.com/t/get-udt-defs-from-provider/14101/8 "2017-04-28T18:15:35Z")

</div>

That did it for me, thanks. I could have sworn I tested that form of the function call…
