Skip to main content
La ofrece funcionalidades que puede usar para administrar los usuarios de su aplicación, incluidas las siguientes tareas:

Inicializa UsersAPIClient

Para empezar, crea una nueva instancia de UsersAPIClient pasando account y el token de la identidad principal. En el caso de la vinculación de usuarios, esta identidad principal es el perfil del usuario cuyos datos quieres “conservar” y al que planeas vincular otras identidades. La vinculación de cuentas de usuario permite que un usuario se autentique con cualquiera de sus cuentas. Independientemente de con qué cuenta se autentique, iniciará sesión con el mismo perfil. Sin la vinculación de cuentas, Auth0 trata cada cuenta distinta como un perfil independiente. El método link acepta dos parámetros: el id del usuario principal y el token del usuario secundario (el token obtenido después de iniciar sesión con esta identidad). El id del usuario en cuestión es el identificador único de esta cuenta de usuario. Si el id tiene el formato facebook|1234567890, el id requerido es la parte situada después de la barra vertical de separación.
client
    .link("primary user id", "secondary user token")
    .start(object: Callback<List<UserIdentity>, ManagementException>() {
        override fun onSuccess(payload: List<UserIdentity>) {
            // ¡Se obtuvieron las identidades actualizadas! Cuentas vinculadas.
        }

        override fun onFailure(error: ManagementException) {
            // ¡Error!
        }
    })
Al desvincular usuarios, las cuentas vuelven a ser perfiles separados. El método unlink acepta tres parámetros: el id del usuario principal, el id del usuario secundario y el proveedor secundario (del usuario secundario).
users
    .unlink("primary user id", "secondary user id", "secondary provider")
    .start(object: Callback<List<UserIdentity>, ManagementException>() {
        override fun onSuccess(payload: List<UserIdentity>) {
            // ¡Se obtuvieron las identidades actualizadas! Cuentas vinculadas.
        }

        override fun onFailure(error: ManagementException) {
            // ¡Error!
        }
    })
Cuando se vinculan cuentas, los metadatos de la cuenta secundaria no se combinan con los de la cuenta principal. Del mismo modo, al desvincular dos cuentas, la cuenta secundaria no conserva los metadatos de la cuenta principal.

Actualizar los metadatos del usuario

Al actualizar los metadatos del usuario, cree un objeto metadata y, a continuación, llame al método updateMetadata y páseles el id del usuario y el objeto metadata. Los valores de este objeto sobrescriben los valores existentes con la misma clave o agregan valores nuevos para las claves que aún no existen en los metadatos del usuario.
val metadata = mutableMapOf<String, Any?>()
metadata.put("name", listOf("My", "Name", "Is"));
metadata.put("phoneNumber", "1234567890");

users
    .updateMetadata("user id", metadata)
    .start(object: Callback<UserProfile, ManagementException>() {
        override fun onSuccess(payload: UserProfile) {
            // Metadatos actualizados
        }

        override fun onFailure(error: ManagementException) {
            // ¡Error!
        }
    })