change API interface.
Should raise to v2.0