Is it possible to determine where a part is used without using the Document Manager API?

Im currently working on a macro to set a number of custom properties to various parts and assemblies from their top-level assembly. My sticking point is that, when cycling through components of the top level assembly, it brings up all components of sub-assemblies, too. This is fine except that I need to get some information from the sub-assemblies as well to insert into their components.

My research is all pointing to the Document Manager's ApI (which I do not have access to.) and the "Whereused" function. Is there any other way to get this information? Or do I have to selectively run through sub-assemblies and use recursion?

Thank you

SolidworksApi macros