Por Sorsa Editorial

Actualizado el 8 de julio de 2026: reformulado el precio de extracción de artículos a una tarifa por cada 1,000, agregada la asignación inicial de 100 solicitudes gratis, y recortada la comparación con la API oficial de X a la capacidad de acceso a artículos.

Conclusión clave Los Artículos de X son publicaciones de formato largo en X que guardan hasta aproximadamente 100,000 caracteres, con una imagen de portada y formato rico. La API oficial de X expone solo un envoltorio t.co, no el cuerpo. Obtener el texto completo, la imagen de portada, la fecha de publicación y las métricas de engagement toma una llamada REST dedicada.

Sorsa API, un proveedor alternativo de API de Twitter/X, cierra ese hueco con un endpoint dedicado POST /v3/article que devuelve el objeto completo del artículo como JSON en una sola solicitud: texto del cuerpo, imagen de portada, fecha de publicación y cada métrica de engagement, sin OAuth, sin revisión de app y sin navegador headless. Cada extracción es una sola solicitud, desde $1.80 por cada 1,000 artículos, sobre un límite de 20 solicitudes por segundo que aplica en todos los planes. Las claves nuevas incluyen 100 solicitudes gratis, sin tarjeta requerida, así que el endpoint se puede probar antes de cualquier gasto.

Desde que X abrió los Artículos a todos los suscriptores Premium en enero de 2026, más periodistas, analistas y equipos de proyecto publican contenido de formato largo de forma nativa en lugar de en Medium o Substack. La trampa para cualquiera que construya monitoreo o analítica: la API oficial de X nunca fue diseñada en torno al objeto de Artículo, así que una consulta de tweet estándar entrega un enlace corto y nada más. Esta guía es una referencia práctica para trabajar con la API de Artículos de X: qué es el formato, por qué los endpoints oficiales no lo devuelven, y cómo extraer el cuerpo completo del artículo, los metadatos y las métricas en una llamada REST, con Python ejecutable para detección, benchmarking de competidores y análisis de contenido.

Tabla de contenidos

¿Qué son los Artículos de X? {#what-are-x-articles}

Los Artículos de X son un formato de publicación de formato largo nativo en X (antes Twitter) que deja a las cuentas elegibles publicar piezas con formato de hasta aproximadamente 100,000 caracteres, mucho más allá del límite de 280 caracteres del tweet. Cada Artículo tiene una imagen de portada, un título, texto del cuerpo con encabezados y listas, multimedia incrustada y su propia fecha de publicación, y aparece bajo una pestaña de Artículos dedicada en el perfil del autor.

X lanzó los Artículos el 8 de marzo de 2024, inicialmente para los suscriptores Premium+ y las Organizaciones Verificadas. Según Engadget, el tope aterriza alrededor de 100,000 caracteres, contra 25,000 para la función separada de publicaciones largas. El 7 de enero de 2026, el jefe de producto de X, Nikita Bier, anunció la expansión de la función a todos los suscriptores Premium, terminando la exclusividad de Premium+. Social Media Today reportó que X emparejó el empujón con un premio único de $1 millón para el mejor Artículo de formato largo de su periodo de pago de finales de enero de 2026, abierto a los usuarios Premium de EE. UU. que publicaran piezas originales de al menos 1,000 palabras y juzgado principalmente por las impresiones de la Verified Home Timeline.

Unas cuantas propiedades importan cuando construyes contra este formato:

  • Los Artículos cargan su propio objeto de engagement, con patrones que difieren de los tweets regulares, notablemente tasas de guardado más altas y tasas de retweet más bajas.
  • La publicación de anuncio que enlaza un Artículo sigue siendo un tweet ordinario; el cuerpo del artículo vive en un objeto separado.
  • La fecha de publicación del Artículo es distinta del created_at del tweet de anuncio.

Por qué la API oficial de X no devuelve el contenido de los artículos {#why-the-official-x-api-doesnt-return-article-content}

La API oficial de X no expone los cuerpos de los Artículos. Cuando un autor publica un Artículo, X crea un tweet de anuncio que enlaza a él, y una consulta de tweet estándar devuelve solo el texto de ese tweet, que contiene un enlace corto t.co en lugar del contenido del artículo. Seguir el enlace redirige a una página web renderizada en x.com/i/article/{id}, no a un endpoint JSON, así que el cuerpo, la imagen de portada y la fecha de publicación se quedan fuera de alcance a través de las llamadas normales de lectura de publicación.

Una consulta v2 estándar del tweet de anuncio devuelve algo como esto:

json
{
  "data": {
    "id": "1234567890",
    "text": "Just published a new piece on the state of crypto Twitter in 2026 https://t.co/XYZ123",
    "edit_history_tweet_ids": ["1234567890"]
  }
}

Ese enlace t.co es todo el payload. No hay cuerpo, ni imagen de portada, ni fecha de publicación.

El campo note_tweet no resuelve esto. Se agregó para las publicaciones largas de 25,000 caracteres, una función diferente: un solo blob de texto sin formato, sin imagen de portada, sin fecha de publicación separada y con un techo muy por debajo del límite del Artículo. Leer note_tweet te da el texto de la publicación larga, nunca el contenido del Artículo.

Los rodeos a los que los equipos recurren todos involucran automatización de navegador: manejar un navegador headless a la página renderizada del artículo con una cookie autenticada y scrapear el DOM. Eso aguanta para algo de una sola vez, pero como pipeline de producción es un impuesto permanente. Corres un clúster de navegadores, rotas cookies antes de que expiren, manejas desafíos y ves la latencia trepar de milisegundos a segundos. Este es el hueco exacto que envía a los equipos a buscar una alternativa a la API de Twitter: los datos son públicos, el patrón de acceso debería ser una llamada REST, y la API oficial todavía te deja buscando un navegador.

Para la recuperación de Artículos en específico, la comparación práctica es menos sobre el precio por llamada y más sobre si el cuerpo es alcanzable en absoluto. La tabla de abajo contrasta una API de datos de X de solo lectura que expone un endpoint de artículo directo con la API oficial de X.

Sorsa APIAPI oficial de X
Acceso al cuerpo del artículoSí, texto completo vía POST /v3/articleNo, solo un envoltorio t.co en el texto del tweet
Imagen de portada y fecha de publicaciónDevueltas en la misma llamadaNo expuestas a través de los endpoints de lectura de publicación
ConfiguraciónMinutos (registro más clave)Aprobación de proyecto de desarrollador antes del acceso
Costo por extracción de artículodesde $1.80 por cada 1,000 artículos (según el plan)Cuerpo no disponible vía API; scraping en su lugar
Publicar o escribir ArtículosNo (solo lectura)

Si necesitas publicar Artículos o escribir en X, ese es el territorio de la API oficial, ya que una API de datos de X de solo lectura no publica. Para extraer el contenido de artículos a un precio de tarifa plana y predecible sin un stack de scraping, un endpoint de artículo directo es el camino más simple. Sorsa API es nuestro producto, así que lee la tabla como la comparación de un proveedor y prueba cualquier proveedor contra tu propia carga de trabajo antes de comprometerte.

Artículos de X vs publicaciones largas vs hilos {#x-articles-vs-long-posts-vs-threads}

X tiene tres mecanismos de formato largo distintos, y son fáciles de confundir. Los tweets regulares tienen un tope de 280 caracteres. Las publicaciones largas (a veces llamadas extended posts) alcanzan 25,000 caracteres para los suscriptores Premium y emergen en la API como note_tweet. Los Artículos de X son un formato separado de hasta aproximadamente 100,000 caracteres con encabezados, texto en negrita y cursiva, listas, multimedia incrustada, una imagen de portada, y una pestaña de perfil dedicada.

FunciónTweet regularPublicación larga (Premium)Artículo de X
Longitud máxima280 caracteres25,000 caracteres~100,000 caracteres
FormatoNingunoNingunoEncabezados, negrita, cursiva, listas, multimedia
Imagen de portadaNoNo
Fecha de publicación separadaNoNo
Pestaña de perfil dedicadaNoNoSí (pestaña de Artículos)
Campo de la API oficialtextnote_tweet.textNinguno expuesto directamente
Devuelto por /2/tweetsSí, completoSí, con tweet.fields=note_tweetNo, solo un envoltorio t.co

La conclusión para cualquiera que construya monitoreo: los tweets regulares y las publicaciones largas son alcanzables a través de la API estándar con salvedades, pero los cuerpos de los Artículos no lo son, así que necesitan un método de recuperación dedicado.

Cuándo necesitas acceso programático a los Artículos de X {#when-you-need-programmatic-access-to-x-articles}

Necesitas extraer objetos de Artículo, no solo sus tweets de anuncio, cada vez que el cuerpo de formato largo en sí es el dato. Los casos comunes son la inteligencia de contenido competitiva, el archivado duradero de autores específicos, el NLP sobre texto de formato largo limpio, el benchmarking de engagement contra los tweets regulares y el monitoreo de medios o periodistas donde los Artículos son una fuente de primera clase en lugar de una idea tardía de scraping.

Inteligencia de contenido competitiva. Los Artículos de formato largo revelan la estrategia de mensajería de una empresa mucho más claramente que su flujo de tweets cortos, porque los Artículos son deliberados y estructurados. Extraer los Artículos de competidores semanalmente y compararlos es un bucle de bajo esfuerzo y alta señal. Se empareja naturalmente con un flujo de análisis de competencia más amplio.

Archivado y bases de datos de contenido. Si tu equipo depende de analistas, traders, o fundadores específicos, un archivo duradero te protege cuando una publicación se edita, se borra o se esconde. Los campos full_text, published_at y de autor le dan a un almacén buscable todo lo que necesita, y puedes extender el mismo enfoque con la recuperación de tweets históricos para material más viejo.

Entrenamiento y análisis de NLP. Los Artículos están entre el texto de formato largo más limpio de la plataforma: escrito, editado e intencionalmente estructurado, lo que los hace más adecuados para el trabajo de sentimiento y el modelado de tópicos que el ruidoso flujo de tweets cortos. El patrón más amplio está en nuestra guía de análisis de sentimiento y de tópicos.

Benchmarking de engagement. Los Artículos se inclinan hacia tasas de guardado más altas y tasas de retweet más bajas que los tweets, así que compararlos contra las publicaciones regulares distorsiona los números. Extrae los objetos de Artículo por separado y analízalos como su propia clase, de la misma forma en que abordarías la analítica a nivel de tweet.

Monitoreo de periodistas y líderes de opinión. Con X cortejando activamente a los escritores, los periodistas publican en Artículos más a menudo, así que una herramienta de monitoreo de medios necesita la ingesta de Artículos como fuente primaria. Para la detección en menos de un minuto de nuevos Artículos de una lista de vigilancia, la arquitectura coincide con el monitoreo en tiempo real.

Extraer un Artículo de X: el endpoint {#fetching-an-x-article-the-endpoint}

Recuperar un Artículo de X a través de una API REST toma una llamada: envía la URL o el ID numérico del tweet de anuncio a un endpoint de artículo, y la respuesta devuelve el texto completo del cuerpo, el fragmento de vista previa, la URL de la imagen de portada, la fecha de publicación y los conteos de engagement como JSON. No hay apretón de manos OAuth ni renderizado de navegador involucrados; la autenticación es una sola clave API en un encabezado de solicitud.

En Sorsa, ese endpoint es POST /v3/article. La especificación completa vive en la referencia del endpoint de artículo.

Solicitud

POST https://api.sorsa.io/v3/article
Content-Type: application/json
ApiKey: YOUR_API_KEY
json
{
  "tweet_link": "https://x.com/SorsaApp/status/1234567890"
}

El campo tweet_link acepta la URL completa del tweet de anuncio o solo el ID numérico del tweet.

Respuesta (200)

json
{
  "full_text": "this isn't a cosmetic rebrand. it's a response to how crypto twitter actually works in 2026...",
  "preview_text": "this isn't a cosmetic rebrand. it's a response to how crypto twitter actually works in 2026...",
  "cover_image_url": "https://pbs.twimg.com/media/G-t2hYTaIAAstc8.jpg",
  "published_at": "2026-01-15T16:24:02Z",
  "likes_count": 315,
  "retweet_count": 41,
  "reply_count": 80,
  "quote_count": 37,
  "bookmark_count": 38,
  "views_count": 36538,
  "author": {
    "id": "1934538036466810880",
    "username": "SorsaApp",
    "display_name": "Sorsa",
    "followers_count": 6050,
    "verified": false
  }
}
CampoDescripción
full_textCuerpo completo del artículo, a menudo decenas de miles de caracteres
preview_textFragmento truncado mostrado en la cronología antes de «Leer más»
cover_image_urlURL de la imagen de portada, null si no se puso portada
published_atMarca de tiempo de publicación ISO 8601, distinta del created_at del tweet de anuncio
likes_countLikes
retweet_countRetweets
reply_countRespuestas
quote_countTweets citados
bookmark_countGuardados
views_countImpresiones
authorObjeto de perfil de autor completo

Una nota sobre un nombre de campo que vale la pena manejar en el borde de tu pipeline: la respuesta del artículo usa views_count, mientras que el objeto de tweet estándar usa view_count. Si empujas ambos a través del mismo código, normaliza la clave. El mapeo completo está en la referencia de formato de respuesta.

Quickstart

bash
curl -X POST https://api.sorsa.io/v3/article \
  -H "ApiKey: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"tweet_link": "https://x.com/SorsaApp/status/1234567890"}'
python
import requests

API_KEY = "YOUR_API_KEY"
BASE_URL = "https://api.sorsa.io/v3"

def get_article(tweet_link: str) -> dict:
    """Fetch a single X Article by its announcement tweet URL or ID."""
    resp = requests.post(
        f"{BASE_URL}/article",
        headers={"ApiKey": API_KEY, "Content-Type": "application/json"},
        json={"tweet_link": tweet_link},
        timeout=30,
    )
    resp.raise_for_status()
    return resp.json()


if __name__ == "__main__":
    article = get_article("https://x.com/SorsaApp/status/1234567890")
    print(f"Author:      @{article['author']['username']}")
    print(f"Published:   {article['published_at']}")
    print(f"Views:       {article['views_count']:,}")
    print(f"Body length: {len(article['full_text']):,} chars")

Sin aprobación de portal de desarrolladores y sin baile de OAuth: la autenticación es un encabezado. Las claves nuevas vienen del dashboard, y la guía de quickstart cubre la configuración de principio a fin.

Detectar si una publicación es un Artículo de X {#detecting-whether-a-post-is-an-x-article}

En un pipeline en vivo rara vez tienes una lista limpia de URLs de artículos; tienes un flujo de publicaciones, algunas regulares y algunas tweets de anuncio de Artículos. El tweet de anuncio se sienta en la ruta usual x.com/{username}/status/{id}, así que la URL por sí sola no lo identifica. El enfoque confiable es intentar el endpoint de artículo primero y recurrir a una consulta de tweet estándar cuando la respuesta carece de un cuerpo sustancial.

python
import requests
from typing import Literal, TypedDict

API_KEY = "YOUR_API_KEY"
BASE_URL = "https://api.sorsa.io/v3"

class Content(TypedDict):
    type: Literal["article", "tweet"]
    data: dict

def get_content(tweet_link: str) -> Content:
    """Return an article object if the link is an Article, else the tweet."""
    headers = {"ApiKey": API_KEY, "Content-Type": "application/json"}

    try:
        resp = requests.post(
            f"{BASE_URL}/article",
            headers=headers,
            json={"tweet_link": tweet_link},
            timeout=30,
        )
        if resp.status_code == 200:
            article = resp.json()
            # Articles carry a substantial body. A short or missing
            # full_text means this was not an Article.
            if article.get("full_text") and len(article["full_text"]) > 500:
                return {"type": "article", "data": article}
    except requests.RequestException:
        pass

    resp = requests.post(
        f"{BASE_URL}/tweet-info",
        headers=headers,
        json={"tweet_link": tweet_link},
        timeout=30,
    )
    resp.raise_for_status()
    return {"type": "tweet", "data": resp.json()}

El umbral de 500 caracteres funciona bien en la práctica. Para ser más estricto, revisa también cover_image_url o published_at, ambos campos específicos de Artículo. La consulta de publicación individual aquí es POST /v3/tweet-info, que devuelve el objeto de tweet estándar.

Benchmarking de Artículos de competidores {#benchmarking-competitor-articles}

Hacer benchmarking de los Artículos de formato largo significa extraer las métricas de cada uno y normalizarlas por vista, porque los conteos crudos favorecen a las cuentas con audiencias más grandes. Las señales que más importan para los Artículos son el engagement por cada 1,000 vistas y la tasa de guardado por cada 1,000 vistas: los guardados rastrean la intención de guardar-para-después, que correlaciona con la profundidad y la autoridad y apenas registra en los tweets regulares.

python
import requests
from dataclasses import dataclass
from datetime import datetime

API_KEY = "YOUR_API_KEY"
BASE_URL = "https://api.sorsa.io/v3"

@dataclass
class ArticleMetrics:
    author: str
    published_at: datetime
    views: int
    likes: int
    bookmarks: int
    replies: int
    retweets: int
    quotes: int
    body_length: int

    @property
    def engagement_rate(self) -> float:
        """Engagement events per 1,000 views."""
        if self.views == 0:
            return 0.0
        total = self.likes + self.bookmarks + self.replies + self.retweets + self.quotes
        return (total / self.views) * 1000

    @property
    def bookmark_rate(self) -> float:
        """Bookmarks per 1,000 views."""
        if self.views == 0:
            return 0.0
        return (self.bookmarks / self.views) * 1000


def fetch_article_metrics(tweet_link: str) -> ArticleMetrics:
    resp = requests.post(
        f"{BASE_URL}/article",
        headers={"ApiKey": API_KEY, "Content-Type": "application/json"},
        json={"tweet_link": tweet_link},
        timeout=30,
    )
    resp.raise_for_status()
    a = resp.json()
    return ArticleMetrics(
        author=a["author"]["username"],
        published_at=datetime.fromisoformat(a["published_at"].replace("Z", "+00:00")),
        views=a["views_count"],
        likes=a["likes_count"],
        bookmarks=a["bookmark_count"],
        replies=a["reply_count"],
        retweets=a["retweet_count"],
        quotes=a["quote_count"],
        body_length=len(a["full_text"]),
    )


def benchmark(article_links: list[str]) -> list[ArticleMetrics]:
    results = []
    for link in article_links:
        try:
            results.append(fetch_article_metrics(link))
        except requests.HTTPError as e:
            print(f"Skipping {link}: {e}")
    return sorted(results, key=lambda m: m.engagement_rate, reverse=True)

Construir la lista de entrada de URLs de Artículos es un paso separado: escanea las publicaciones recientes de cada cuenta en la lista de vigilancia y quédate con las que su texto es solo un enlace t.co a x.com/i/article. Un benchmark sobre 50 Artículos de competidores son 50 solicitudes, bien dentro del plan de entrada, y correrlo semanalmente cuesta unos pocos cientos de solicitudes al mes por competidor. Para patrones de lotes y manejo de cursor, revisa Optimizing API Usage.

Analizar el contenido de un artículo con NLP {#analyzing-article-content-with-nlp}

Los cuerpos de los artículos están bien adaptados al NLP porque el texto es limpio: escrito, editado y estructurado, con mucho menos del ruido que hace difíciles de modelar a los tweets cortos. Puedes pasar full_text directo a un modelo de sentimiento o de resumen con poco preprocesamiento. La recuperación y el análisis son capas separadas: obtén el objeto del artículo, luego entrega su cuerpo a cualquier proveedor de modelos que uses.

python
import os
import requests

SORSA_KEY = os.environ["SORSA_API_KEY"]

def fetch_article(tweet_link: str) -> dict:
    resp = requests.post(
        "https://api.sorsa.io/v3/article",
        headers={"ApiKey": SORSA_KEY, "Content-Type": "application/json"},
        json={"tweet_link": tweet_link},
        timeout=30,
    )
    resp.raise_for_status()
    return resp.json()


def build_prompt(article: dict) -> str:
    return (
        "Analyze this X Article. Return JSON with: sentiment "
        "(positive, negative, neutral, or mixed), main_topics (3 to 5 tags), "
        "and a 2 to 3 sentence neutral summary.\n\n"
        f"Body:\n{article['full_text']}"
    )

# Pass build_prompt(fetch_article(link)) to the model provider of your choice.

Como una sola clave maneja 20 solicitudes por segundo, la recuperación rara vez es el cuello de botella; la capa del modelo lo es. Para alto rendimiento, obtén los artículos primero, luego paraleliza el análisis contra los límites de concurrencia de tu proveedor. Esto funciona bien como un trabajo diario sobre una lista de vigilancia de autores.

Precio y límites de tasa {#pricing-and-rate-limits}

Las extracciones de artículo cuestan desde $1.80 por cada 1,000 artículos ($0.0018 cada una en el plan más grande), y cada extracción cuenta como una solicitud contra una cuota mensual sin importar qué tan largo sea el cuerpo: sin cobro por carácter, sin recargo por imágenes de portada, sin un límite de tasa separado en el endpoint. Un límite de 20 solicitudes por segundo aplica de forma uniforme, y una sola llamada de artículo rara vez es un cuello de botella. Cada clave nueva empieza con 100 solicitudes gratis, sin tarjeta requerida, que nunca expiran y funcionan en los 40 endpoints, así que el endpoint de artículo se puede ejercitar antes de elegir un plan.

PlanSolicitudes mensualesArtículos por mesPor cada 1,000 artículos
Starter ($49)10,00010,000$4.90
Pro ($199)100,000100,000$1.99
Enterprise ($899)500,000500,000$1.80

La mayoría de las cuentas publican menos de un Artículo a la semana, así que extraer cada Artículo de 200 autores en la lista de vigilancia semanalmente usa aproximadamente 800 a 2,000 solicitudes al mes, bien dentro del plan Starter con espacio para otros endpoints. Los detalles completos de los planes están en el desglose de precios de Sorsa API, y la economía por llamada a lo largo de la API oficial de X y un modelo de tarifa plana se desglosa en la guía de precios de la API de X vigente. Si estás moviendo una integración existente, el camino de migración desde la API oficial de X mapea los endpoints y los cambios de autenticación.

Un equipo de inteligencia competitiva de una SaaS B2B, de unas diez personas, quería rastrear los Artículos de formato largo de aproximadamente 150 a 200 cuentas de competidores y de analistas cada semana. En la API oficial de X los cuerpos simplemente no eran alcanzables, así que la alternativa realista era un clúster de scraping con navegador headless con rotación de cookies y manejo de desafíos. Cambiar a un endpoint de artículo directo convirtió el trabajo en unos pocos cientos a un par de miles de solicitudes al mes, cómodamente dentro del plan de entrada, sin infraestructura de scraping que mantener viva. La victoria no fue un porcentaje afinado; fue quitar toda una superficie de mantenimiento para datos que debieron ser una llamada REST.

Cómo empezar

El camino más rápido de cero a una extracción de artículo funcional:

  1. Pega la URL de un tweet de artículo en el API Playground para ver la respuesta JSON en el navegador antes de escribir código.
  2. Consigue una clave API del dashboard y corre la llamada de curl de arriba.
  3. Pon la función get_article de Python en un notebook para confirmar la integración, luego agrega reintentos ante el 429 y una capa de persistencia para producción.

La autenticación es un encabezado ApiKey, la configuración toma minutos sin cola de aprobación, y cada endpoint comparte las mismas 20 solicitudes por segundo. Las cuentas nuevas incluyen 100 solicitudes gratis, sin tarjeta requerida, que nunca expiran y cubren los 40 endpoints, y las extracciones de artículo cuestan desde $1.80 por cada 1,000 después de eso, tomando de la misma cuota que el resto de la API de lectura, así que agregar el endpoint a un flujo de trabajo existente no necesita una integración separada.

Preguntas frecuentes {#faq}

¿Los Artículos de X están disponibles a través de la API oficial de X?

No directamente. La API oficial de X no tiene un endpoint específico de artículos, y el tweet que anuncia un Artículo contiene solo un enlace t.co en su campo de texto, sin cuerpo, imagen de portada, ni fecha de publicación. El campo note_tweet cubre las publicaciones largas de 25,000 caracteres, una función diferente. Para recuperar los cuerpos de los artículos, o bien corres automatización de navegador contra la página renderizada o usas una API REST de terceros que resuelve el objeto del artículo.

¿Cuál es la diferencia entre los Artículos de X y las publicaciones largas?

Las publicaciones largas (extended posts) son tweets de hasta 25,000 caracteres para los suscriptores Premium; aparecen en línea con un botón «Mostrar más», sin fecha de publicación separada, sin imagen de portada y sin formato. Los Artículos de X son un formato distinto de hasta aproximadamente 100,000 caracteres con encabezados, texto en negrita y cursiva, listas, multimedia incrustada, una imagen de portada, y una pestaña de Artículos dedicada en el perfil. Los Artículos están más cerca de una entrada de Substack que de un tweet.

¿Cómo obtienes el texto completo de un Artículo de X?

Envía la URL o el ID numérico del tweet de anuncio a un endpoint de artículo y lee la respuesta JSON. En Sorsa API, POST /v3/article devuelve el cuerpo completo, el texto de vista previa, la imagen de portada, la fecha de publicación y los conteos de engagement en una sola solicitud, autenticado con un encabezado ApiKey y sin OAuth. Cada llamada cuenta como una solicitud de la cuota del plan.

¿Puedes recuperar Artículos de X publicados en el pasado?

Sí, siempre que el Artículo siga siendo público en X. Los Artículos tienen una URL permanente una vez publicados, así que cualquier Artículo histórico es recuperable por la URL o el ID de su tweet de anuncio. Si el autor luego borra el Artículo, la consulta devuelve un error de no encontrado. Para archivos de tweets más viejos más allá de los Artículos, un flujo de recuperación histórica dedicado pagina hacia atrás hasta la primera publicación de una cuenta.

¿Cuánto cuesta extraer el contenido de un Artículo de X por API?

En Sorsa API, una extracción de artículo es una sola solicitud, con un precio desde $1.80 por cada 1,000 artículos ($0.0018 cada uno en el plan más grande), sin recargo por carácter sin importar qué tan largo sea el cuerpo. Cada clave nueva incluye 100 solicitudes gratis, sin tarjeta requerida, que nunca expiran y funcionan en los 40 endpoints, así que el endpoint se puede probar antes de comprometerse con un plan. Extraer unos pocos cientos de Artículos a la semana cabe dentro del plan de entrada con cuota de sobra para otros endpoints.

¿Cómo puedes saber si una publicación es un Artículo de X antes de extraerlo?

El tweet de anuncio usa la ruta normal x.com/{username}/status/{id}, así que la URL por sí sola no es una señal confiable. El método dependable es llamar al endpoint de artículo primero y tratar el resultado como un Artículo solo cuando full_text es sustancial (un umbral de 500 caracteres funciona bien); un cuerpo corto o faltante significa que era una publicación regular. La presencia de cover_image_url o published_at lo confirma.


Revisado por Keksich, fundador de Sorsa, marketer e investigador de la API de X.

Esta guía se apoya en el trabajo práctico corriendo el endpoint /article de Sorsa en producción, la referencia v3 vigente de Sorsa API para los nombres de campos y de parámetros, y la forma de respuesta en vivo del endpoint mismo. La cronología de la función y los detalles del premio se verificaron contra la cobertura de Engadget del lanzamiento de marzo de 2024 y el límite de aproximadamente 100,000 caracteres, y el reporte de Social Media Today sobre la expansión Premium de enero de 2026 y el concurso de Artículos de $1 millón. Las capacidades del endpoint y el precio reflejan los planes publicados de Sorsa. Verificado el 8 de julio de 2026.