update the API to match the specs