refactored to return empty list if no data to return
added Id field and removed saveMessage function