Getting supported topologies for mosaic

I’m running a large interactive media room with 3 projectors powered by a quadro k5200.

I’ve been using the NVIDIA control panel to set up mosaic without any problems and use nvAPI for edge blending - but want to be able to set up mosaic using my own scripts for different screen configurations.

Trying to get the supported topologies or supported topology info is just giving me null/an empty array.

NV_MOSAIC_SUPPORTED_TOPOLOGIES supportedTopologies;
error = NvAPI_GetSupportedMosaicTopologies(&supportedTopologies);

and

NV_MOSAIC_SUPPORTED_TOPO_INFO* supportedTopoInfo;
supportedTopoInfo = new NV_MOSAIC_SUPPORTED_TOPO_INFO;
supportedTopoInfo->version = NVAPI_MOSAIC_SUPPORTED_TOPO_INFO_VER;
error = NvAPI_Mosaic_GetSupportedTopoInfo(supportedTopos, NV_MOSAIC_TOPO_TYPE_BASIC);

No errors, just null/empty array.

Is this a bug? Have other people experienced the same issue?
Many thanks