Configuración de Threads
Obtén un token de acceso de larga duración de Threads y tu Threads User ID. Este vive en la plataforma para desarrolladores de Meta (la misma que Facebook e Instagram) pero tiene su propio App ID y App Secret, separados de la app principal de Meta. No los confundas.
social_threads_token, un token de acceso de larga duración (60 días de vigencia, renovable)social_threads_user_id, un User ID numérico
- Tienes una cuenta de Threads (una personal sirve, Threads no distingue las de tipo Business).
- Tu cuenta de Threads y tu cuenta de desarrollador de Meta son la misma identidad.
- Tienes dónde alojar una URL de política de privacidad y una URL de redirección. Ambas deben ser HTTPS. Cualquier URL en getartdrop.com sirve para uso personal.
-
1Meta para Desarrolladores
Crea una app de Meta con el caso de uso de Threads
- Ve a developers.facebook.com/apps e inicia sesión.
- Haz clic en Create App.
- En Use cases, elige Access the Threads API. (Está en la lista, desplázate si hace falta.)
- Ponle nombre a la app, añade un correo de contacto y créala.
También puedes añadir el caso de uso de Threads a una app de Meta existente. Barra lateral izquierda, Use cases, Add use case, Access the Threads API.
-
2Credenciales de la app de Threads
Copia el Threads App ID y el Threads App Secret
Aquí está la trampa: una app con el caso de uso de Threads tiene dos App IDs y dos App Secrets, uno para la app padre de Meta y otro específico de Threads. Necesitas el par de Threads, no el de la app padre.
- Barra lateral izquierda, Use cases, Access the Threads API, Customize.
- Desplázate hasta Settings y encuentra el Threads App ID y el Threads App Secret.
- Copia ambos.
Si por accidente usas el App ID de la app padre de Meta en las llamadas OAuth, obtendrás errores confusos de
invalid_client. Usa siempre el par de Threads. -
3Configuración del caso de uso de Threads
Añade permisos y URLs
Todavía dentro de Use cases, Access the Threads API, Customize:
- Abre Permissions y añade:
threads_basic(requerido para todo)threads_content_publish(requerido para publicar)threads_manage_insights(opcional, métricas)
- Abre Settings (dentro del caso de uso) y añade:
- Redirect Callback URL, cualquier URL HTTPS que controles (por ejemplo
https://getartdrop.com/). - Deauthorize Callback URL, la misma u otra distinta.
- Data Deletion Request URL, la misma.
- Redirect Callback URL, cualquier URL HTTPS que controles (por ejemplo
- Abre Permissions y añade:
-
4Revisión de la app
Añádete como Threads Tester (evita la revisión de la app)
Una app con el caso de uso de Threads empieza en modo Development. En modo de desarrollo, solo los administradores y testers de la propia app pueden autorizarla. Eso está perfecto para uso de un solo usuario, no necesitas la revisión de la app (App Review).
- Barra lateral izquierda, App roles, Roles.
- Desplázate hasta Threads Testers y haz clic en Add Threads Testers.
- Introduce tu nombre de usuario de Threads y envía la invitación.
- En threads.net/settings, acepta la invitación (revisa la sección Website permissions o Invites).
NO cambies la app a modo Live. El modo Live requiere una revisión completa de la app (App Review), que tarda de 2 a 4 semanas y necesita una grabación de pantalla del flujo del usuario. Totalmente innecesario para uso personal.
-
5Autorización OAuth
Abre la URL de autorización de Threads en un navegador
Arma esta URL, sustituyendo tu
THREADS_APP_IDy tu URL de redirección:https://threads.net/oauth/authorize ?client_id={THREADS_APP_ID} &redirect_uri={REDIRECT_URL} &scope=threads_basic,threads_content_publish,threads_manage_insights &response_type=code &state=artdrop-setupPégala en un navegador donde tengas la sesión iniciada en Threads. Pulsa Authorize. Threads te redirige de vuelta a tu URL de redirección con un parámetro
?code=...en la barra de direcciones.Copia el valor de
codede la URL. Úsalo en el siguiente paso dentro de unos minutos. Los códigos caducan rápido. -
6Intercambia el código por un token corto
Cambia el código por un token de acceso de corta duración
Haz un POST al endpoint del token. Lo más fácil es con curl:
curl -X POST https://graph.threads.net/oauth/access_token \ -F client_id={THREADS_APP_ID} \ -F client_secret={THREADS_APP_SECRET} \ -F grant_type=authorization_code \ -F redirect_uri={REDIRECT_URL} \ -F code={CODE_FROM_STEP_5}Respuesta:
{ "access_token": "THAAx...", "user_id": 123456789012345 }Copia el
access_token. Esa es la versión de corta duración (~1 hora). Toma también eluser_id, ese es el Threads User ID para ArtDrop. -
7Token de larga duración
Cambia el token corto por uno de 60 días
curl -G https://graph.threads.net/access_token \ -d grant_type=th_exchange_token \ -d client_secret={THREADS_APP_SECRET} \ -d access_token={SHORT_TOKEN_FROM_STEP_6}La respuesta te da un nuevo
access_tokenválido durante 60 días.ArtDrop renueva este token automáticamente antes de que caduque. Si ArtDrop está desconectado o desinstalado más allá de los 60 días, el token muere y tendrás que rehacer todo desde el Paso 5.
-
8Pega y guarda
Introduce ambos valores en ArtDrop
De vuelta en la página Social de ArtDrop, sección Threads:
- Threads Access Token: el token de larga duración del Paso 7.
- User ID: el ID numérico del Paso 6.
Pulsa Save. ArtDrop llama a
/me?fields=id,usernamepara verificar, y verás el nombre de usuario vinculado de inmediato si funcionó.
- App ID equivocado: la causa número 1 de los fallos de OAuth. Usa el App ID de Threads, no el App ID de la app padre de Meta. Aparecen en pantallas distintas.
- "Invalid redirect URI": la URL de redirección en la llamada OAuth debe coincidir exactamente con la que está en la configuración de la app (barra final, esquema, puerto, todo).
- Código ya usado: los códigos de autorización son de un solo uso. Si el Paso 6 falla, vuelve al Paso 5 y consigue un código nuevo.
- El token de larga duración muere a los 60 días si nunca se renueva. ArtDrop lo renueva automáticamente cuando estás dentro de los 7 días previos a la caducidad, pero la herramienta tiene que estar en funcionamiento.
- Solo personal: solo puedes autorizar cuentas que hagan OAuth en tu app. No puedes gestionar las cuentas de Threads de otras personas sin que ellas mismas pasen por este flujo.
- Límites de frecuencia: 250 publicaciones publicadas por cada 24 horas, por cuenta. ArtDrop se mantiene muy por debajo, pero volcar 500 publicaciones de una sola vez se atascará.
- Publicar es un proceso de dos pasos por dentro: crear el contenedor y luego publicar. ArtDrop se encarga de esto por ti, tú solo aportas aquí las credenciales.
El OAuth de Threads es el más quisquilloso de los cinco por la peculiaridad de los dos App IDs. Si el Paso 6 devuelve invalid_client o invalid_grant, haz una captura de pantalla de Use cases, Access the Threads API, Customize, Settings de la app de Meta y escribe a support@getartdrop.com. Verificaremos que estés usando los IDs correctos.
Referencia oficial: Threads Get Started, Long-Lived Tokens.