add api tests, god that sucked, not doing that again