Generate one-time-use custom links for emails and interact with them to accomplish tasks
You can copy function "user_pass_reset_url" and form "user_pass_reset" and customize it for your needs. With first you create custom link and with the second you can get "one-time-link" logic.