Glosario

Por qué tu herramienta de programación de redes sociales sigue desconectando cuentas

Taras Shynkarenko
Taras Shynkarenko
•Actualizado: •9 min de lectura
Por qué tu herramienta de programación de redes sociales sigue desconectando cuentasPor qué tu herramienta de programación de redes sociales sigue desconectando cuentas

TL;DR, Respuesta Rápida

9 min de lectura

Las herramientas de programación publican con tokens OAuth, y cada red fija su propio reloj. El token de usuario de larga duración de Meta dura unos 60 días, el de LinkedIn dura 60 días con un refresh token de 365 días solo para socios aprobados, el de X dura dos horas sin offline.access, y el de TikTok dura 24 horas con un refresh token de 365 días que puede rotar. X no publica la duración de su refresh token. Un cambio de contraseña, un permiso retirado o la pérdida de un rol en una Página acaban antes con un token, y Meta devuelve un subcódigo de error distinto para cada caso.

¿Por qué mi herramienta de programación de redes sociales se sigue desconectando?

La razón por la que tu herramienta de programación de redes sociales se sigue desconectando es que publica con tokens OAuth que cada red hace caducar según su propio calendario, y varias acciones cotidianas de la cuenta matan esos tokens antes de que se agote el plazo. Una herramienta de programación nunca guarda tu contraseña. Guarda un token que la red emitió cuando hiciste clic en Permitir. Cuando ese token deja de funcionar, la herramienta no tiene otra forma de publicar, y te aparece un aviso para volver a conectar.

Las desconexiones vienen de dos fuentes. Unas son de calendario: un token llegó al final de su vida documentada. Otras son de eventos: cambiaste una contraseña, retiraste un permiso o perdiste tu rol en una Página. El segundo grupo cuesta más de detectar porque puede ocurrir al segundo día.

Dos formas en que muere un token
El calendario
  • El token llegó al final de su vida documentada
  • Token de usuario de larga duración de Meta: unos 60 días
  • X sin offline.access: dos horas
  • Access token de TikTok: 24 horas
Un evento
  • Se cambió una contraseña
  • Se quitó un permiso
  • Se perdió el rol en una Página
  • Cualquiera de ellos puede ocurrir el segundo día
Los eventos son más difíciles de detectar que el calendario porque pueden ocurrir el segundo día.

¿Cuánto dura el token de cada red?

Cada red publica una cifra distinta, y una ni siquiera publica la duración del refresh.

RedToken de accesoRefreshFuente
FacebookToken de usuario de larga duración "about 60 days", expires_in 5183944Intercambiar un token válido con fb_exchange_tokendevelopers.facebook.com, Long-lived access tokens
Página de Facebook"do not have an expiration date"No hace faltaMisma página
InstagramTokens renovados "valid for 60 days"ig_refresh_token, el token debe tener al menos 24 horasdevelopers.facebook.com, Refresh Access Token
LinkedIn"all access tokens are issued with a 60-day lifespan"365 días, solo socios MDP aprobadoslearn.microsoft.com, Authorization Code Flow and Refresh Tokens
X"two hours unless you've used the offline.access scope"Se emite con offline.access, duración no publicadadocs.x.com, OAuth 2.0 Authorization Code Flow with PKCE
TikTok"valid for 24 hours after initial issuance", expires_in 86400"valid for 365 days after the initial issuance"developers.tiktok.com, User Access Token Management

Meta

Meta matiza su propia cifra. La descripción general de los tokens de acceso dice "long-lived tokens last about 60 days," y luego te advierte "Do not depend on these lifetimes remaining the same" porque "they may change without warning or expire early." Los SDK de Meta renuevan los tokens de larga duración "once per day, when the person using your app makes a request to Facebook's servers," y sin solicitudes "the token will expire after about 60 days." Una herramienta de programación que corre en el servidor no recibe esa renovación diaria gratis. La llamada de intercambio, los 56 segundos que el ejemplo de Meta le quita a los 60 días y el token de Página que no caduca están en la nota sobre el token de acceso de larga duración de Facebook.

LinkedIn

LinkedIn tiene la cifra más clara y el filtro más estricto. Los tokens de acceso duran 60 días y los refresh tokens duran 365 días, pero LinkedIn escribe que "supports programmatic refresh tokens for all approved Marketing Developer Platform (MDP) partners." Renovar tampoco alarga el año. La vida del refresh token "remains the same as specified in the initial OAuth flow (365 days)." Una vez al año el miembro tiene que volver a hacer clic en Permitir, pase lo que pase. Las cuentas día a día, y un desajuste de unidades en la propia respuesta de ejemplo de LinkedIn, están en la nota sobre por qué un token de acceso de LinkedIn caduca a los 60 días.

X

X da el token de acceso más corto de los cuatro y la menor información sobre la renovación. Su página de OAuth 2.0 dice "the access token you create through the Authorization Code Flow with PKCE will only stay valid for two hours unless you've used the offline.access scope." Con ese scope, X emite un refresh token. Sin él, "we will not generate a refresh token," y una herramienta de programación perdería el acceso dos horas después de conectarla.

X no publica cuánto dura el propio refresh token. La lista de scopes describe offline.access como "Stay connected to your account until you revoke access," que es una promesa sobre la revocación, no una cifra. Si una herramienta te dice que los tokens de X duran un número concreto de días, esa cifra no salió de esta página.

TikTok

TikTok combina un token de acceso de un día con un refresh token de un año. El token de acceso es "valid for 24 hours after initial issuance," y TikTok dice que "can be refreshed without user consent," así que una herramienta de programación ejecuta una tarea en segundo plano para renovarlo cada día. El refresh token dura "365 days after the initial issuance," y el App Review FAQ repite el techo: "User Access Tokens can be extended to a maximum of one year."

TikTok añade una regla que rompe las integraciones descuidadas. Al renovar, "The returned refresh_token may be different than the one passed in the payload. You must use the newly-returned token if the value is different than the previous one." TikTok no dice qué pasa después con el valor antiguo, así que una herramienta que ignora el nuevo depende de un comportamiento que TikTok nunca documentó.

¿Por qué se desconectó mi cuenta después de cambiar la contraseña?

Porque Meta mata la sesión. La tabla de errores de la Graph API de Meta tiene un subcódigo específico, 460 "Password Changed", y la solución que indica es que la persona "must log in to the app again." La documentación de sesiones de Meta nombra el mismo desencadenante cuando describe a una persona que "reports their account as hacked, or changes their password as a precaution."

Las otras tres redes no mencionan los cambios de contraseña en las páginas de OAuth citadas aquí. LinkedIn, X y TikTok documentan la caducidad y la revocación, pero ninguna de esas páginas dice qué le hace un cambio de contraseña a un token existente.

Persona escribiendo en un portátil sobre un escritorio, como imagen de un cambio de contraseña que corta la conexión de una herramienta de programación.

¿Por qué se desconectó después de cambiar los permisos de la app?

Retirar un permiso acaba con el acceso que ese permiso concedía, y en LinkedIn, añadir uno puede acabar con todo.

  • Meta devuelve el código 10 o 200-299 con la nota "Permission is either not granted or has been removed."
  • LinkedIn escribe: "If you request a different scope than the previously granted scope, all the previous access tokens are invalidated." Una herramienta de programación que añade un nuevo permiso de LinkedIn en una actualización desconecta todas las cuentas de LinkedIn que tiene.
  • TikTok permite aprobar solo parte de una solicitud: "Users have the rights to only agree to a subset of scopes you requested from them." Un token sin video.publish falla con 401 scope_not_authorized.
  • Desconectar la app tú mismo acaba con la autorización en las cuatro. Meta dice que las personas "can also choose to disconnect your app from their Facebook account." LinkedIn describe un permiso "manually revoked by the member." El offline.access de X dura "until you revoke access." El endpoint de revocación de TikTok, POST https://open.tiktokapis.com/v2/oauth/revoke/, quita la app de la página "Manage app permissions" del usuario.

¿Por qué se desconectó mi Página de Facebook si otra persona sigue teniendo acceso?

Porque los tokens de Página pertenecen a una persona, no a la Página. Meta dice "Page access tokens are unique to each Page, admin, and app combination," y generar uno exige que "The person requesting the token must have a role on the Page." Si la persona que conectó la Página pierde ese rol, el token muere con él. El error de Meta para este caso es el subcódigo 492 "Invalid Session": "User associated with the Page access token does not have an appropriate role on the Page."

LinkedIn funciona igual con las páginas de empresa. El permiso w_organization_social está "Restricted to organizations where the authenticated member has one of the following company page roles: ADMINISTRATOR, DIRECT_SPONSORED_CONTENT_POSTER, CONTENT_ADMIN." Quita al miembro de esos roles y las publicaciones en la página se detienen, aunque el token propio del miembro siga siendo válido.

AdaptlyPost
AdaptlyPost

Empieza tu prueba gratis de 7 días

Analíticas multiplataforma

Bandeja Social

Asistente con IA

En los dos casos, la solución es volver a conectar desde una cuenta que tenga el rol ahora mismo, no volver a conectar a la misma persona.

Compañeros de trabajo reunidos alrededor de una mesa de oficina, como imagen de un cambio de equipo que quita a alguien su rol en una Página.

¿Cómo sé qué causa desconectó una cuenta?

Lee el error, no el síntoma. Los subcódigos de Meta separan casi todas las causas, aunque 463 y 467 se solapan:

Subcódigo de MetaNombreCausa
458App Not InstalledEl usuario no ha iniciado sesión en la app
460Password ChangedRestablecimiento de contraseña
463ExpiredEstado de inicio de sesión o token caducado, revocado o no válido por otro motivo
467Invalid Access TokenCaducado, revocado o no válido por otro motivo
492Invalid SessionRol de Página perdido

TikTok devuelve 401 access_token_invalid para "invalid or has expired" y 401 scope_not_authorized cuando falta un scope. El endpoint de refresh de LinkedIn devuelve 400 invalid_request con "The provided authorization grant or refresh token is invalid, expired or revoked." Si tu herramienta de programación te muestra el error tal cual, compáralo con estas listas antes de volver a conectar. Un error de rol de Página que se arregla reconectando a la persona equivocada volverá enseguida.

Las publicaciones que fallan por motivos distintos de los tokens se tratan en las notas sobre publicaciones programadas de Facebook que no funcionan y publicaciones programadas de LinkedIn que no funcionan.

Preguntas frecuentes

¿Por qué mi herramienta de programación me pide reconectar Facebook más o menos cada dos meses?

El token de usuario de larga duración de Meta dura "about 60 days", y Meta dice que un token caducado no se puede intercambiar por uno nuevo. La persona tiene que volver a iniciar sesión.

¿Por qué LinkedIn se desconecta aunque la herramienta de programación renueve los tokens?

El refresh token de LinkedIn dura 365 días desde la primera autorización y no se reinicia al usarlo. Además, los refresh tokens están limitados a los socios aprobados de Marketing Developer Platform.

¿Cuánto dura un refresh token de X?

X no publica su duración. Su página de OAuth 2.0 solo documenta el token de acceso de dos horas y dice que se emite un refresh token cuando pides offline.access.

¿Por qué TikTok se desconectó un día después de conectarlo?

El token de acceso de TikTok dura 24 horas, así que la herramienta de programación tiene que renovarlo cada día con el refresh token. Si esa tarea de renovación no se ejecutó, la herramienta se queda sin un token de acceso válido en cuanto pasan las 24 horas. TikTok también indica que hay que usar el nuevo refresh_token siempre que la llamada de renovación devuelva uno distinto, pero no documenta qué pasa con el valor antiguo.

¿Cambiar mi contraseña de Facebook desconecta mi herramienta de programación?

Sí. La tabla de errores de Meta recoge el subcódigo 460 "Password Changed", y la persona tiene que volver a iniciar sesión en la app.

¿Por qué se desconectó una Página de Facebook después de un cambio en el equipo?

El token de la Página estaba ligado a una persona que ya no tiene un rol en la Página. Meta devuelve el subcódigo 492, y alguien con un rol actual en la Página tiene que volver a conectarla.

¿Caducan los tokens de las Páginas de Facebook?

Meta dice que los tokens de Página "no tienen fecha de caducidad", así que no dependen del reloj de 60 días. Aun así pueden morir antes. Los tokens de Página "son únicos para cada combinación de Página, administrador y app", de modo que perder el rol en la Página termina el token con el subcódigo 492.

¿Por qué se desconectaron todas las cuentas de LinkedIn después de una actualización de la herramienta de programación?

LinkedIn escribe: "Si solicitas un scope distinto del concedido antes, todos los access tokens anteriores quedan invalidados." Si una herramienta añade un permiso nuevo de LinkedIn en una actualización, desconecta todas las cuentas de LinkedIn que gestiona. Después hay que reconectar cada cuenta.

¿Qué significa el error scope_not_authorized de TikTok?

El token no tiene un permiso que la llamada necesita. TikTok escribe que "los usuarios tienen derecho a aceptar solo un subconjunto de los scopes solicitados", así que una persona puede aprobar menos de lo que pidió la herramienta. Un token sin video.publish falla con 401 scope_not_authorized.

¿Qué diferencia hay entre los subcódigos 463 y 467 de Meta?

Muy poca, según la propia tabla de Meta. El subcódigo 463 "Expired" cubre un estado de inicio de sesión o un token de acceso que "has expired, been revoked, or is otherwise invalid." El subcódigo 467 "Invalid Access Token" usa las mismas palabras solo para el token de acceso. Ninguno de los dos códigos dice si fue el calendario o un evento lo que terminó con el token, así que revisa si hubo un cambio reciente de contraseña, permisos o roles antes de dar por hecho que el token caducó.

AdaptlyPost
AdaptlyPost

Empieza tu prueba gratis de 7 días

Analíticas multiplataforma

Bandeja Social

Asistente con IA

¿Te resultó útil este artículo?

¡Cuéntanos qué te parece!

Vernos más en Google

Un clic marca AdaptlyPost como fuente preferida y nuestros artículos aparecen más arriba en tus Noticias destacadas, el modo IA y los resúmenes con IA.

Antes de irte...

AdaptlyPost

AdaptlyPost

Programa tu contenido en todas las plataformas

Gestiona todas tus cuentas de redes sociales en un solo lugar con AdaptlyPost.

Analíticas multiplataforma

Bandeja Social

Asistente con IA

Términos relacionados del glosario

Artículos Relacionados