Generic API post/update/delete and tests