collect api improvements