> ## Documentation Index
> Fetch the complete documentation index at: https://docs.elata.bio/llms.txt
> Use this file to discover all available pages before exploring further.

# Consentimiento y conocimientos

> Solicite consentimiento para compartir datos biométricos y lea la información entre aplicaciones de un usuario.

<a id="the-biometric-score" />

## La puntuación biométrica

Elata mantiene una puntuación biométrica **entre aplicaciones** para cada usuario, creada a partir de resultados de sesión derivados que las aplicaciones informan con [`reportAffect`](/es/apps/platform/metrics-and-scores#reportaffect). No se comparte nada hasta que el usuario lo acepte explícitamente y puede desactivarlo en cualquier momento.

Elata muestra el consentimiento en su propio marco de confianza, no en su aplicación. Elata también vuelve a verificar el consentimiento en el servidor para cada muestra, por lo que su aplicación no puede contribuir sin él.

Actualmente existe un propósito de consentimiento: `platform_score`.

***

<a id="ask-for-consent" />

## pedir consentimiento

```js theme={null}
const requestId = crypto.randomUUID();

window.addEventListener('message', (e) => {
  if (e.data?.type === 'elata:consent:state' && e.data.requestId === requestId) {
    console.log('granted?', e.data.granted);
  }
});

window.parent?.postMessage(
  { type: 'elata:consent:request', purpose: 'platform_score', requestId },
  '*',
);
```

Elata abre su cuadro de diálogo de consentimiento y responde con `{ type: 'elata:consent:state', purpose, granted, requestId }` una vez que el usuario lo decide.

Para permitir que los usuarios **desactiven el uso compartido** desde la configuración de su aplicación, envíe el mismo mensaje con `action: 'revoke'`.

***

<a id="read-consent-without-prompting" />

## Leer el consentimiento sin preguntar

Para mostrar el estado actual en su interfaz de usuario, por ejemplo, como un interruptor de configuración, envíe `elata:consent:query`. Obtiene la misma respuesta y no se muestra ningún cuadro de diálogo.

```js theme={null}
window.parent?.postMessage(
  { type: 'elata:consent:query', purpose: 'platform_score', requestId: 'q1' },
  '*',
);
```

***

<a id="read-the-users-insights" />

## Leer las opiniones del usuario

Los usuarios que comparten su puntuación pueden ver sus propios resultados entre aplicaciones dentro de su aplicación. Solicítalos con `elata:insights:request`:

```js theme={null}
window.parent?.postMessage(
  { type: 'elata:insights:request', requestId: 'i1', windowDays: 90 },
  '*',
);
```

Elata responde con `elata:insights:state`:

```ts theme={null}
{
  type: 'elata:insights:state',
  requestId?: string,
  consented: boolean,      // false → no data; prompt the user to opt in
  data?: {
    engagement: {
      activeDays: number,
      currentStreak: number,
      longestStreak: number,
      appsUsed: number,
      totalScores: number,
      lastActiveAt: number | null,
    },
    apps: { slug: string | null, name: string | null }[],
    score: { value: number | null, calibrating: boolean, sampleCount: number },
    windowDays: number,
    generatedAt: number,
  }
}
```

`windowDays` tiene un valor predeterminado de 90 y un límite de 365. Los datos son un resumen seleccionado de la **propia** actividad del usuario; nunca incluye otros usuarios ni registros sin procesar.

***

<a id="checklist-for-score-contributing-apps" />

## Lista de verificación para aplicaciones que contribuyen a la puntuación

1. Solicite al equipo de Elata que habilite el alcance `biometrics` para su aplicación.
2. Explique en su aplicación y enumere qué se mide y qué se comparte.
3. Pide consentimiento al `elata:consent:request` antes de llamar al `reportAffect`.
4. Maneje `scope_denied` desde `reportAffect` ofreciendo nuevamente el mensaje de consentimiento.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.