La API de perfiles de usuario te permite usar un identificador específico de la página (PSID) con el fin de recuperar información del perfil. Esta se puede usar para personalizar la experiencia de las personas que interactúan con tu Messenger.
Para obtener la información del perfil de un usuario, debes contar con acceso avanzado a la función Acceso al perfil del usuario del activo comercial. Para acceder a algunos campos, es necesario contar con permisos adicionales.
Si bien un PSID puede ser válido, es posible que en algunos casos no se pueda usar para obtener la información del perfil de una persona. Por ejemplo, no se puede acceder a los PSID asociados con páginas de juegos a través de la API de perfil de usuario.
Los siguientes eventos le darán a tu bot de Messenger autorización para acceder a la información del perfil de una persona:
askPermission()
del SDK de extensiones de Messenger en la vista web para solicitar el permiso user_profile
.Algunos puntos de entrada permiten a las apps iniciar una conversación, pero no les dan autorización para acceder al perfil público de la persona. En esos casos, la app recibirá el permiso para acceder al perfil de la persona una vez que esta responda al mensaje inicial. Entre las situaciones en que una persona inicia una conversación con una app, pero no otorga permiso para acceder al perfil, se encuentran las siguientes:
Por el momento, la API de perfil de usuario no permite obtener información de perfil de cuentas de Messenger que se crearon con un número de teléfono.
En este caso, la API devuelve el código de error 2018218
junto con el mensaje "No hay ningún perfil disponible para este usuario".
Las apps que recibieron la aprobación mediante la revisión de apps para la función y el permiso obligatorios pueden obtener la información de los siguientes campos de los usuarios que la hicieron pública y dieron su consentimiento en tu página.
Nombre del campo | Descripción | Permiso |
---|---|---|
| PSID del usuario | N/D |
| Nombre y apellido del usuario | N/D |
| Nombre | N/D |
| Apellido | N/D |
| Foto del perfil | N/D |
| Configuración regional del usuario en Facebook |
|
| Zona horaria, número en relación con GMT |
|
| Sexo |
|
Para usar la API de perfil de usuario, envía una solicitud GET
con los campos de perfil que buscas obtener de esa persona:
curl -X GET "https://graph.facebook.com/<PSID>?fields=first_name,last_name,profile_pic&access_token=<PAGE_ACCESS_TOKEN>"
Si la app puede acceder al perfil de la persona, la API de perfil de usuario devolverá una cadena JSON con los campos solicitados del perfil.
{
"first_name": "Peter",
"last_name": "Chang",
"profile_pic": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-xpf1/v/t1.0-1/p200x200/13055603_10105219398495383_8237637584159975445_n.jpg?oh=1d241d4b6d4dac50eaf9bb73288ea192&oe=57AF5C03&__gda__=1470213755_ab17c8c8e3a0a447fed3f272fa2179ce",
"locale": "en_US",
"timezone": -7,
"gender": "male",
"last_ad_referral": {
"source": "ADS",
"type": "OPEN_THREAD",
"ad_id": "6045246247433"
}
}
Si la app no puede acceder al perfil de la persona, se devolverá un objeto vacío.