FusionAuth not persisting user's info
-
Hi,
I am experiencing an issue where certain user fields, specifically
firstName
,lastName
, andmobilePhone
, are intermittently not being persisted when registering users via the FusionAuth API. Here’s a summary of the setup and the problem:Endpoint Used:
/api/user/registration
.Payload Structure:
- The payload includes
firstName
,lastName
, andmobilePhone
fields in the user object. - All required configurations and fields are included in the registration request, and the fields are visible in the API response immediately after registration.
Issue Description:
While the registration response contains thefirstName
,lastName
, andmobilePhone
fields, these fields are missing when I query the user details afterward via the API or view them in the FusionAuth web interface.
This issue does not affect all users; some user records persist these fields correctly, while others do not (I should mention my early users had this info persisted, but the new ones not and nothing has changed at all from my end).Could you please advise on potential causes for this issue or any FusionAuth configuration adjustments that may resolve it? Additionally, are there any known caching mechanisms or schema conflicts that might explain why certain fields appear in the initial response but do not persist in the database?
Here are some info that might be useful.
Payload Example (the one I am sending):{ "disableDomainBlock": false, "generateAuthenticationToken": true, "sendSetPasswordEmail": false, "skipVerification": true, "skipRegistrationVerification": false, "registration": { "applicationId": "8b284ded-c569-4477-8f5e-07303110d5b0", "preferredLanguages": [ "en" ], "roles": [ "user" ], "data": { "displayName": "Fusionauth Nametest" } }, "user": { "email": "*********************", "password": "***************", "encryptionScheme": "salted-pbkdf2-hmac-sha256", "passwordChangeRequired": false, "preferredLanguages": [ "en" ], "data": { "displayName": "Fusionauth Nametest" }, "firstName": "Fusionauth", "lastName": "Nametest", "fullName": "FusionauthNametest" } }
FusionAuth response from above payload
{ "refreshToken": "*******************************", "registration": { "applicationId": "8b284ded-c569-4477-8f5e-07303110d5b0", "authenticationToken": "************************", "data": { "displayName": "Fusionauth Nametest" }, "id": "ff0c34f0-c1f6-4647-ae08-62611e6274ea", "insertInstant": 1731282567163, "lastLoginInstant": 1731282567163, "lastUpdateInstant": 1731282567163, "preferredLanguages": [ "en" ], "roles": [ "user" ], "tokens": {}, "usernameStatus": "ACTIVE", "verified": true }, "token": "*****************", "tokenExpirationInstant": 1731286167166, "user": { "active": true, "connectorId": "e3306678-a53a-4964-9040-1c96f36dda72", "data": { "displayName": "Fusionauth Nametest" }, "email": "r***************", "firstName": "Fusionauth", "fullName": "Fusionauth Nametest", "id": "35138b6d-2e7e-4ecd-ace4-f245a5be2f0d", "insertInstant": 1731282567150, "lastLoginInstant": 1731282567163, "lastName": "Nametest", "lastUpdateInstant": 1731282567150, "memberships": [], "passwordChangeRequired": false, "passwordLastUpdateInstant": 1731282567159, "preferredLanguages": [ "en" ], "registrations": [], "tenantId": "5a7486bd-562b-4235-a371-25f3cbac473e", "twoFactor": { "methods": [], "recoveryCodes": [] }, "usernameStatus": "ACTIVE", "verified": true } }
As can be seen,
firstName
,lastName
exist in the payload and response but when I runapi/user/24609063-ff74-4359-8ce5-350619be261b
I don't see the information; more importantly, when I try to send an email and include the user's firstName I do not have the name available. I get this error:text : freemarker.core.InvalidReferenceException: The following has evaluated to null or missing: ==> user.firstName [in nameless template at line 1, column 9]
Also here is the response to
api/user/24609063-ff74-4359-8ce5-350619be261b
:{ "user": { "active": true, "connectorId": "e3306678-a53a-4964-9040-1c96f36dda72", "data": { "last_login": 1731282567 }, "email": "********************", "encryptionScheme": "salted-pbkdf2-hmac-sha256", "factor": 24000, "id": "35138b6d-2e7e-4ecd-ace4-f245a5be2f0d", "insertInstant": 1731282567150, "lastUpdateInstant": 1731282567653, "memberships": [], "passwordChangeRequired": false, "passwordLastUpdateInstant": 1731282567159, "preferredLanguages": [], "registrations": [ { "applicationId": "8b284ded-c569-4477-8f5e-07303110d5b0", "authenticationToken": "*******************", "data": { "displayName": "Fusionauth Nametest" }, "id": "ff0c34f0-c1f6-4647-ae08-62611e6274ea", "insertInstant": 1731282567163, "lastLoginInstant": 1731282567163, "lastUpdateInstant": 1731282567163, "preferredLanguages": [ "en" ], "roles": [ "user" ], "tokens": {}, "usernameStatus": "ACTIVE", "verified": true } ], "tenantId": "5a7486bd-562b-4235-a371-25f3cbac473e", "twoFactor": { "methods": [], "recoveryCodes": [] }, "usernameStatus": "ACTIVE", "verified": true } }
Thank you for your assistance in troubleshooting this matter. Please let me know if any additional information is needed.
Best regards,
- The payload includes
-
@account what are you using to make the API calls? Have you tried using Postman to see if that is consistent?
-
-
@mark-robustelli it was my fault, it turned out someone in the team created a lambda operation that was running which changes the user's data as soon as the user signs up which overrides the initial data.
Thanks for your reply though.