work on making API uniform