User attributes are key-value pairs attached to a user that control how WisdomAI filters and personalizes data for their session. They are used for:Documentation Index
Fetch the complete documentation index at: https://docs.wisdom.ai/llms.txt
Use this file to discover all available pages before exploring further.
- Parameterized connections: matching a user’s attributes against
credentialMappings.attributeMatchto resolve the right data source credentials. - Row-level authorization: referencing attributes in filter rules to restrict which rows a user can see.
- Personalized data access: passing session-specific context (e.g., a selected account or region) at impersonation time.
Attribute sources
Every attribute has asource field that indicates where it came from.
| Source | Set by | Mutable via API | Description |
|---|---|---|---|
DATABASE | API (createUsers, setUserAttributes) | Yes | Persistent attributes stored against the user |
JWT | SSO identity provider (SAML/OIDC claims) | No | Read-only attributes from the user’s login token |
DATABASE value takes precedence — unless a transient (session-specific) attribute is passed at impersonation time, which overrides both for that session only.
Setting attributes
Attributes can be set at three points in a user’s lifecycle: when the user is first provisioned, updated later via API, or passed at impersonation time for session-specific context.At creation time
PassuserAttributes in CreateUsersInput when provisioning the user. This is the most efficient option when you know the attributes upfront:
Replace
{ACCOUNT}.wisdom.ai with the base URL of your WisdomAI tenant — the same domain you use to log in. Both wisdom.ai and askwisdom.ai are valid depending on your deployment.Updating later
CallsetUserAttributes to replace the user’s DATABASE-sourced attributes after they’ve been created:
At impersonation time (transient)
Passattributes in impersonateUser for session-only overrides. These are applied for the duration of the JWT only and are never persisted:
Choosing the right approach
| Use case | Recommended approach |
|---|---|
Attributes that are stable for the user (e.g., account_id) | Set at creation via createUsers, or update via setUserAttributes |
| Attributes that change per request or should not be persisted | Pass as Transient (Session) attributes in impersonateUser |
| Attributes sourced from SSO claims | Read automatically from the JWT — no action needed |
Related articles
Create Users
Set attributes at provisioning time
Set User Attributes
Update DATABASE-sourced attributes on existing users
Impersonate User
Pass transient attributes at session time
List Users
Inspect a user’s current attributes and their source