some basic api functionality with a few gotchas