Raw - Suscribirse a artículos
El Raw WebSocket ofrece una alternativa ligera y simplificada al WebSocket enriquecido. Entrega los datos básicos del artículo en tiempo real sin coincidencia de tickers, enriquecimiento por IA ni resolución de entidades de empresa. Esto lo hace ideal para casos de uso en los que necesitas datos de artículos rápidos y básicos sin la sobrecarga del procesamiento avanzado.
Diferencias clave con el WebSocket enriquecido:
- Endpoint:
wss://wss.finlight.me/raw(en lugar dewss://wss.finlight.me) - Sin datos iniciales: A diferencia del WebSocket enriquecido, el Raw WebSocket no envía el artículo coincidente más reciente al conectarse o reconectarse. Solo recibirás artículos recién publicados después de conectarte.
- Sin enriquecimiento por IA: Los artículos se entregan sin análisis de sentimiento, coincidencia de empresas ni resolución de tickers.
- Parámetros simplificados: Sin los parámetros
tickers,countries,includeEntitiesniextended.
Modelo de artículo
El Raw WebSocket devuelve un modelo de artículo simplificado solo con los campos básicos. No se incluyen entidades de empresa ni enriquecimientos generados por IA.
- Name
link- Type
- string
- Description
URL del artículo completo.
- Name
source- Type
- string
- Description
Sitio web de origen. P. ej.
www.reuters.com
- Name
title- Type
- string
- Description
Título del artículo.
- Name
summary- Type
- string
- Description
Resumen del artículo si existe. Puede ser nulo.
- Name
publishDate- Type
- Date
- Description
Fecha de publicación como fecha ISO.
- Name
createdAt- Type
- Date
- Description
Fecha de creación interna del artículo en el sistema de finlight como fecha ISO.
- Name
revisedDate- Type
- Date | null
- Description
Fecha de la última revisión del artículo tras la publicación inicial.
nullcuando el artículo nunca se ha revisado. Presente cuandoincludeUpdatesestá habilitado y el artículo ha sido revisado.
- Name
isUpdate- Type
- boolean
- Description
truecuando esta entrega se desencadena por una actualización del artículo posterior a la publicación. Solo presente cuandoincludeUpdatesestá habilitado.
- Name
language- Type
- string
- Description
Código de idioma en ISO 639-1. P. ej.
en|de|fr
- Name
images- Type
- string[]
- Description
Array de URLs de imágenes del artículo.
- Name
countries- Type
- string[]
- Description
Array de códigos de país en formato ISO 3166-1 alpha-2 que representan los países relacionados con el artículo. P. ej.
["US", "GB", "DE"]. Puede estar vacío.
- Name
categories- Type
- string[]
- Description
Array de categorías del artículo. Valores posibles:
markets|economy|business|politics|geopolitics|regulation|technology|energy|commodities|crypto|health|climate|security. Puede estar vacío.
Obtener artículos
Después de conectarte, solo recibirás artículos recién publicados que coincidan con tus criterios. No se envía ningún artículo inicial/histórico al conectarte.
Al suscribirte, puedes especificar los siguientes parámetros para filtrar los artículos que recibes:
- Name
query- Type
- string
- Description
Consulta de búsqueda para encontrar artículos relevantes. Admite filtrado a nivel de campo para
source,titleysummary. Consultas avanzadas
- Name
sources- Type
- string[]
- Description
Filtra por una o varias fuentes. P. ej.
["www.reuters.com", "www.cnbc.com"]. Consulta el endpoint de fuentes para los valores válidos.
- Name
excludeSources- Type
- string[]
- Description
Excluye una o varias fuentes. P. ej.
["www.reuters.com", "www.cnbc.com"]. Consulta el endpoint de fuentes para los valores válidos.
- Name
language- Type
- string
- Description
Filtra por idioma (ISO 639-1). Por defecto es
en, que devuelve solo inglés y excluye otros idiomas — consulta Idioma y cobertura.
- Name
includeUpdates- Type
- boolean
- Description
Cuando está habilitado, los artículos actualizados se vuelven a entregar con
isUpdate=truey una marca de tiemporevisedDate.
Request
import { FinlightApi } from 'finlight-client'
const client = new FinlightApi(
{
apiKey: 'YOUR_API_KEY', // Replace with your API key
},
{
takeover: true, // WebSocket options
},
)
client.rawWebsocket.connect(
{
query: 'Nvidia',
language: 'en',
sources: ['www.reuters.com', 'www.cnbc.com'],
},
(article) => {
console.log('New article received:', article)
},
)
Response
{
"link": "https://www.example.com/article1",
"source": "www.example.com",
"title": "Stock Market Hits New Highs",
"summary": "A brief summary of the article...",
"publishDate": "2023-10-01T12:34:56Z",
"createdAt": "2023-10-01T12:35:10Z",
"language": "en",
"images": [
"https://www.example.com/image1.jpg",
"https://www.example.com/image2.jpg"
],
"countries": ["US"],
"categories": ["markets"]
}
Response (includeUpdates: true)
{
"link": "https://www.example.com/article1",
"source": "www.example.com",
"title": "Stock Market Hits New Highs — Updated",
"summary": "An updated summary of the article...",
"publishDate": "2023-10-01T12:34:56Z",
"createdAt": "2023-10-01T12:35:10Z",
"revisedDate": "2023-10-02T08:00:00Z",
"isUpdate": true,
"language": "en",
"images": [
"https://www.example.com/image1.jpg"
],
"countries": ["US"],
"categories": ["markets"]
}
Filtrado a nivel de campo en query
El Raw WebSocket admite filtrado a nivel de campo dentro del parámetro query para los siguientes campos:
source- Filtra por la fuente del artículotitle- Filtra por el contenido del título del artículosummary- Filtra por el contenido del resumen del artículo
Ejemplos:
query=title:Nvidia
query=summary:earnings +title:Tesla
query=source:www.reuters.com -crypto
Consulta la guía de Creación de consultas avanzadas para más detalles sobre la sintaxis de consulta.
Comportamiento de la conexión
- Autenticación: Usa el mismo encabezado
x-api-keyque el WebSocket enriquecido. Consulta Conceptos básicos de WebSocket para más detalles. - Ping/Pong: Se aplica el mismo mecanismo de keep-alive. Envía mensajes
pingperiódicos para mantener la conexión. - Duración de la conexión: Sujeta al mismo límite de conexión de 2 horas. Implementa la lógica de reconexión en consecuencia.
- Sin datos iniciales: A diferencia del WebSocket enriquecido, conectarse o reconectarse no devuelve el artículo coincidente más reciente. Solo se entregan los artículos recién publicados después de la conexión.