# Reading OPC tags folder through system.opc.browse

**URL:** <https://forum.inductiveautomation.com/t/reading-opc-tags-folder-through-system-opc-browse/34350>\
**Category:** Ignition\
**Tags:** ignition79, ignition80, scripting, perspective\
**Created:** [May 1, 2020, 12:23pm UTC](https://forum.inductiveautomation.com/t/reading-opc-tags-folder-through-system-opc-browse/34350 "2020-05-01T12:23:15Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![betti.francesco](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/betti.francesco/32/6309_2.png) [@betti.francesco](https://forum.inductiveautomation.com/u/betti.francesco)\
**Post date:** [May 1, 2020, 12:23pm UTC](https://forum.inductiveautomation.com/t/reading-opc-tags-folder-through-system-opc-browse/34350/1 "2020-05-01T12:23:15Z")

</div>

Hello, I have a Tani OPC server connected to a Siemes PLC, here is a screenshot of what I see from the Ignition’s OPC browser:

![image](https://us1.discourse-cdn.com/inductiveautomation/original/2X/4/49784da6689875e265663aa9605752d43d485ae8.png)

I need to list the tags inside the AcMotors folder using the system.opc.browse function. I tried with this statement:

system.opc.browse(opcServer=‘Tani\_OPC’, opcItemPath=‘ns=1;s=MAIN\_PLC.DataBlocks.AcMotors.\*’)

but the call raises a timeout exception after a while. The string “ns=1;s=MAIN\_PLC.DataBlocks.AcMotors” is what I get from the OPC browser opction “copy item path”.  
The syntax should be correct, because a similar statement works on the Ignition OPC UA Server:

system.opc.browse(opcServer=“Ignition OPC UA Server”, opcItemPath=“ns=1;s=VendorServerInfo.\*”)

so why it doesn’t work on the Tani OPC? I would try to use browseServer, but how to format the nodeId parameter in my specific case?  
Many thanks in advance,  
Francesco

---

<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:** [May 1, 2020, 12:34pm UTC](https://forum.inductiveautomation.com/t/reading-opc-tags-folder-through-system-opc-browse/34350/2 "2020-05-01T12:34:49Z")

</div>

The NodeId parameter for the `browseServer` call would be `ns=1;s=MAIN_PLC.DataBlocks.AcMotors`. It will return only on the nodes directly underneath this node.

For OPC tags from OPC UA servers the OPC Item Path is always a NodeId in the parseable string format you see there.

I’m not sure why the `system.opc.browse` call times out, though. It’s possible the hierarchy is too deep or there is a loop, but I’m not sure with the just the information provided.

---

<div class="post-metadata">

**Author:** ![betti.francesco](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/betti.francesco/32/6309_2.png) [@betti.francesco](https://forum.inductiveautomation.com/u/betti.francesco)\
**Post date:** [May 1, 2020, 4:28pm UTC](https://forum.inductiveautomation.com/t/reading-opc-tags-folder-through-system-opc-browse/34350/3 "2020-05-01T16:28:36Z")

</div>

> [@Kevin.Herron](#):
>
> The NodeId parameter for the `browseServer` call would be `ns=1;s=MAIN_PLC.DataBlocks.AcMotors` . It will return only on the nodes directly underneath this node.

Many thanks, this one worked for me 🙂
