Este documento se ha actualizado.
La traducción en Español (España) no está disponible todavía.
Actualización del documento en inglés: 6 jul. 2021

Identificadores de acceso de larga duración

De forma predeterminada, los identificadores de acceso de usuario de Instagram tienen una duración breve y solo son válidos durante una hora. No obstante, los identificadores de corta duración se pueden intercambiar por identificadores de larga duración.

Los identificadores de larga duración son válidos durante 60 días y se pueden actualizar siempre que tengan 24 horas de antigüedad, pero no hayan caducado, y el usuario de la aplicación haya concedido el permiso instagram_graph_user_profile a tu aplicación. Los identificadores actualizados son válidos durante 60 días a partir de la fecha en la que se actualizan. Los que no se hayan actualizado en un plazo de 60 días caducarán y ya no se podrán actualizar.

Los identificadores de acceso de larga duración para cuentas de Instagram privadas ahora pueden actualizarse. Además, los permisos que los usuarios de la aplicación con cuentas privadas han concedido a las aplicaciones ahora son válidos durante 90 días.

Limitaciones

  • Los identificadores de corta duración caducados no se pueden intercambiar por identificadores de larga duración. Si el identificador del usuario ha caducado, obtén uno nuevo antes de intercambiarlo por uno de larga duración.
  • Las solicitudes de identificadores de larga duración incluyen tu clave secreta de la aplicación, por lo que solo deben realizarse en el código del servidor, nunca en el código del cliente o en un archivo binario de la aplicación que pueda descompilarse. No compartas tu clave secreta de la aplicación con nadie, ni la muestres en código, la envíes a un cliente o la almacenes en un dispositivo.

Obtención de un identificador de larga duración

Utiliza el extremo GET /access_token para intercambiar un identificador de acceso de usuario de Instagram de corta duración por uno de larga duración. Cuando tengas un identificador de larga duración, puedes utilizarlo en las solicitudes del servidor o enviarlo al cliente para emplearlo allí.

Tu solicitud debe realizarse en el servidor e incluir lo siguiente:

  • Un identificador de acceso de usuario de Instagram de corta duración válido (no caducado).
  • Tu clave secreta de la aplicación de Instagram (Panel de aplicaciones > Productos > Instagram > Visualización básica > Clave secreta de la aplicación de Instagram).

Consulta la referencia de GET /access_token para obtener más información.

Solicitudes de ejemplo

curl -i -X GET "https://graph.instagram.com/access_token
  ?grant_type=ig_exchange_token
  &client_secret={instagram-app-secret}
  &access_token={short-lived-access-token}"

Ejemplo de respuesta

{
  "access_token":"{long-lived-user-access-token}",
  "token_type": "bearer",
  "expires_in": 5183944  // Number of seconds until token expires
}

Actualización de un identificador de larga duración

Utiliza el extremo GET /refresh_access_token para actualizar identificadores de acceso de usuario de Instagram de larga duración no caducados. Si actualizas un identificador de larga duración, este volverá a ser válido durante 60 días. Los identificadores de larga duración que no se hayan actualizado en un plazo de 60 días caducarán.

La solicitud debe incluir lo siguiente:

  • Un identificador de acceso de usuario de Instagram de larga duración válido (no caducado).

Consulta la referencia de GET /refresh_access_token para obtener más información.

Ejemplos de solicitudes

curl -i -X GET "https://graph.instagram.com/refresh_access_token
  ?grant_type=ig_refresh_token
  &access_token={long-lived-access-token}"

Ejemplo de respuesta

{
  "access_token":"{long-lived-user-access-token}",
  "token_type": "bearer",
  "expires_in": 5183944 // Number of seconds until token expires
}