Priority Hunter
/Docs/Widget/Identificar usuarios
DocsWidgetIdentificar usuarios

Identificar usuarios

Asocia ideas, votos y comentarios con los usuarios de tu producto — y habilita la votación, que requiere identificación.

Identificar

Llamar a PH('identify', user) asocia todas las interacciones del widget (votos, ideas, comentarios) con un usuario concreto, y habilita la actividad personalizada del badge de notificaciones.

js
// Call after your user session is available
PH('identify', {
  id:    currentUser.id,        // your internal user ID
  email: currentUser.email,     // optional — omit to avoid storing PII
  name:  currentUser.name,      // optional — shown on ideas and comments
});

El objeto de usuario acepta los siguientes campos:

CampoTipoRequeridoDescripción
idstringid o emailTu ID de usuario interno. Se usa para deduplicar usuarios y votos entre sesiones.
emailstringid o emailDirección de email del usuario. Omítela en configuraciones orientadas a la privacidad — el widget funciona sin ella.
namestringNoNombre visible en ideas y votos.
ssoTokenstringNoJWT firmado en tu servidor con el secreto de tu organización. Si está presente, la identidad verificada del token tiene prioridad sobre los campos planos. Ver la guía de SSO.

Sin un ssoToken, los campos id/email se aceptan tal cual: la petición está protegida por la lista de orígenes permitidos del widget, pero la identidad no está firmada. Para una identidad verificable criptográficamente, usa SSO.

js
// Verified identity: include a server-signed SSO token
PH('identify', {
  id:       currentUser.id,
  email:    currentUser.email,
  name:     currentUser.name,
  ssoToken: '<jwt-from-your-server>', // see the SSO guide
});

Modo privacidad: puedes pasar solo id — no se almacena ningún email. Los autores aparecerán como usuario anónimo en tu panel, pero sus votos se siguen deduplicando por ese ID; tú mantienes el mapeo usuario→ID en tu lado. Útil cuando tu política de retención de datos prohíbe enviar PII a herramientas de terceros.


Reglas de votación

La votación está ligada a la identidad del usuario. Las reglas son:

ReglaComportamiento
Identificación obligatoriaSolo los usuarios identificados (con id o email, o con un ssoToken válido) pueden votar. Un visitante anónimo que intente votar recibe un error de identificación requerida.
Un voto por ideaCada usuario puede votar una idea una sola vez. La deduplicación usa el id externo si existe, y si no, el email.
El voto es un toggleSi el usuario vuelve a pulsar el botón de voto en una idea que ya votó, el voto se retira.
Estado desde el servidorEl widget muestra el estado «ya votado» calculado en el servidor, por lo que es consistente entre dispositivos y sesiones del mismo usuario.

Versiones anteriores del widget permitían votos anónimos e ilimitados. Si tu integración dependía de ese comportamiento, añade una llamada a PH('identify') tras el login de tu app — es el único cambio necesario.


Callback opcional

Pasa una función como tercer argumento — se llamará cuando el widget haya cargado y la identidad se haya aplicado.

js
PH('identify', {
  id:    currentUser.id,
  email: currentUser.email, // optional
  name:  currentUser.name,  // optional
}, function() {
  console.log('User identified — widget is ready');
});

Desidentificar

Llama a PH('unidentify') cuando el usuario cierre sesión. El widget volverá al modo anónimo (navegación sin voto).

js
// Call when your user logs out
PH('unidentify');

SSO — identidad verificada con JWT · Patrones de identify en React, Next.js y Vue

Documentación de Priority Hunterpriorityhunter.com →