started working out how the api should look