don't overwrite retrieveByToken