Autenticación

Para realizar llamadas a la API Graph y a la API de marketing, debes pasar un token de acceso como parámetro en cada llamada a la API. En este guía, te enseñamos cómo obtener tokens de acceso para realizar pruebas.

Para obtener más información sobre autenticación, consulta nuestra documentación principal: Tokens de acceso de tecnologías de Meta.

En este documento, se tratarán los siguientes temas:

Explorador de la API Graph

Puedes obtener un token de acceso de usuario de prueba con el explorador de la API Graph. Para obtener información sobre cómo utilizar el explorador, consulta la guía del explorador de la API Graph.

Obtén el token de acceso de usuario

  1. Ve al explorador de la API Graph.
  2. En la app de Facebook, selecciona una app utilizada para obtener el token de acceso.
  3. En usuario o página, selecciona token de usuario.
  4. En Permisos, revisa ads_read.
  5. Haz clic en Generar token de acceso. La caja en la parte superior del botón se completará con el token de acceso.
  6. Almacena ese token para usarlo después.

Depuración

Para obtener más información en el token que acabas de generar, haz clic en el botón i que se muestra delante del token. Después de hacer clic, se abre una pantalla de inicio y se muestra información básica referida al token. Haz clic en Abrir en herramienta de token de acceso para ser redirigido al depurador de tokens de acceso.

Puedes acceder directamente al depurador de tokens de acceso y pegar el token generado en el cuadro de texto.

Mientras se está depurando, verifica lo siguiente:

  • Identificador de la app: el identificador de la app que mencionamos en la sección de requisitos previos.
  • Caducidad: una marca de tiempo. Los tokens de corta duración caducan en una o dos horas.
  • Ámbitos: contiene las permisos agregados en el explorador de la API Graph.

Extender token de acceso

  1. Completa todos los pasos para obtener el token de acceso con el explorador de la API Graph.
  2. Copia tu token. Pégalo en el cuadro de texto del depurador de tokens de acceso.
  3. En el depurador de tokens de acceso, desplázate hacia abajo hasta el final de la página.
  4. Haz clic en extender el token de acceso para obtener un token de larga duración. Copia ese token para usarlo después.

Verifica las propiedades de tu nuevo token con el depurador de tokens de acceso. Debe tener una caducidad más larga, como 60 días, o la leyenda "Nunca" en "Fecha de caducidad". Consulta información sobre los tokens de acceso de larga duración.

Tokens de acceso del usuario del sistema del usuario

Un token de acceso del usuario del sistema es un tipo de token de acceso que se asocia con una cuenta de usuario del sistema, que se creó en el administrador comercial con el propósito de administrar activos y llamar a la API de marketing. Los tokens de acceso del usuario del sistema son útiles para las interacciones de servidor a servidor, donde no hay ningún usuario presente para autenticar. Pueden usarse para realizar acciones en nombre de la empresa, como leer y escribir datos del negocio, administrar campañas publicitarias y otros objetos publicitarios.

Una ventaja de usar un token de acceso del usuario del sistema es que no caduca, por lo que puede utilizarse en scripts o servicios de larga duración que necesitan acceder a la API Graph. Además, debido a que las cuentas del usuario del sistema no están vinculadas a un individuo específico, se pueden usar para proporcionar un nivel de separación entre la actividad personal y la actividad empresarial en Facebook.

También es menos probable que se invaliden los tokens del usuario del sistema por otras razones en comparación con los tokens de acceso de usuario de larga duración.

Obtener un token de forma manual

Si el usuario hace clic en el botón Permitir cuando solicites permisos ampliados, se lo redirigirá a una URL que contiene el valor del parámetro redirect_uri y un código de autorización:

http://YOUR_URL?code=<AUTHORIZATION_CODE>

Crea una URL que incluya el extremo para obtener un token, el identificador de la aplicación, la URL del sitio, la clave secreta de la app y el código de autorización que acabas de recibir. La URL será similar a la siguiente:

https://graph.facebook.com/<API_VERSION>/oauth/access_token?
  client_id=<YOUR_APP_ID>
  &redirect_uri=<YOUR_URL>
  &client_secret=<YOUR_APP_SECRET>
  &code=<AUTHORIZATION_CODE>

La respuesta debe contener el token de acceso del usuario:

  • Si sigues el proceso de autenticación del lado del servidor, recibes un token persistente.
  • Si sigues el proceso de autenticación del lado del cliente, recibes un token con un período de validez de entre una y dos horas. Ese token puede intercambiarse por uno persistente con una llamada al punto de conexión de la API Graph para extender tokens.

Si un usuario del sistema invoca a la API, puedes usar un token de acceso de usuario del sistema.

Puedes depurar el token de acceso, comprobar su fecha de caducidad y validar los permisos concedidos mediante el depurador de token de acceso o la API de validación mediante programación.

Almacenar el token

Debes almacenar de manera segura el token en tu base de datos para posteriores llamadas a la API. La transferencia de tokens entre cliente y servidor se debe realizar de manera segura a través de HTTPS para garantizar la seguridad de las cuentas de las personas. Aquí tienes más información sobre las implicaciones de mover tokens entre tus clientes y tu servidor.

Comprueba periódicamente la validez del token y, si es necesario, solicita permisos al usuario. Incluso un token persistente puede dejar de tener validez en algunos casos, entre ellos:

  • Si el usuario cambia la contraseña
  • Si el usuario revoca los permisos

Dado que los tokens de acceso del usuario pueden invalidarse o revocarse en cualquier momento, tu app debería contar con un proceso para volver a solicitar permisos al usuario. Cuando un usuario inicie tu app web, comprueba la validez del token que tienes para dicho usuario. De ser necesario, guíalo por el proceso de autenticación para obtener un token actualizado.

Si no es posible realizar esta acción con tu app, es posible que debas solicitar permiso al usuario de otro modo. Esto puede darse en casos en los que las llamadas a la API no se inician directamente mediante una interfaz de usuario o se realizan mediante scripts ejecutados de forma periódica. Una posible solución es enviar un correo electrónico a los usuarios con instrucciones.