Add REST API and tests for each API controller method