Resumen de cambios
- Formato de la API: Los endpoints usan la ruta base /2/account_activity/ en lugar de /1.1/account_activity/.
- Administración de webhooks: La creación, listado, validación (CRC) y eliminación de webhooks se gestionan mediante la V2 Webhooks API.
- Autenticación: Los endpoints de V2 requieren cualquiera de las siguientes opciones:
- OAuthUser (3-legged OAuth) para acciones específicas de usuario (por ejemplo, suscribir a un usuario).
- OAuth2 App Only (Bearer Token) para acciones a nivel de App (por ejemplo, listar/eliminar suscripciones).
- V1.1 utilizaba requisitos variables, a menudo OAuth 1.0a.
- Asignación de endpoints:
| Endpoint V1.1 | Acción / equivalente en V2 | Notas |
|---|---|---|
| POST /1.1/account_activity/webhooks.json?url=<URL> | POST /2/webhooks | Docs. Requiere OAuth2 App Only. |
| GET /1.1/account_activity/webhooks.json | GET /2/webhooks | Docs. Requiere OAuth2 App Only. |
| PUT /1.1/account_activity/webhooks/:webhook_id.json | PUT /2/webhooks/:webhook_id | Activa el CRC. Docs. Requiere OAuth2 App Only. |
| DELETE /1.1/account_activity/webhooks/:webhook_id.json | DELETE /2/webhooks/:webhook_id | Docs. Requiere OAuth2 App Only. |
| POST /1.1/account_activity/webhooks/:webhook_id/subscriptions/all.json | POST /2/account_activity/webhooks/:webhook_id/subscriptions/all | Requiere OAuthUser. |
| GET /1.1/account_activity/subscriptions/count.json | GET /2/account_activity/subscriptions/count | Requiere OAuth2 App Only. |
| GET /1.1/account_activity/webhooks/:webhook_id/subscriptions/all.json | GET /2/account_activity/webhooks/:webhook_id/subscriptions/all | Requiere OAuthUser. |
| GET /1.1/account_activity/webhooks/:webhook_id/subscriptions/all/list.json | GET /2/account_activity/webhooks/:webhook_id/subscriptions/all/list | Requiere OAuth2 App Only. |
| DELETE /1.1/account_activity/webhooks/:webhook_id/subscriptions/:user_id/all | DELETE /2/account_activity/webhooks/:webhook_id/subscriptions/:user_id/all | Requiere OAuth2 App Only. |
| DELETE /1.1/account_activity/webhooks/:webhook_id/subscriptions/all | Obsoleto / sin equivalente directo | Utilice eliminaciones individuales o elimine el webhook mediante DELETE /2/webhooks/:webhook_id. |
- Formatos de respuesta: Revise las estructuras de respuestas de éxito y error en la documentación de AAAPI.
Cómo migrar
- Elige un paquete:
- Elige el paquete Enterprise o Self-serve para acceder a Account Activity API, teniendo en cuenta:
- Número de webhooks necesarios.
- Suscripciones o usuarios autorizados actuales y previstos.
- Número de aplicaciones cliente de X.
- Nivel de soporte deseado (foro frente a soporte empresarial gestionado 1:1).
- Detalles de precios (contacta con el equipo de ventas para Enterprise).
- Elige el paquete Enterprise o Self-serve para acceder a Account Activity API, teniendo en cuenta:
- Actualiza tu autenticación a OAuth 2.0:
- Asegúrate de que tu App de X tenga permisos de “Read, Write, and Access Direct Messages”.
- Actualiza a OAuth 2.0 para los endpoints V2. Vuelve a autorizar a los usuarios si los permisos (scopes) han cambiado.
- Usa la Consola de desarrollador para gestionar:
- OAuth 2.0 Access Token.
- Client ID y Client Secret.
- Verifica o vuelve a configurar tu webhook:
- Usa tu URL de webhook existente o configura una nueva (por ejemplo, https://your_domain.com/webhook/twitter).
- Sigue la documentación de V2 Webhooks API para registrar y gestionar tu webhook.
- Aplicaciones de ejemplo:
- Servidor de webhook simple
- Un único script de Python que muestra cómo responder a la comprobación CRC y aceptar eventos POST.
- Panel de ejemplo de Account Activity API
- Una aplicación web escrita con bun.sh que te permite gestionar webhooks, suscripciones y recibir eventos en tiempo real directamente en la app.
- Servidor de webhook simple