api stuff
minimal testing