OK That is fair experience I will tell you how I would have proceeded lots of examples snippets in my website livelink.in and greggriffiths.org and KB knowledge.opentext.com.
OK the first thing for you to know is the LLIAPI::Node Objects this is an encapsulation/abstraction of a dtree.dataid.So in true OOP fashion if you have a dataid you can find its NODE.Then all Node manipulation operations are in the same ospace.
For e.g from memory and in kind of psuedocode
Object myNode
myNode=DAPI.GetNodeByID(correct params ,dataid)
lliapi.GetCategories(myNode)
lliapi.GetNodePermissions(myNode)
If you spent about 8 hrs familarizing the Node looking through Oscript code there you have it.
Refrain form programming using the DAPI direct calls reason is that DAPI is very low and you would produce code that is
very dangerous.For example a DAPI.RenameNode will have renamed the NODE but none of the callbacks to other modules would have run so in theory until OT deprecates the
DAPI use ? programmers can destroy the inner workings of livelink.So read through the builder forum perhaps look at code that was written recently not in the 1999 era I would say 2003 and up when we were all forced to use DAPI extensively.
I have written conventional agents and have written a lot about agent workings.However I never had a need to do DA so I dont know that much.
Do some good lliapi research and then we will rescue you to become a good programmer.No two ways about it either learn it from OT or burn the midnight oil.
Well, if I called the wrong number, why did you answer the phone?
James Thurber, New Yorker cartoon caption, June 5, 1937
Certified OT Developer,Livelink ECM Champion 2008,Livelink ECM Champion 2010