Guía de la API de Threads para Desarrolladores (2026)

Guía de la API de Threads para Desarrolladores (2026)

Qué publica la API de Threads, el modelo de aplicación y token de Meta detrás de ella, el flujo de contenedor en dos pasos y el límite de 250 publicaciones cada 24 horas.

Publicar en Threads requiere dos llamadas a la API, no una: creas un contenedor de medios y luego lo publicas. Los perfiles están limitados a 250 publicaciones vía API cada 24 horas, las publicaciones de texto tienen un tope de 500 caracteres, y cada permiso que use tu aplicación debe pasar la Revisión de Aplicaciones de Meta antes de que nadie fuera de tu lista de testers pueda conectarse.

¿Qué puede publicar la API de Threads y qué no?

Las publicaciones individuales admiten tres tipos de medios: TEXT, IMAGE y VIDEO. Los carruseles admiten elementos hijos de tipo IMAGE y VIDEO, entre 2 y 20, y un carrusel cuenta como una sola publicación contra tu límite de publicación.

Las especificaciones, según la propia documentación de Meta:

RestricciónValor
Longitud del texto500 caracteres
Elementos del carrusel2 a 20
Formatos de imagenJPEG, PNG
Tamaño de archivo de imagen8 MB máximo
Ancho de imagen320 a 1440 píxeles
Relación de aspecto de imagen10:1 máximo
Contenedor de videoMOV o MP4
Códecs de videovideo H264 o HEVC, audio AAC
Frecuencia de fotogramas de video23 a 60 FPS
Duración del video300 segundos (5 minutos)
Tamaño de archivo de video1 GB máximo
Bitrate de video100 Mbps video, 128 kbps audio

Un detalle que sorprende a la gente: los emojis cuentan contra los 500 caracteres por su valor de byte UTF-8, no como caracteres individuales. Una descripción que parece tener 480 caracteres en tu editor puede ser rechazada. Si estás contando en el cliente, cuenta bytes para los emojis. La publicación sobre el límite de caracteres de Threads y el contador de caracteres de Threads gratis manejan esto correctamente.

Nota: Estas cifras se verificaron con developers.facebook.com/docs/threads/posts y /docs/threads/overview a fecha de septiembre de 2026. Las plataformas cambian estos datos sin previo aviso.

¿Cómo funciona el modelo de autenticación?

Threads corre sobre la infraestructura de aplicaciones de Meta pero con sus propias credenciales. Creas una aplicación de Meta con el caso de uso de Threads, y esa aplicación emite un ID y un secreto de aplicación específicos de Threads, distintos de los que se muestran en otras partes del panel. Usar el par equivocado es un error común de la primera hora.

Los alcances (scopes) son granulares:

  • threads_basic (obligatorio para cada endpoint)
  • threads_content_publish (publicación)
  • threads_manage_replies y threads_read_replies
  • threads_manage_insights
  • threads_delete
  • threads_location_tagging

La revisión de la aplicación no es opcional. Cada permiso debe aprobarse mediante la Revisión de Aplicaciones, y la aplicación debe estar publicada en producción, antes de que cualquier usuario que no sea tester pueda concederlo. Hasta entonces, solo puedes publicar en perfiles de Threads que hayas invitado explícitamente como testers desde el panel de la aplicación, y que hayan aceptado la invitación desde su configuración de Threads. La documentación de Meta no indica cuánto tarda la revisión, así que no vamos a especular.

El ciclo de vida del token que tienes que construir

Esta es la parte que se convierte en una tarea programada.

  1. La ventana de autorización devuelve un código.
  2. Cámbialo por un token de acceso de corta duración, válido durante 1 hora.
  3. Cambia ese por un token de larga duración mediante GET /access_token con grant_type=th_exchange_token. Válido durante 60 días.
  4. Renuévalo mediante GET /refresh_access_token con grant_type=th_refresh_token. Un token debe tener al menos 24 horas de antigüedad y no haber caducado para poder renovarse. Un token renovado es válido durante otros 60 días.

Un token que pasa 60 días sin renovarse caduca y el usuario debe volver a autorizar. Los permisos concedidos por usuarios de la aplicación con perfiles privados son válidos durante 90 días.

Nota: Estas cifras se verificaron con developers.facebook.com/docs/threads/get-started y /get-started/long-lived-tokens a fecha de septiembre de 2026. Las plataformas cambian estos datos sin previo aviso.

¿Cuál es la secuencia real de publicación?

Para una publicación individual:

  1. POST /{threads-user-id}/threads con media_type y tu texto o URL de medios. Esto devuelve un ID de contenedor.
  2. Espera. Meta recomienda una media de 30 segundos antes de publicar, para dejar que el servidor termine de procesar el medio.
  3. POST /{threads-user-id}/threads_publish con ese ID de contenedor.

Para un carrusel, añade un paso: crea un contenedor por cada elemento hijo, luego crea un contenedor de carrusel que los referencie, y por último publícalo.

# 1. create the container
curl -X POST "https://graph.threads.net/v1.0/$USER_ID/threads" \
  -d "media_type=IMAGE" \
  -d "image_url=https://example.com/photo.jpg" \
  -d "text=Shipping notes for this week." \
  -d "access_token=$TOKEN"
# -> {"id":"1789..."}

# 2. wait ~30s for processing, then publish
curl -X POST "https://graph.threads.net/v1.0/$USER_ID/threads_publish" \
  -d "creation_id=1789..." \
  -d "access_token=$TOKEN"

Ten en cuenta que las imágenes y los videos se pasan mediante URL pública, no se suben como bytes. Los servidores de Meta los recuperan. Eso significa que tus medios tienen que ser accesibles públicamente, sin autenticación, y seguir disponibles cuando se produzca la recuperación, un requisito de alojamiento que la mayoría de la gente no prevé.

¿Cuáles son los límites de velocidad?

AcciónLímite
Publicaciones publicadas250 por período móvil de 24 horas
Respuestas1.000 cada 24 horas
Eliminaciones100 cada 24 horas
Búsquedas de ubicación500 cada 24 horas
Llamadas generales a la API4800 x número de impresiones, cada 24 horas (mínimo 10 impresiones)

Vale la pena leer dos veces la fórmula de las impresiones. Tu presupuesto de llamadas generales escala con el alcance real que consigue el perfil, con un mínimo garantizado. Un perfil recién creado tiene el presupuesto mínimo.

Nota: Estas cifras se verificaron con developers.facebook.com/docs/threads/overview a fecha de septiembre de 2026. Las plataformas cambian estos datos sin previo aviso.

¿Qué te va a costar realmente tres semanas?

La Revisión de la Aplicación. Preparar capturas de pantalla en video, una política de privacidad, un flujo de demostración funcional y una verificación empresarial, y luego iterar sobre los rechazos. La duración no está publicada, así que planifícala como un riesgo de calendario y no como una tarea.

La tarea de renovación del token. Los tokens de larga duración caducan en 60 días y solo se pueden renovar una vez que tienen 24 horas de antigüedad. Eso implica una tarea programada, un almacén de tokens cifrados, una vía de alerta cuando falla la renovación y un flujo de reconexión en tu interfaz.

Fallo asíncrono. Que la llamada de contenedor devuelva 200 no significa que tu medio sea válido. La llamada de publicación es donde aparece un video defectuoso, unos 30 segundos después, en una petición distinta. Tu modelo de publicación necesita un estado de processing y una forma de reportar un fallo que llegó después de que el usuario cerrara la pestaña.

Alojamiento público de medios. Como Meta recupera por URL, necesitas URLs públicas duraderas con un comportamiento de caché sensato, y un plan para lo que pasa cuando la recuperación es limitada o bloqueada por la protección antibots de tu CDN.

Contar bytes para los emojis. Barato de arreglar, caro de descubrir en producción.

En resumen

  • Dos llamadas para publicar: crear un contenedor, esperar unos 30 segundos, publicarlo. Tres para un carrusel.
  • Los medios se pasan por URL pública. Meta los recupera.
  • 500 caracteres. Los emojis cuentan como bytes UTF-8.
  • 250 publicaciones vía API por perfil cada 24 horas.
  • Los tokens de corta duración duran 1 hora, los de larga duración 60 días, renovables una vez tienen 24 horas.
  • La Revisión de la Aplicación es obligatoria por permiso antes de que se conecten usuarios que no son testers. No hay una duración publicada.

Programar Threads junto con todo lo demás

Si Threads es una plataforma más dentro de un conjunto en vez de todo el producto, la mayor parte del trabajo anterior se repite por cada red con formas distintas. X usa OAuth 2.0 PKCE y subidas por bytes fragmentadas. Bluesky no necesita ninguna revisión de aplicación. LinkedIn necesita dos aplicaciones separadas: los perfiles personales usan w_member_social, las páginas de empresa usan r_organization_social, w_organization_social y rw_organization_admin, revisadas por separado.

BulkPublish cubre 15 plataformas a través de una sola API REST, incluyendo Threads, con la secuencia de contenedor, la renovación de 60 días y el sondeo de estado asíncrono gestionados en el servidor. La documentación para desarrolladores y la referencia de la API REST enumeran los endpoints, y cómo programar publicaciones en Threads cubre la vía para quien no es desarrollador.

Relacionado