Unable to update user profile from fetchUserProfile script

Hi Auth0 community! I recently ran into an issue with updating user app_metadata from the
fetchUserProfile script. I had a custom social connection which was storing additional data about users in app_metadata. This approach was working well until I added a new rule that was also performing some operation on app_metadata by calling the auth0.users.updateAppMetadata method. As soon as that method was called from the rule, my fetchUserProfile script was no longer able to perform updates on app_metadata. I found this note in docs that it’s not recommended to populate app_metadata from fetchUserProfile. It doesn’t elaborate why, but I assume it’s to avoid issues such as the one I encountered.

I searched for potential solution to this issue and found PATCH user.app_metadata isn't behaving as documented which seemed to be related to issue I was observing because auth0.users.updateAppMetadata method is performing PATCH operation under the hood. The solution from this thread suggested storing user data in custom property. It worked well at first glance, as I was seeing updates being reflected in Auth0 UI (new property showed up in Identity Provider Attributes section). However, despite that change being reflected in UI my rules were still getting outdated version of this custom property. Similarly to app_metadata property as soon as auth0.users.updateAppMetadata method was called that property was somehow “cached” in rules and no updates from fetchUserProfile script were picked up from rules.

Do you have any advice on how to properly store (and be able to update) custom user profile data via fetchUserProfile script?

Hey there @amalina !

We saw that you already contacted our developer support team with the same questions. I hope you’ve already received their support! Let us know if we can help anyhow down the road and it will be great if you can share later what our developer support team suggested, for the benefit of others! Thank you!

Hi @amalina . I have exactly the same problem. Did you manage to make it work?

Hi @renato ,

Yes, I got the response via Auth0 developer support. They suggested to use metadata object to move such data. As far as I understood this is a 3rd type of metadata object supported by Auth0, although they don’t mention it in their docs.

1 Like

@amalina Glad to hear that developer support was able to get this resolved for you!

For @renato and future community members who might run into this - The workaround is setting a ‘metadata’ object instead of ‘app_metadata’ in the Fetch User Profile script.

Cheers!

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.