Skip to main content
Los endpoints de filtered stream entregan Posts que coinciden con un conjunto de reglas aplicadas al stream. Las reglas están compuestas por operadores que coinciden con una variedad de atributos de Post. Se pueden aplicar múltiples reglas usando el endpoint POST /tweets/search/stream/rules. Una vez que hayas agregado reglas y te hayas conectado usando GET /tweets/search/stream, solo se entregarán los Posts que coincidan con tus reglas. No necesitas desconectarte para añadir o eliminar reglas.

Limitaciones de las reglas

Los límites del número de reglas dependen de tu nivel de acceso. Consulta la introducción a filtered stream para conocer los límites específicos.

Tipos de operadores: independientes y que requieren conjunción

Los operadores independientes pueden usarse solos o junto con cualquier otro operador (incluidos aquellos que requieren conjunción). Por ejemplo, esta regla funciona porque #hashtag es un operador independiente:
Los operadores que requieren conjunción no pueden usarse solos en una regla; solo pueden usarse cuando se incluye al menos un operador independiente. Esto se debe a que usar estos operadores por sí solos coincidiría con un volumen extremadamente alto de Posts. Por ejemplo, las siguientes reglas no son compatibles ya que contienen solo operadores que requieren conjunción:
Si añadimos un operador independiente, como la frase "X data", la regla funciona correctamente:
El operador embedding_threshold: (usado con reglas semánticas embedding:) también requiere conjunción.

Operadores booleanos y agrupación

Combina múltiples operadores usando estas herramientas:
Una nota sobre las negaciones
  • Todos los operadores pueden negarse excepto sample: y embedding:
  • El operador -is:nullcast siempre debe estar negado
  • Los operadores negados no pueden usarse solos
  • No niegues operadores agrupados. En lugar de skiing -(snow OR day OR noschool), usa skiing -snow -day -noschool
  • Escribir -embedding:"query" no es compatible

Orden de las operaciones

Al combinar AND y OR:
  1. Los operadores conectados por lógica AND se combinan primero
  2. Luego, se aplican los operadores conectados con lógica OR
Ejemplos: Para eliminar la incertidumbre, usa paréntesis:

Puntuación, diacríticos y sensibilidad a mayúsculas

Diacríticos: las reglas de filtered stream con acentos solo coinciden con Posts que también incluyan el acento. Por ejemplo, diacrítica coincide con diacrítica pero no con diacritica. Sensibilidad a mayúsculas: todos los operadores no distinguen entre mayúsculas y minúsculas. La regla cat coincide con cat, CAT y Cat.
Search Posts se comporta de forma diferenteAl construir consultas de búsqueda, las palabras clave con acentos coinciden con Posts con o sin los acentos. Por ejemplo, Diacrítica coincide tanto con Diacrítica como con Diacritica.

Coincidencia de Quote Tweet

Al usar filtered stream, los operadores coinciden tanto con el contenido del Quote Tweet como con el contenido del Post original que se citó.
Search Posts se comporta de manera diferente: solo coincide con el contenido del Quote Tweet, no con el Post original.

Especificidad y eficiencia

No se recomienda usar operadores amplios como una sola palabra clave o un hashtag: coincidirán con un volumen masivo de Posts y consumirán rápidamente tu conexión.
Consejos para crear reglas efectivas:
  1. Empieza específico, luego amplía — crea reglas dirigidas que devuelvan resultados relevantes
  2. Usa múltiples operadores — combina operadores para reducir resultados
  3. Vigila tu recuento de caracteres — toda la cadena de la regla cuenta para el límite
Ejemplo de progresión:

Construir una regla de forma iterativa

Paso 1: comienza con una regla básica

Paso 2: prueba y reduce según los resultados

Notamos Posts en muchos idiomas. Añade un filtro de idioma:
Estamos obteniendo felicitaciones de cumpleaños. Exclúyelas junto con los Retweets:

Paso 3: amplía para una mejor cobertura

Queremos capturar más sentimiento. Añade palabras clave relacionadas:

Paso 4: ajusta según las tendencias

Están apareciendo Posts de vacaciones. Exclúyelos:

Añadir y eliminar reglas

Usa POST /2/tweets/search/stream/rules para añadir o eliminar reglas.

Añadir reglas

Envía un cuerpo JSON add con el value (la regla) y un tag opcional (para identificar los Posts coincidentes):

Eliminar reglas

Envía un cuerpo JSON delete con los IDs de las reglas a eliminar:

Ejemplos de reglas

Seguimiento de un desastre natural

Coincide con Posts de agencias meteorológicas sobre el huracán Harvey:

Análisis de sentimiento para #nowplaying

Sentimiento positivo:
Sentimiento negativo:

Uso de Post annotations

Encuentra Posts en japonés sobre mascotas (no gatos) con imágenes usando el operador context:: Primero, utiliza Post lookup con tweet.fields=context_annotations para identificar los IDs de domain.entity:
  • Cats: domain 66, entity 852262932607926273
  • Pets: domain 65, entity 852262932607926273

Coincidencia semántica con embeddings (Enterprise)

Usa el operador embedding: para coincidir con Posts por significado conceptual en lugar de palabras clave. Esto requiere Enterprise + Embedding tier.
Combínalo con operadores estructurales para mayor precisión:
Consulta la referencia de operadores para todos los detalles y las mejores prácticas.

Próximos pasos

Referencia de operadores

Lista completa de operadores disponibles

Quickstart de filtered stream

Conéctate a tu stream

Código de ejemplo

Ejemplos de código en varios lenguajes