Yes, you can use metadata for this.
How I think it could work for you:
• set metadata_public as “invitation_pending” or similar
• when they change their password through settings flow, set the metadata as “invitation_accepted”
• when a user wants to log in, use blocking webhook to check for this metadata. If it is pending, fail and display an appropriate message or redirect them to the UI to change the password. If it is accepted do nothing.
Does that sound like it could work for you @silly-apartment-81257