Feature/api structure