View Profile
This walkthrough configures ThunderID for self-service profile management. Users can view the attributes stored about them, update those attributes, and change their password — all without leaving your application.
Add Self-Service Profile Management covers the requirements story behind this use case.
Complete the Login walkthrough first. The user type and application set up there are required here.
Pick Your Pattern
Redirect-based
In the redirect-based pattern, your application renders the profile UI itself. Profile attributes are read from the ID token on sign-in. Attribute updates and credential changes go to ThunderID's self-service endpoints, which act on the signed-in user's own record — no additional permissions are needed beyond the access token.
Configure ThunderID
1. Ensure your user type has the attributes you want to expose
Navigate to User Types and open your consumer user type. Add any attributes you want users to view or update (for example, given_name, family_name). Mark attributes you want users to be able to update as non-credential, non-unique fields.
See User Types.
2. Ensure your application allows the required scopes
Navigate to Applications → your app. Under Allowed Scopes, confirm that openid, profile, and email are listed. These scopes allow the ID token to include the user's name and email attributes.
See Manage Applications.
Integrate into Your App
Your app reads profile attributes from the ID token and calls the self-service endpoints for updates. Use the SDK for your framework:
| Framework | Where to integrate |
|---|---|
| React | React SDK Overview — <UserProfile /> for the full profile UI, <User /> to read user attributes |
| Next.js | Next.js Quickstart |
| Vue | Vue Quickstart |
| Browser SDK | Browser SDK Overview |
For direct API access, profile attributes are read and updated through the self-service endpoints:
| Operation | Endpoint | Method |
|---|---|---|
| Read profile | /users/me | GET |
| Update attributes | /users/me | PATCH |
| Change password | /users/me/update-credentials | POST |
See the APIs reference.
Try It Out
- Start your app and sign in as your test user.
- Navigate to the profile section. Verify that the user's attributes render from the ID token.
- Edit an attribute (for example, the user's last name) and save. Confirm the update is reflected.
- Change the password. Sign out, sign back in with the new password, and verify it works.
App-native step-by-step
Coming soon. See the App-native pattern for what to expect.
App-native managed
Coming soon. See the App-native pattern for what to expect.
Direct API
Coming soon. See the Direct API pattern for what to expect.
Going Deeper
- Want to understand which attributes are stored on a user record? See User Types in Identity Concepts.
- Want to see this use case running against the Wayfinder sample? See View Profile — Try It Out.