first working version of the backend api