Objetos

Las formas referenciadas arriba, campo por campo. Los tipos son informales: string[] es un array de cadenas, A | null puede estar ausente.

Sobre

Presente en cada evento, en el flujo, en GET /v1/events y en las entregas por webhook.

CampoTipoSignificado
vintVersión del sobre. Hoy, 1
tstringTipo de evento, de la tabla siguiente
opcreate | update | deletecreate, update (enriquecimiento del mismo id) o delete
idstringIdentidad estable. Deduplica por esto
tsint (ms)Cuándo ocurrió en X, en ms desde la época Unix. X no indica cuándo cambió un perfil, cuándo se siguió o dejó de seguir a alguien, cuándo llegó un seguidor verificado ni cuándo se borró una publicación: en esos eventos es cuándo lo detectamos
sidstringPosición en el flujo para la repetición; presente en el flujo y en el historial
target.idstringId numérico en X de la cuenta monitorizada (para search.match, del autor de la publicación)
target.screen_namestringNombre de usuario de la cuenta monitorizada
target.namestringEl nombre visible de la cuenta
dobjectCarga específica del tipo

Carga Tweet

El d de tweet.create, tweet.reply, tweet.retweet y tweet.quote, y la base de search.match.

CampoTipoSignificado
tweet_idstringEl id de la publicación, como cadena
kindtweet | reply | retweet | quoteQué clase de publicación es
textstringTexto completo (incluidas las publicaciones largas)
langstring | nullIdioma detectado por X
authorUserLa cuenta que la publicó, como User completo — el mismo objeto que el autor de un search.match: nombre de usuario, nombre, bio, avatar, banner, contadores, verificación, ubicación, enlace y fecha de alta. En una primera trama escueta es la cuenta tal como se leyó por última vez; el update la trae tal como se leyó con la publicación
reply_toBrief+ | nullPara respuestas: la publicación a la que se responde — un Resumen más screen_name, tweet_id y user_id de su autor
retweet_ofBrief | nullPara republicaciones: la publicación original
quotedBrief | nullPara citas: la publicación citada
mediastring[]URL de imagen simples, una por elemento multimedia
media_itemsMedia[]Cada elemento multimedia con tipo, variantes de video y dimensiones
urlsstring[]Enlaces expandidos de la publicación
articleArticle | nullEn publicaciones que enlazan un artículo de X: el artículo
counts{reply, rt, like, quote, bookmark}Recuentos de respuestas, republicaciones, me gusta, citas y marcadores en el momento en que la leímos
viewsint | nullRecuento de visualizaciones, cuando X lo expone
urlstringEnlace canónico a la publicación
fullboolfalse en una primera trama create escueta; true una vez que el evento lleva la publicación entera
kind_finalbooltrue cuando kind es definitivo. false solo en una primera trama escueta cuyo kind es tweet: la publicación aún puede resultar ser una cita, y el update del mismo id lo resuelve
kind_wastweet | null (update only)Solo en el update que fija el tipo de una publicación, y solo cuando la primera trama decía otra cosa: el tipo que tenía esa trama (tweet para una publicación que resultó ser una cita)
edit_ofBrief | nullEn tweet.edit: la versión a la que esta sustituye (su id, y su texto y autor cuando los teníamos)

Resumen

Una publicación compacta incrustada en otro evento: el original de una republicación, la publicación citada, la publicación a la que se responde o una publicación fijada.

CampoTipoSignificado
idstringId de la publicación
userstringNombre de usuario del autor
namestringNombre visible del autor
user_idstringId numérico del autor
textstringTexto completo
mediastring[]URL de imagen simples
media_itemsMedia[]Elementos multimedia con tipo y variantes de video
created_msintCuándo se publicó, en ms desde la época Unix
urlstringEnlace a la publicación

Multimedia

Una imagen, un video o un GIF. Los videos llevan el MP4 de mayor tasa de bits que pudimos encontrar; url es el fotograma de portada.

CampoTipoSignificado
typephoto | video | animated_gifClase de medio
urlstringURL de la imagen, o el fotograma de portada de un video
expanded_urlstringLa página del medio en X
video_urlstring (video)URL del MP4, la mayor tasa de bits disponible
bitrateint (video)Tasa de bits de ese MP4
duration_msint (video)Duración del video
widthintAncho original en píxeles
heightintAlto original en píxeles

Artículo

Un artículo de X (publicación de formato largo) al que enlaza una publicación. La primera trama trae title y preview; text es null hasta que el update con el mismo id entrega el artículo completo.

CampoTipoSignificado
idstringId del artículo
titlestringTítulo
previewstringLas primeras líneas del artículo
textstring | nullTexto completo, con párrafos separados por líneas en blanco; null en la primera trama
coverstring | nullURL de la imagen de portada
imagesstring[]Imágenes dentro del artículo
urlstringEnlace al artículo en X

Carga de eliminación

El d de tweet.delete. Solo se envía para una publicación que habíamos visto y que ya no está. Su ts es cuándo se detectó el borrado; la hora de la propia publicación está en su trama create anterior.

CampoTipoSignificado
tweet_idstringEl id de la publicación eliminada
urlstringDónde solía estar

Carga de cambio de perfil

El d de cada evento profile.*. Para estos, op es update.

CampoTipoSignificado
fieldstringQué campo del perfil cambió; la misma palabra que sigue a profile. en el tipo
oldanyEl valor anterior
newanyEl valor nuevo
tweetBrief (pinned only)Para profile.pinned: la publicación recién fijada
old_tweetBrief (pinned only)Para profile.pinned: la publicación fijada anteriormente, si la teníamos

Carga de seguimiento

El d de follow.add, follow.remove y followers.verified.add.

CampoTipoSignificado
userUserLa otra cuenta, como Usuario completo

Carga de estado de la cuenta

El d de account.status. Un estado es active, protected (publicaciones visibles solo para seguidores aprobados), suspended (por X) o unavailable (desactivada, eliminada o no visible por otro motivo). ts es cuándo detectamos el cambio.

CampoTipoSignificado
oldactive | protected | suspended | unavailableEl estado anterior
newactive | protected | suspended | unavailableEl estado actual
reasonstring | nullEl texto de X, si lo da (por ejemplo Suspended)

Usuario

Un perfil de cuenta completo, tal como se incrusta en los eventos de seguimiento y en search.match.

CampoTipoSignificado
idstringId numérico
screen_namestringNombre de usuario
namestringNombre visible
biostringTexto de la biografía
avatarstringURL de la imagen de avatar
bannerstring | nullURL de la imagen de banner
followersintNúmero de seguidores
followingintNúmero de seguidos
tweetsintNúmero de publicaciones
locationstringUbicación en texto libre
urlstring | nullEnlace de perfil expandido
verifiedboolTiene insignia de verificación
verified_typestring | nullblue, business, government o null
protectedboolLas publicaciones solo son visibles para seguidores aprobados
created_atstring (ISO-8601)Cuándo se creó la cuenta
categorystring | nullCategoría profesional, si la cuenta fijó una

El d de search.match: una carga Tweet más tres campos sobre la coincidencia. El target del sobre es el autor de la publicación, que no tiene por qué ser uno de tus objetivos.

CampoTipoSignificado
keyword.idintId de la palabra clave que coincidió
keyword.querystringSu consulta
keyword.labelstring | nullSu etiqueta, si le pusiste una
authorUserEl perfil completo del autor
author_is_targetbooltrue si el autor es además una cuenta monitorizada en este sistema
…TweetPayloadTodos los campos de la carga Tweet

Objetivo

Una cuenta que monitorizas, tal como la ve esta clave.

CampoTipoSignificado
idstringId numérico en X. Nunca cambia: indexa tus datos por él
screen_namestringEl nombre de usuario actual. Puede cambiar; profile.screen_name te lo avisa
namestringNombre visible
previous_screen_namesstring[]Nombres de usuario que la cuenta tuvo antes, el más reciente primero. Cada uno la sigue identificando en /v1/monitor/targets/{target}
push_readyboolTodos los tipos de evento a los que te suscribes para esta cuenta se están recogiendo en tiempo real. false no retiene nada: la cuenta se monitoriza desde el momento en que se suscribe y sus eventos se entregan a medida que se recogen, así que no esperes a este indicador para procesarlos
last_push_atdatetime | nullÚltima vez que llegó un evento en tiempo real para ella
last_poll_atdatetime | nullÚltima vez que se leyó su cronología
state"subscribed"Aquí siempre subscribed; las resoluciones pendientes tienen su propia forma
event_typesstring[]Los tipos de evento que se entregan para esta cuenta; vacío significa todos los que tu clave permite
event_types_allbooltrue cuando event_types está vacío

Objetivo pendiente

Lo que devuelve GET /v1/monitor/targets/{target} mientras una cuenta que pediste aún se está resolviendo.

CampoTipoSignificado
screen_namestring | nullEl nombre de usuario que pediste, si lo pediste por nombre
user_idstring | nullEl id de usuario que pediste, si lo pediste por id
state"queued"Siempre queued
queued_atint (unix s)Cuándo lo pediste
event_typesstring[]Los tipos de evento elegidos, aplicados en cuanto se resuelva
event_types_allbooltrue cuando event_types está vacío

Palabra clave

Una consulta que vigilas en la búsqueda de X.

CampoTipoSignificado
idintId numérico; úsalo para eliminar
querystringLa consulta, en la sintaxis de búsqueda de X
labelstring | nullTu etiqueta, devuelta en cada coincidencia
activeboolfalse si el operador la pausó
hitsintCoincidencias entregadas hasta ahora
last_hit_atdatetime | nullÚltima coincidencia
last_run_atdatetime | nullÚltima búsqueda

Cuenta

Lo que devuelve GET /v1/account sobre la clave que usaste.

CampoTipoSignificado
namestringEl nombre de la clave, tal como se emitió
planstringPreajuste de plan
key_idstringId corto de la clave, seguro para citar en solicitudes de soporte
scopesstring[]Ámbitos que tiene la clave
event_typesstring[]Lista de tipos de evento permitidos a nivel de clave, gestionada por nosotros; vacía significa todos
event_types_allbooltrue cuando el filtro está vacío
limits.max_targetsintLímite de cuentas monitorizadas
limits.max_connsintLímite de WebSockets concurrentes
limits.max_keywordsintLímite de palabras clave
limits.requests_per_minuteintPresupuesto de solicitudes por minuto
usage.targetsintCuentas monitorizadas actualmente
usage.keywordsintPalabras clave vigiladas actualmente

Webhook

Lo que devuelve GET /v1/account/webhook.

CampoTipoSignificado
urlstring | nullEl endpoint registrado
stats{ok, http_…}Contadores de entrega: ok, y un http_<code> por cada estado de fallo observado

Meta

Información de paginación junto a cada lista.

CampoTipoSignificado
countintElementos en esta página
has_moreboolSi existe otra página
next_cursorstring | nullDevuélvelo como ?cursor=; null al final

Resultado por lotes

Una entrada por cada elemento enviado a POST /v1/monitor/targets:batch, en el mismo orden.

CampoTipoSignificado
indexintPosición del elemento en tu solicitud
statusintEl estado HTTP que habría devuelto el endpoint de elemento único
dataobject (on success)El cuerpo de respuesta del elemento único, en caso de éxito
error{code, message, details?} (on failure)El objeto de error habitual, en caso de fallo

Perfil (lectura)

Lo que devuelven GET /v1/users/{screen_name}, /v1/users/by-id/{user_id} y /v1/users/batch por cuenta.

CampoTipoSignificado
idstringId numérico
namestringNombre visible
screen_namestringNombre de usuario
biostringTexto de la biografía
locationstringUbicación en texto libre
urlstring | nullEnlace del perfil
avatarstringURL de la imagen de avatar
bannerstring | nullURL de la imagen de banner
pinnedstring | nullId de la publicación fijada
verifiedboolTiene insignia de verificación
protectedboolPublicaciones visibles solo para seguidores aprobados
followersintNúmero de seguidores
followingintNúmero de seguidos
tweetsintNúmero de publicaciones

Tweet (lectura)

Una publicación tal como la devuelven los endpoints de lectura. La misma información que la carga Tweet, en la forma más plana que produce nuestro analizador.

CampoTipoSignificado
idintId de la publicación, numérico
created_msintCuándo se publicó, en ms desde la época Unix
user_idintId numérico del autor
userstringNombre de usuario del autor
namestringNombre visible del autor
textstringTexto completo
langstring | nullIdioma detectado por X
reply_tostring | nullNombre de usuario al que se responde
reply_to_status_idstring | nullId de la publicación a la que se responde
reply_to_user_idstring | nullId de la cuenta a la que se responde
conversation_idstringId de la publicación raíz del hilo
is_rtboolEs una republicación
rt_ofBrief | nullEl original, para republicaciones
is_quoteboolCita otra publicación
quotedBrief | nullLa publicación citada
mediastring[]URL de imagen simples
media_itemsMedia[]Elementos multimedia con tipo y variantes de video
urlsstring[]Enlaces expandidos
viewsint | nullRecuento de visualizaciones
counts{reply, rt, like, quote, bookmark}Recuentos de respuestas, republicaciones, me gusta, citas y marcadores
articleArticle | nullEl artículo de X al que enlaza la publicación, si lo hay (título, vista previa, portada, imágenes; el texto completo está en GET /v1/tweets/{tweet_id}/article)
edit_ofint | nullEn una versión editada: el id de la primera versión; si no, null
edit_idsint[]Los ids de todas las versiones, la más antigua primero; una publicación nunca editada solo se lista a sí misma
sourcestring | nullEl cliente desde el que se publicó, tal como lo da X (un enlace HTML, por ejemplo Twitter for iPhone)

Referencia de usuario

La forma compacta usada en las lecturas de listas de seguimiento.

CampoTipoSignificado
idstringId numérico
screen_namestringNombre de usuario
namestringNombre visible