I don't believe there's any way to find the expiry of a changePasswordId.
You could:
keep track of it yourself, since you know when you started the flow and you know how long the id is good for (it is in the tenant settings, I believe). build your own request password flow and just use this call: https://fusionauth.io/docs/v1/tech/apis/users#change-a-users-password with the loginId and an API key just try to change it and if you get a 404, redisplay the reset password flow. This is the default option.