Built out API and tests