client side api