updates to API and models