support recursive fetching with recurse=true query arg