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

> Describe los nombres de los campos, los tipos de datos, las limitaciones y las restricciones de los metadatos del usuario, los metadatos de la app y los metadatos de la aplicación (cliente).

# Nombres de campos de metadatos y tipos de datos

Auth0 distingue entre tres tipos de metadatos que se usan para almacenar tipos específicos de información.

<Warning>
  Los metadatos de Auth0 no son un almacén de datos seguro y no deben usarse para almacenar información confidencial, como secretos de alto riesgo e información de identificación personal (PII), por ejemplo números de seguro social o de tarjetas de crédito. Se recomienda encarecidamente a los clientes de Auth0 que evalúen los datos almacenados en los metadatos y guarden solo lo necesario para fines de gestión de identidades y accesos.
</Warning>

| Tipo de metadatos                | Nombre del campo                                                                                                               | Descripción                                                                                                                                                                                                                                                                             |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Información del usuario**      | `user_metadata`                                                                                                                | Almacena atributos del usuario, como preferencias, que no afectan la funcionalidad principal del usuario. Estos datos **pueden** ser editados por usuarios que hayan iniciado sesión si crea un formulario con la Management API y **no** deben usarse como un almacén de datos seguro. |
| **Información de acceso**        | `app_metadata`                                                                                                                 | Almacena información como permisos, el plan de Auth0 e identificadores externos que pueden afectar el acceso del usuario a las funciones. Estos datos **no pueden** ser editados por los usuarios y existen restricciones sobre lo que se puede almacenar en este campo.                |
| **Información de la aplicación** | `client_metadata` en el objeto `Client`, `context.clientMetadata` en Rules y `event.client.metadata` en Actions de post-login. | Almacena información sobre una aplicación (o *cliente* en la terminología de OIDC OAuth2). Por ejemplo, la URL de la página principal de la aplicación (cualquier valor que Auth0 no establezca en la configuración de la aplicación).                                                  |

<div id="metadata-field-names">
  ## Nombres de los campos de metadatos
</div>

<div id="accepted-characters">
  ### Caracteres aceptados
</div>

Los nombres de los campos no deben contener los caracteres `.` (punto) ni `$` (signo de dólar).

Por ejemplo, esto no está permitido:

```json lines theme={null}
{
  "preference.color": "pink"
}
```

Pero puedes ampliarlo así:

```json lines theme={null}
{
    "preference": { 
        "color": "pink" 
    }
}
```

<div id="dynamic-field-names">
  ### Nombres de campo dinámicos
</div>

Los nombres de campo deben ser estáticos. Los nombres de campo dinámicos reducen la eficiencia de la indexación y degradan el rendimiento de las consultas de búsqueda. Un esquema estático es más fácil de buscar, manipular y usar.

En lugar de hacer esto:

```json lines theme={null}
{
    "participants": [
        "Alice": {
            "role": "sender"
         },
        "Bob": {
            "role": "receiver"
        }
    ]
}
```

Haz esto:

```json lines theme={null}
{
    "participants": [
        {
            "name": "Alice",
            "role": "sender"
        },
        {
            "name" : "Bob",
            "role": "receiver"
        }
    ]
}
```

<div id="name-collision">
  ### Colisión de nombres
</div>

Evita usar el mismo nombre para los campos de `app_metadata` y los campos raíz del perfil. El campo `app_metadata` se fusiona con el perfil raíz tanto en Rules como en Actions, lo que puede sobrescribir campos del perfil raíz.

Por ejemplo, si un usuario tiene un campo `groups` en su perfil raíz (devuelto por un <Tooltip tip="Security Assertion Markup Language (SAML): Protocolo estandarizado que permite a dos partes intercambiar información de autenticación sin contraseña." cta="Ver glosario" href="/es/docs/glossary?term=SAML">SAML</Tooltip> <Tooltip tip="Proveedor de identidad (IdP): Servicio que almacena y administra identidades digitales." cta="Ver glosario" href="/es/docs/glossary?term=identity+provider">Proveedor de identidad</Tooltip>) y un campo `groups` dentro de `app_metadata`, su perfil podría verse así:

```json lines theme={null}
{
    "user_id": "samlp|example-samlp-connection|username@domain.com",
    "groups": [
        "external-group-1",
        "external-group-2"
    ],
    "app_metadata": {
        "groups": [
            "internal-group-1",
            "internal-group-2"
        ]
    }
}
```

Al leer el campo `groups` del [objeto de usuario](/es/docs/customize/rules/user-object-in-rules) en una [Rule](/es/docs/manage-users/user-accounts/metadata/manage-metadata-rules), se devolverá: `["internal-group-1", "internal-group-2"]`.

<div id="metadata-data-types">
  ## Tipos de datos de los metadatos
</div>

Los campos de metadatos admiten todos los [tipos de datos compatibles con JSON](https://datatracker.ietf.org/doc/html/rfc7159):

* Cadena
* Número
* Array
* Objeto

Asegúrese de mantener la coherencia de los tipos de datos entre los usuarios. Por ejemplo, si almacena un valor como una cadena para un usuario (`user.user_metadata.age = "23"`) y como un número para otro usuario (`user.user_metadata.age = 23`), puede haber problemas al recuperar los datos.

<div id="limitations-and-restrictions">
  ## Limitaciones y restricciones
</div>

<div id="rate-limits">
  ### Límites de frecuencia
</div>

Si actualiza metadatos durante el inicio de sesión con [Rules](/es/docs/manage-users/user-accounts/metadata/manage-metadata-rules) o [Actions](/es/docs/manage-users/user-accounts/metadata/manage-user-metadata), se aplican los límites de frecuencia de su inquilino. Para obtener más información, consulte [Límites de frecuencia de los endpoints de Management API](/es/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/management-api-endpoint-rate-limits).

<Warning>
  Solo debe almacenar en los metadatos datos relacionados con la autenticación del usuario. Las capacidades de almacenamiento y búsqueda de Auth0 están diseñadas para casos de uso que no requieren búsquedas intensivas ni una alta frecuencia de actualización.

  Si necesita mantener datos detallados del perfil de los usuarios, debe hacerlo en un sistema externo. Puede almacenar el identificador del usuario de ese sistema como un campo de metadatos en Auth0.
</Warning>

<div id="size-limits-and-storage">
  ### Límites de tamaño y almacenamiento
</div>

* Hay un límite de 1 MB por usuario para los datos de usuario que se pueden indexar, consultar y devolver mediante el [endpoint de búsqueda de usuarios](https://auth0.com/docs/api/management/v2/users/get-users). Si un perfil de usuario supera 1 MB, los valores de los atributos de más de 256 caracteres dentro de `app_metadata` y `user_metadata` no se podrán buscar ni se devolverán en los resultados de búsqueda. Si el perfil de usuario sigue superando 1 MB después de omitir estos valores extensos, ninguno de los atributos de `app_metadata` y `user_metadata` se podrá buscar ni devolver para ese usuario. Auth0 captura y registra los casos en los que un perfil de usuario sigue superando 1 MB después de estas omisiones con el [código de evento](/es/docs/deploy-monitor/logs/log-event-type-codes) `wum`. Debe usarse el [endpoint get user](https://auth0.com/docs/api/management/v2/users/get-users-by-id) para recuperar todos los atributos de metadato de los perfiles de usuario que superan ese tamaño.
* Cuando configure el campo `user_metadata` mediante el [endpoint Signup](https://auth0.com/docs/api/authentication?javascript#signup) de la API de autenticación de Auth0, puede incluir un máximo de 10 campos de cadena cuyos valores no superen los 500 caracteres cada uno. Para ver un ejemplo de cómo trabajar con metadato durante un proceso de registro personalizado, consulte [Custom Signup](/es/docs/libraries/custom-signup).
* El campo `client_metadata` puede tener un máximo de 10 claves. Tanto las claves como los valores pueden tener una longitud máxima de 255 caracteres y no pueden contener caracteres especiales UTF-8.

<div id="restrictions">
  ### Restricciones
</div>

El campo `app_metadata` no debe contener ninguna de las siguientes propiedades:

* `__tenant`
* `_id`
* `blocked`
* `clientID`
* `created_at`
* `email_verified`
* `email`
* `globalClientID`
* `global_client_id`
* `identities`
* `lastIP`
* `lastLogin`
* `loginsCount`
* `metadata`
* `multifactor_last_modified`
* `multifactor`
* `updated_at`
* `user_id`

<div id="learn-more">
  ## Más información
</div>

* [Gestionar metadatos con Rules](/es/docs/manage-users/user-accounts/metadata/manage-metadata-rules)
* [Gestionar metadatos con la Management API](/es/docs/manage-users/user-accounts/metadata/manage-metadata-api)
* [Configurar los metadatos de la aplicación](/es/docs/get-started/applications/configure-application-metadata)
* [Almacenamiento de datos de usuario](/es/docs/secure/security-guidance/data-security/user-data-storage)
