return empty array, even if we have nothing to return for async call