Adding generic api