Identify signed-in users
Tell Skavelo who is using your app, so answers fit each user and your team can see who asked.
Skavelo works for anonymous visitors, but it's more useful when it knows who's signed in. Identified users get answers that account for their plan and role, and their conversations show their name and details in Conversations.
Calling identify
Once a user signs in, call Skavelo.identify with what you know about them:
Skavelo.identify({
id: user.id, // required: your ID for them
name: user.name, // shown to your team, never sent to the AI
email: user.email, // shown to your team, never sent to the AI
plan: user.plan, // answers can take it into account
role: user.role, // for example 'admin', so answers know what they can do
tags: ['beta', 'eu'], // any labels, up to 20
traits: { // anything else worth knowing, up to 30 keys
company: user.company,
seats: 12,
},
userHash, // optional: signed on your server
});With React, you can pass the same details to SkaveloProvider as the user prop instead.
| Field | Used for |
|---|---|
id | Required. Groups a user's conversations. Use an opaque ID rather than an email address. |
name, email | Shown to your team in Conversations. Never sent to the AI model. |
plan, role | Help Skavelo tailor answers, for example to what a user's plan includes |
tags | Targeting rules, suggestion rules and Conversations filters |
traits | Any other details, available to rules and shown in Conversations |
userHash | Proves the identity is real; see Identity verification |
You can call identify again whenever something changes, such as after an upgrade. If the user signs in partway through a conversation, Skavelo attaches the identity to that conversation.
Using identity in rules
Plan, role, tags and traits can decide who sees the widget and which suggestions appear. For example, you can hide the widget from enterprise accounts that have a dedicated account manager, or show a "Set up late fees" suggestion only to users on the billing plans. See Targeting and Suggestions.