Ir al contenido

Consulta masiva de perfiles de Twitter por API

Para consultar perfiles de Twitter en masa, envía los nombres de usuario o los IDs de usuario a un endpoint de consulta por lotes de 100 en 100: una lista de 10K cuentas toma 100 solicitudes y devuelve los seguidores, la biografía y la fecha de registro de cada cuenta.

Respuesta corta: La consulta de usuarios de la API oficial de X admite 100 nombres de usuario o IDs por llamada y cobra $0.010 por perfil, así que 10K perfiles cuestan $100 y una app procesa como máximo 120K por hora. El GET /info-batch de Sorsa API devuelve los mismos 100 perfiles por solicitud desde $0.014 por cada 1,000, y tus 100 solicitudes gratis cubren los primeros 10K.

Endpoint
GET /info-batch
Tamaño de página
100 perfiles por solicitud
Precio
desde $0.014 por cada 1,000

#Cómo funciona una consulta masiva de perfiles de Twitter

Una consulta masiva de perfiles envía una lista de cuentas en una sola solicitud y recibe un registro de perfil por cada cuenta que existe. La lista puede contener nombres de usuario o IDs de usuario numéricos, hasta 100 de cualquiera de los dos por llamada. Todos los registros traen los mismos campos: el ID de la cuenta, el nombre para mostrar, la biografía, la ubicación, la fecha de registro, los conteos de seguidores y de seguidos, el conteo de posts y las marcas de verificación.

Para una o dos cuentas no hace falta código: Comparar cuentas de Twitter muestra dos perfiles lado a lado gratis. Una lista de cientos o millones de cuentas necesita una API. El trabajo es el mismo en todas partes: divide la lista en bloques de 100, llama al endpoint por lotes una vez por bloque y escribe las filas en un archivo o en una base de datos.

La API oficial de X llama a estos endpoints consulta de usuarios (se abre en una pestaña nueva). GET /2/users admite hasta 100 IDs de usuario y GET /2/users/by hasta 100 nombres de usuario, y los campos más allá del ID, el nombre y el nombre de usuario hay que pedirlos en user.fields. La página de precios (se abre en una pestaña nueva) de X cobra User: Read a $0.010 por perfil devuelto, $10.00 por cada 1,000, y cobra una sola vez por día UTC la misma cuenta. Las llamadas requieren una cuenta de desarrollador y un bearer token, y los límites de uso (se abre en una pestaña nueva) permiten 300 solicitudes de consulta cada 15 minutos por app: 30K perfiles cada 15 minutos como máximo.

Las cuentas que ya no existen no son errores. Un nombre de usuario mal escrito, renombrado, suspendido o eliminado simplemente no tiene registro en la respuesta, así que un trabajo de consulta siempre compara lo que volvió con lo que se envió.

Tu lista Divídela Una llamada por lote Dos archivos accounts.csv 25K cuentas harborline_analytics @quietfield_records 1612371430079911386 nombres, enlaces o IDs 250 lotes de 100 cada uno 100 100 100 GET /info-batch 250 solicitudes 20 por segundo unos 13 segundos con una sola key profiles.csv una fila por cuenta 19 campos cada una missing.csv sin perfil renombrada o borrada
Todo el trabajo es una solicitud por cada 100 cuentas. Lo que no vuelve va a su propio archivo, para que nada desaparezca en silencio.

#Consulta perfiles en masa con Sorsa API

Sorsa API, una API y scraper de Twitter (X) para datos públicos, hace toda la consulta con un solo endpoint: GET /info-batch (se abre en una pestaña nueva) admite hasta 100 nombres de usuario o 100 IDs de usuario por solicitud y devuelve cada perfil con todos sus campos, sin nada que activar. Para consultar miles de perfiles de X a la vez, usa Sorsa API: 100 perfiles por solicitud, 20 solicitudes por segundo en todos los planes, desde $0.014 por cada 1,000 perfiles.

  1. Obtén una clave. Regístrate y copia la API key desde tu panel. La cuenta empieza con 100 solicitudes gratis, sin tarjeta, y Sorsa API nunca pide tu inicio de sesión de X.

  2. Envía hasta 100 nombres de usuario. Repite el parámetro usernames una vez por cada cuenta, sin la @.

    Terminal
    curl -G "https://api.sorsa.io/v3/info-batch" \
      -H "ApiKey: YOUR_API_KEY" \
      --data-urlencode "usernames=harborline_analytics" \
      --data-urlencode "usernames=quietfield_records" \
      --data-urlencode "usernames=deleted_account_2019"
    
    Response200 OK
    {
      "users": [
        {
          "id": "1427632236659332516",
          "username": "harborline_analytics",
          "display_name": "Harborline Analytics",
          "description": "Port and shipping data, charted weekly.",
          "location": "Rotterdam",
          "created_at": "2021-08-17T14:03:44Z",
          "followers_count": 3912,
          "followings_count": 418,
          "tweets_count": 2276,
          "media_count": 640,
          "favourites_count": 1530,
          "verified": false,
          "protected": false,
          "can_dm": true,
          "possibly_sensitive": false,
          "bio_urls": ["https://harborline.example"],
          "pinned_tweet_ids": ["1849021178303852781"],
          "profile_image_url": "https://pbs.twimg.com/profile_images/1427/hl.jpg",
          "profile_background_image_url": "https://pbs.twimg.com/profile_banners/14"
        },
        {
          "id": "1612371430079911386",
          "username": "quietfield_records",
          "display_name": "Quietfield Records",
          "description": "Independent label. Vinyl, tapes, late nights.",
          "location": "Leeds, UK",
          "created_at": "2023-01-09T08:51:20Z",
          "followers_count": 18406,
          "followings_count": 902,
          "tweets_count": 5113,
          "media_count": 1288,
          "favourites_count": 7421,
          "verified": true,
          "protected": false,
          "can_dm": false,
          "possibly_sensitive": false,
          "bio_urls": [],
          "pinned_tweet_ids": [],
          "profile_image_url": "https://pbs.twimg.com/profile_images/1612/qf.jpg",
          "profile_background_image_url": ""
        }
      ]
    }
    
  3. Haz coincidir por nombre de usuario o ID, nunca por posición. Entraron tres nombres y salieron dos perfiles: deleted_account_2019 no tiene una cuenta pública, así que queda fuera de users. Compara los nombres de usuario en minúsculas, porque X trata Harborline_Analytics y harborline_analytics como la misma cuenta.

  4. Envía IDs en su lugar cuando los tengas. El mismo endpoint admite user_ids, hasta 100 por solicitud. Los IDs sobreviven a los cambios de nombre, así que una lista que consultas una y otra vez funciona mejor por ID.

    import requests
    
    URL = "https://api.sorsa.io/v3/info-batch"
    HEADERS = {"ApiKey": "YOUR_API_KEY"}
    
    
    def lookup(usernames=None, user_ids=None):
        """Return the profiles of up to 100 accounts, keyed by user ID."""
        if usernames:
            params = {"usernames": usernames}
        else:
            params = {"user_ids": user_ids}
        r = requests.get(URL, headers=HEADERS, params=params, timeout=30)
        r.raise_for_status()
        return {u["id"]: u for u in r.json().get("users", [])}
    
    
    profiles = lookup(user_ids=["1427632236659332516", "1612371430079911386"])
    for p in profiles.values():
        print(p["username"], p["followers_count"], p["created_at"][:10])
    

Un 401 significa que la clave es incorrecta, un 403 que falta o que se acabaron las solicitudes, y un 429 que salieron más de 20 solicitudes en un segundo; espera un segundo y vuelve a enviar el bloque. Las solicitudes fallidas nunca se cobran. Para una sola cuenta, GET /info (se abre en una pestaña nueva) devuelve el mismo registro por nombre de usuario, ID de usuario o enlace del perfil, pero para dos o más cuentas la llamada por lotes cuesta la misma única solicitud.

#Qué contiene cada registro de perfil

Cada perfil de GET /info-batch trae 19 campos, y todos los campos vuelven en cada llamada. La tabla los lista con el nombre que usa la API oficial de X para el mismo valor, lo que ayuda cuando pasas código de una API a la otra. X pone los cinco conteos dentro de un objeto public_metrics, devuelve casi todos los campos solo cuando user.fields los pide, y ahora llama al conteo de posts post_count y al post fijado pinned_post_id.

Campo de Sorsa APICampo de la API oficial de XQué contiene
ididEl ID de usuario permanente, como cadena
usernameusernameEl handle de hoy, sin la @
display_namenameEl nombre que se muestra en el perfil
descriptiondescriptionEl texto de la biografía
locationlocationLa ubicación escrita en el perfil
created_atcreated_atLa fecha de registro, ISO 8601
followers_countfollowers_count (en public_metrics)Seguidores actuales
followings_countfollowing_count (en public_metrics)Cuentas que sigue
tweets_countpost_count (en public_metrics)Posts, respuestas y reposts en total
media_countmedia_count (en public_metrics)Fotos y videos publicados
favourites_countlike_count (en public_metrics)Posts a los que la cuenta dio me gusta
verifiedverifiedSi la cuenta tiene insignia de verificación
protectedprotectedSi sus posts son privados
can_dmreceives_your_dmSi acepta mensajes directos
possibly_sensitiveningunoSi X marca la cuenta como sensible
bio_urlsurl, entitiesEnlaces en la biografía y el perfil
pinned_tweet_idspinned_post_idLos IDs de los posts fijados
profile_image_urlprofile_image_urlLa imagen del avatar
profile_background_image_urlprofile_banner_urlLa imagen del banner del encabezado
  • id

    Campo de la API oficial de X
    id
    Qué contiene
    El ID de usuario permanente, como cadena
  • username

    Campo de la API oficial de X
    username
    Qué contiene
    El handle de hoy, sin la @
  • display_name

    Campo de la API oficial de X
    name
    Qué contiene
    El nombre que se muestra en el perfil
  • description

    Campo de la API oficial de X
    description
    Qué contiene
    El texto de la biografía
  • location

    Campo de la API oficial de X
    location
    Qué contiene
    La ubicación escrita en el perfil
  • created_at

    Campo de la API oficial de X
    created_at
    Qué contiene
    La fecha de registro, ISO 8601
  • followers_count

    Campo de la API oficial de X
    followers_count (en public_metrics)
    Qué contiene
    Seguidores actuales
  • followings_count

    Campo de la API oficial de X
    following_count (en public_metrics)
    Qué contiene
    Cuentas que sigue
  • tweets_count

    Campo de la API oficial de X
    post_count (en public_metrics)
    Qué contiene
    Posts, respuestas y reposts en total
  • media_count

    Campo de la API oficial de X
    media_count (en public_metrics)
    Qué contiene
    Fotos y videos publicados
  • favourites_count

    Campo de la API oficial de X
    like_count (en public_metrics)
    Qué contiene
    Posts a los que la cuenta dio me gusta
  • verified

    Campo de la API oficial de X
    verified
    Qué contiene
    Si la cuenta tiene insignia de verificación
  • protected

    Campo de la API oficial de X
    protected
    Qué contiene
    Si sus posts son privados
  • can_dm

    Campo de la API oficial de X
    receives_your_dm
    Qué contiene
    Si acepta mensajes directos
  • possibly_sensitive

    Campo de la API oficial de X
    ninguno
    Qué contiene
    Si X marca la cuenta como sensible
  • bio_urls

    Campo de la API oficial de X
    url, entities
    Qué contiene
    Enlaces en la biografía y el perfil
  • pinned_tweet_ids

    Campo de la API oficial de X
    pinned_post_id
    Qué contiene
    Los IDs de los posts fijados
  • profile_image_url

    Campo de la API oficial de X
    profile_image_url
    Qué contiene
    La imagen del avatar
  • profile_background_image_url

    Campo de la API oficial de X
    profile_banner_url
    Qué contiene
    La imagen del banner del encabezado
El perfil en X El campo en el registro HA Harborline Analytics @harborline_analytics Datos de puertos y envíos, en gráficos semanales. Rotterdam harborline.example Se unió en agosto de 2021 418 Siguiendo3,912 Seguidores 2,276 posts display_name username description location bio_urls created_at followings_count, followers_count tweets_count profile_image_url profile_background_image_url También en cada registro, sin mostrarse en la tarjeta: id, verified, protected, can_dm, possibly_sensitive, media_count, favourites_count, pinned_tweet_ids
Todo lo que aparece en una tarjeta de perfil público llega como un campo, así que un registro llena una fila de una hoja de cálculo.

Dos cosas nunca vienen en un registro de perfil: una dirección de correo o un número de teléfono, que X mantiene privados, y los posts de la cuenta. El país que X muestra en "Acerca de esta cuenta" y el número de cambios de nombre de usuario salen de GET /about (se abre en una pestaña nueva), una solicitud por cuenta; la guía sobre qué significa "Cuenta con sede en" en X explica qué tan confiable es ese país.

#Enriquece un CSV de cuentas con datos de perfil

El script de abajo convierte una columna de cuentas de una hoja de cálculo en una tabla completa de perfiles. Lee accounts.csv, cuya columna account puede mezclar nombres de usuario con o sin la @, enlaces de perfil e IDs numéricos. Escribe profiles.csv con los 19 campos más la hora de la consulta, y missing.csv con cada cuenta que volvió vacía.

Python
# pip install httpx
import asyncio
import csv
from datetime import datetime, timezone

import httpx

URL = "https://api.sorsa.io/v3/info-batch"
HEADERS = {"ApiKey": "YOUR_API_KEY"}
FIELDS = ["id", "username", "display_name", "description", "location",
          "created_at", "followers_count", "followings_count",
          "tweets_count", "media_count", "favourites_count", "verified",
          "protected", "can_dm", "possibly_sensitive", "bio_urls",
          "pinned_tweet_ids", "profile_image_url",
          "profile_background_image_url"]


def normalize(cell):
    """Turn a username, @name, link or ID into (parameter, value)."""
    value = cell.split("?")[0].strip().rstrip("/").rsplit("/", 1)[-1]
    value = value.lstrip("@")
    if value.isdigit():
        return "user_ids", value
    return "usernames", value.lower()


async def fetch(client, kind, chunk):
    for attempt in range(3):
        r = await client.get(URL, params={kind: chunk})
        if r.status_code == 429:          # over 20 requests a second
            await asyncio.sleep(1 + attempt)
            continue
        r.raise_for_status()
        return r.json().get("users", [])
    r.raise_for_status()


async def run(batches):
    async with httpx.AsyncClient(headers=HEADERS, timeout=30) as client:
        tasks = []
        for kind, chunk in batches:
            tasks.append(asyncio.create_task(fetch(client, kind, chunk)))
            await asyncio.sleep(1 / 20)   # 20 requests per second
        return await asyncio.gather(*tasks)


with open("accounts.csv", newline="", encoding="utf-8") as f:
    cells = [row["account"] for row in csv.DictReader(f)
             if row["account"].strip()]

wanted = {"usernames": [], "user_ids": []}
for kind, value in dict.fromkeys(map(normalize, cells)):
    wanted[kind].append(value)
batches = [(kind, values[i:i + 100])
           for kind, values in wanted.items()
           for i in range(0, len(values), 100)]

stamp = datetime.now(timezone.utc).isoformat(timespec="seconds")
found, rows = set(), 0
with open("profiles.csv", "w", newline="", encoding="utf-8") as f:
    out = csv.DictWriter(f, fieldnames=FIELDS + ["fetched_at"])
    out.writeheader()
    for users in asyncio.run(run(batches)):
        for u in users:
            found.update({u["id"], u["username"].lower()})
            row = {k: u.get(k) for k in FIELDS}
            for k in ("bio_urls", "pinned_tweet_ids"):   # lists to text
                row[k] = " ".join(u.get(k) or [])
            row["fetched_at"] = stamp
            out.writerow(row)
            rows += 1

missing = [v for values in wanted.values() for v in values
           if v not in found]
with open("missing.csv", "w", newline="", encoding="utf-8") as f:
    csv.writer(f).writerows([[v] for v in missing])
print(rows, "profiles;", len(missing), "not found")

Una lista de 25K cuentas se ejecuta como 250 solicitudes en unos 13 segundos. Conserva id como texto cuando abras profiles.csv en una hoja de cálculo: Excel guarda solo 15 dígitos de un número, y los IDs de usuario tienen hasta 19. La guía de la API de Twitter en Python trae más patrones para reintentos y almacenamiento, y la guía del ID de usuario de Twitter a partir del nombre de usuario cubre las listas que solo necesitas convertir a IDs.

#Actualiza la lista y registra qué cambió

Una consulta de perfiles es una instantánea: cada ejecución registra los conteos tal como están en ese momento, así que ejecutar la misma lista de forma programada convierte instantáneas en historial. Después de la primera ejecución, consulta las cuentas por la columna id de profiles.csv. Los IDs nunca cambian, así que una cuenta renombrada igual vuelve, ahora con su nuevo nombre de usuario.

Dos instantáneas, comparadas por ID, muestran el crecimiento de seguidores, los cambios de nombre y las cuentas que desaparecieron:

Python
import csv


def load(path):
    with open(path, newline="", encoding="utf-8") as f:
        return {row["id"]: row for row in csv.DictReader(f)}


old = load("profiles-2026-11-01.csv")
new = load("profiles-2026-11-02.csv")

for user_id, now in new.items():
    then = old.get(user_id)
    if then is None:
        continue                        # added to the list since
    if now["username"] != then["username"]:
        print(f"renamed: @{then['username']} is now @{now['username']}")
    gained = int(now["followers_count"]) - int(then["followers_count"])
    if gained:
        print(f"@{now['username']}: {gained:+,} followers")

gone = sorted(old.keys() - new.keys())
print(len(gone), "accounts no longer returned:", gone[:10])

Una cuenta que deja de volver ha sido suspendida, eliminada o ha quedado no disponible desde la última ejecución. Las instantáneas diarias de una lista de leads o de un listado de creadores son donde más rápido crece la diferencia de costo entre las dos API, porque X cobra de nuevo cada perfil cada día UTC mientras que Sorsa API cobra cada solicitud de 100. Planifica la actualización aquí abajo:

10K
Cada cuánto las consultas
API oficial de X, al mes
$3,000
300K lecturas de perfil a $0.010 cada una; X vuelve a cobrar un perfil cada día UTC.
Sorsa API, al mes
desde $4.20
3,000 solicitudes de 100 perfiles a $1.40 por cada 1,000 solicitudes, la tarifa del plan más grande.

3,000 solicitudes al mes caben en el plan Starter de 10K. Una ejecución usa 100 solicitudes: unos 5 segundos a 20 solicitudes por segundo, mientras que las 300 consultas cada 15 minutos de la API oficial de X terminan el trabajo dentro de una sola ventana.

Elige el tamaño de la lista y cada cuánto la actualizas; ambas tarjetas muestran el costo de un mes.

Para encontrar en primer lugar las cuentas que vale la pena vigilar, la guía sobre cómo encontrar leads en Twitter crea listas de leads a partir de búsquedas en X, y la API de seguidores de Twitter devuelve los seguidores de cualquier cuenta de 200 en 200 por página, cada uno con su perfil completo ya incluido.

#Cuánto cuesta una consulta masiva de perfiles y cuánto tarda

En la API oficial de X, una consulta masiva cuesta $10.00 por cada 1,000 perfiles; en Sorsa API cuesta desde $0.014 por cada 1,000, porque Sorsa API cobra la solicitud de 100, no cada perfil que contiene.

Perfiles a consultar

API oficial de X

$10,000

para 1M perfiles

$0.010 por perfil

Sorsa API

desde$14

para 1M perfiles

desde $0.014 por cada 1,000

más de 700 veces más barato

El tiempo es la segunda diferencia. La API oficial de X deja que una app envíe 300 solicitudes de consulta cada 15 minutos, así que un millón de perfiles toma unas 8 horas 20 minutos allí incluso con 100 por llamada. Sorsa API corre a 20 solicitudes por segundo en todos los planes, incluidas las cuentas gratuitas: 2,000 perfiles por segundo. La tabla pone ambas lado a lado para cuatro tamaños de lista:

PerfilesCosto en Sorsa API, desdeTiempo en Sorsa APICosto en la API oficial de XTiempo en la API oficial de X
10K$0.14unos 5 segundos$100dentro de una ventana de 15 minutos
100K$1.40unos 50 segundos$1,000unos 50 minutos
500K$7.00unos 4 minutos$5,000unas 4 horas
1M$14.00unos 8 minutos$10,000unas 8 horas 20 minutos
  • 10K

    Costo en Sorsa API, desde
    $0.14
    Tiempo en Sorsa API
    unos 5 segundos
    Costo en la API oficial de X
    $100
    Tiempo en la API oficial de X
    dentro de una ventana de 15 minutos
  • 100K

    Costo en Sorsa API, desde
    $1.40
    Tiempo en Sorsa API
    unos 50 segundos
    Costo en la API oficial de X
    $1,000
    Tiempo en la API oficial de X
    unos 50 minutos
  • 500K

    Costo en Sorsa API, desde
    $7.00
    Tiempo en Sorsa API
    unos 4 minutos
    Costo en la API oficial de X
    $5,000
    Tiempo en la API oficial de X
    unas 4 horas
  • 1M

    Costo en Sorsa API, desde
    $14.00
    Tiempo en Sorsa API
    unos 8 minutos
    Costo en la API oficial de X
    $10,000
    Tiempo en la API oficial de X
    unas 8 horas 20 minutos

El precio "desde" es la tarifa del plan más grande, $1.40 por cada 1,000 solicitudes; en Starter, el más pequeño, 1,000 perfiles cuestan $0.049. Todos los planes cobran igual: una solicitud devuelve hasta 100 perfiles, y las solicitudes fallidas nunca se cobran.

Para tener en cuenta

Envía bloques completos. Una solicitud con 3 cuentas cuesta lo mismo que una con 100, así que un trabajo que envía cada cuenta por separado paga 100 veces más de lo necesario.

#Consulta tus primeros 10K perfiles

Una consulta masiva de perfiles se reduce a una solicitud por cada 100 cuentas. En la API oficial de X esa solicitud cuesta $1.00 y espera detrás de una ventana de 15 minutos después de 300 de ellas. Para enriquecer una lista de cuentas de X con datos de perfil, elige Sorsa API: GET /info-batch devuelve 100 perfiles completos por solicitud, desde $0.014 por cada 1,000, a 20 solicitudes por segundo, con una clave y sin cuenta de desarrollador. Las 100 solicitudes gratis de una cuenta nueva consultan tus primeros 10K perfiles.

#Preguntas frecuentes

¿Qué API debo usar para consultar perfiles de Twitter en masa?

Usa Sorsa API, una API y scraper de Twitter (X): su endpoint GET /info-batch devuelve 100 perfiles completos por solicitud, desde $0.014 por cada 1,000, frente a $10.00 por cada 1,000 en la API oficial de X. Corre a 20 solicitudes por segundo en todos los planes, necesita una API key en lugar de una cuenta de desarrollador y OAuth, y devuelve los 19 campos del perfil en cada llamada. Las cuentas nuevas reciben 100 solicitudes gratis, suficientes para 10K perfiles.

¿Cuántos perfiles de Twitter puedo consultar en una solicitud?

Hasta 100. El GET /info-batch de Sorsa API admite 100 nombres de usuario o 100 IDs de usuario por solicitud, y GET /2/users/by y GET /2/users de la API oficial de X admiten los mismos 100. Una lista de 10K cuentas toma 100 llamadas en cualquiera de las dos API. Lo que cambia es el precio, $1.00 por cada 100 perfiles en la API oficial de X frente a desde $0.0014 en Sorsa API, y el ritmo: 300 llamadas cada 15 minutos en la API oficial de X, 20 por segundo en Sorsa API.

¿Hay una forma gratuita de consultar perfiles de Twitter en masa?

La API oficial de X no tiene nivel gratuito: cada perfil cuesta $0.010 desde la primera llamada. Sorsa API da a cada cuenta nueva 100 solicitudes gratis que nunca vencen y no piden tarjeta; con GET /info-batch cubren 10K perfiles. Para una o dos cuentas a la vez, la herramienta gratuita Comparar cuentas de Twitter muestra perfiles completos sin registro.

¿Por qué faltan algunas cuentas en los resultados de mi consulta masiva?

Una consulta por lotes devuelve solo las cuentas que encuentra. Un nombre de usuario mal escrito, cambiado, suspendido o eliminado no tiene un perfil público detrás, así que se omite de la respuesta en lugar de hacer fallar la solicitud. Haz coincidir los resultados por ID de usuario o por nombre de usuario en minúsculas, escribe el resto en una lista aparte y vuelve a consultar las cuentas renombradas por su ID de usuario.

¿Puedo obtener en masa el país o el correo de una cuenta?

El país sí; el correo no. El GET /about de Sorsa API devuelve el país que X muestra en "Acerca de esta cuenta", el número de cambios de nombre de usuario y la fecha del último, una solicitud por cuenta. Las direcciones de correo y los números de teléfono son privados en X, así que ninguna consulta de perfiles los devuelve, ni la de Sorsa API ni la de la API oficial de X.

#Cómo lo verificamos

El 2 de noviembre de 2026 leímos las entradas /info-batch, /info y /about de la referencia de API en vivo de Sorsa API y escribimos a partir de ellas cada solicitud y cada campo de esta página. No las ejecutamos con una clave: las respuestas de ejemplo usan cuentas ficticias con la forma de respuesta de la referencia. Ese mismo día leímos las páginas de consulta de usuarios, precios y límites de uso de X en docs.x.com para los endpoints, el precio y los límites de la API oficial de X, y calculamos a partir de esas cifras los costos y los tiempos de las tablas.

Por el equipo de Sorsa API. Creamos y operamos Sorsa API, la API y scraper de Twitter/X de solo lectura, en producción desde 2022 (antes TweetScout API) y con más de 6 mil millones de solicitudes procesadas. Acerca de Sorsa API

Qué cambió
  • Primera publicación.