Saltar al contenido principal
POST
Investigación en redes sociales
Cada modo devuelve output normalizado, compartido por las seis plataformas. La salida nativa del proveedor no se repite allí; permanece en el Run y se puede leer con Get Run. Un valor que una plataforma o un proveedor no informe es null. Lee result_status por separado de status: success, no_result, error o pending. Una respuesta vacía pero válida es no_result y conserva la estructura del modo: items o profiles es [], o todos los campos son null. charge_usd suma el runs de esta respuesta. Para una ruta de Apify pendiente (HTTP 202), sigue el result_url autenticado. Consulta Selección de Provider y cargos.

Salida por modo

Los campos siguen las convenciones de campos.
  • published_at está en UTC según ISO 8601, o null cuando el proveedor no proporciona una hora exacta (resultados de búsqueda de YouTube).
  • title es el título de Reddit o YouTube. text es únicamente el cuerpo (self-text de Reddit, descripción de YouTube, el tuit, el texto de la leyenda o de la publicación), y es null cuando no existe.
  • bio es la descripción de texto libre (en LinkedIn: la sección About). headline es la línea del cargo de LinkedIn. website es el sitio propio de la cuenta: el sitio web de la empresa en LinkedIn o el enlace ampliado del perfil de X.
  • likes es la puntuación neta de Reddit (puede ser negativa), los favoritos de X, los diggs de TikTok, o los «me gusta» y las reacciones en otros sitios. shares son los retuits de X, los envíos mediante la hoja de compartir de TikTok o las republicaciones de LinkedIn. views son las impresiones de X, las reproducciones de TikTok o las visualizaciones de videos de YouTube e Instagram.
  • En find, platform es el nombre de la red en minúsculas (twitter se convierte en x), y handle se puede usar como el handle de social_research. scrapecreators_confidence es la puntuación de 0 a 1 de ScrapeCreators por perfil. pdl_likelihood es la puntuación de coincidencia de 1 a 10 de People Data Labs para la persona completa, y solo se completa en linkedin.find.
  • El id de LinkedIn es el id de actividad sin formato, sin el prefijo urn:li:activity:.

Encabezados

idempotency-key
string
requerido

Genera un valor único para cada ejecución prevista (se recomienda un UUID). Reintenta con la misma clave y los mismos parámetros de ejecución para recuperar el Run original sin un segundo cobro. Cambiar los parámetros de ejecución con la misma clave devuelve 409; cambiar task_id o metadata no actualiza el Run original.

Minimum string length: 1

Cuerpo

application/json
platform
enum<string>
requerido
Opciones disponibles:
reddit,
x,
youtube,
tiktok,
instagram,
linkedin
mode
enum<string> | null

Predeterminado: search. Todas las plataformas admiten cada modo.

  • search: publicaciones que coinciden con query.
  • profile: datos de la cuenta a partir del handle (Reddit: subreddit). Para LinkedIn, proporciona una url de persona o empresa.
  • feed: publicaciones o vídeos recientes de un handle. Para LinkedIn, proporciona una url de empresa.
  • post: una publicación o vídeo a partir de url.
  • find: otros perfiles sociales a partir del handle. Para LinkedIn, proporciona la url del perfil de una persona; para Reddit, proporciona query para encontrar subreddits.
Opciones disponibles:
search,
profile,
feed,
post,
find
provider
enum<string> | null

Predeterminado auto: selecciona el primer proveedor de datos elegible según el orden de preferencia de Glasser. Un proveedor de datos especificado debe admitir la solicitud y estar permitido por tu API Key; no se recurre a otro proveedor de datos. Los valores disponibles se indican a continuación.

Opciones disponibles:
auto,
scrapecreators,
apify,
tikhub,
pdl
query
string | null
Required string length: 1 - 500
handle
string | null

Un nombre de usuario sin @ o un nombre de subreddit sin r/.

Required string length: 1 - 100
url
string | null
Required string length: 1 - 2048
task_id
string | null

Agrupa los Runs relacionados, incluido el fallback automático, en un solo Task. Reutiliza una cadena estable y filtra la lista de Runs por task para recuperarlos.

metadata

Campos de seguimiento opcionales, devueltos en el Run y disponibles como filtros. Nunca se envían al proveedor de datos ni afectan al enrutamiento, al Price ni a la idempotencia.

  • Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra y tener como máximo 40 caracteres.
  • Valores: cadenas de entre 1 y 500 caracteres.
  • user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.

Las entradas no válidas se descartan por completo, sin truncarlas. La solicitud continúa y el Run devuelve los campos que se almacenaron.

Respuesta

Éxito

id
string
requerido
run_url
string
requerido

Abre este Run en la consola. Requiere pertenencia al Workspace.

provider
string
requerido
Pattern: ^[a-z0-9][a-z0-9-]*$
endpoint
string
requerido
Pattern: ^\/.+$
endpoint_version
integer
requerido
status
enum<string>
requerido

QUEUED o RUNNING: todavía está en curso. COMPLETED: hay una respuesta del proveedor de datos disponible, incluidas las respuestas no-2xx. FAILED: consulta failure. STOPPED: detenido antes del envío. Consulta charge_usd por separado de status.

Opciones disponibles:
QUEUED,
RUNNING,
COMPLETED,
FAILED,
STOPPED
failure
object | null
requerido

Motivo por el que falló el Run. Solo es distinto de null cuando status es FAILED.

input
object
requerido
output
object
requerido

Campos normalizados por modo, compartidos por todas las plataformas. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que la plataforma o el proveedor de datos no informan son null.

  • profile: platform, handle, name, url, bio, headline, website, followers, following, posts, verified
  • search: items[]: id, url, title, text, author, author_url, published_at, likes, comments, shares, views
  • feed: items[]: mismos campos de publicación que search
  • post: id, url, title, text, author, author_url, published_at, likes, comments, shares, views
  • find: profiles[]: platform, url, handle, scrapecreators_confidence, followers (Reddit: subreddits coincidentes); pdl_likelihood
provider_response
object | null
requerido

Solo es distinto de null cuando status es COMPLETED.

  • En las respuestas 2xx, output contiene JSON nativo del proveedor de datos (de cualquier estructura) o null si el cuerpo está vacío.
  • En las respuestas no-2xx, error contiene el cuerpo del error del proveedor de datos y output es null.

Los campos sensibles se eliminan de ambos cuerpos.

charge_usd
string | null
requerido

Cargo total de los Runs en esta respuesta de Solution. Es null hasta que todos los Runs indicados se liquiden. Cada Run conserva su propio cargo; los fallos también pueden generar cargos.

Pattern: ^(0|[1-9]\d*)\.(\d{2}|\d{2}\d{0,3}[1-9])$
charge_basis
object | null
requerido

Base del cargo de un único Run o null para un total de varios Runs. Consulta runs[].charge_basis para cada cargo.

stoppable
boolean
requerido

Indica si actualmente se puede aceptar una solicitud de detención. Esto no garantiza que el Run pueda detenerse antes del envío.

stop_requested_at
string<date-time> | null
requerido

Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.

created_at
string<date-time>
requerido

Marca de tiempo UTC ISO-8601

started_at
string<date-time> | null
requerido

Marca de tiempo UTC ISO-8601

completed_at
string<date-time> | null
requerido

Marca de tiempo UTC ISO-8601

task_id
string | null
requerido
metadata
object
requerido

Tus campos de seguimiento almacenados. Úsalos para filtrar Runs. Nunca se envían al proveedor de datos ni afectan al enrutamiento, Price o la idempotencia.

  • Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra; como máximo 40 caracteres.
  • Valores: cadenas de 1–500 caracteres.
  • user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.
action
string
requerido

<platform>.<mode>; una página de empresa de LinkedIn en modo de perfil es linkedin.company.

Pattern: ^[a-z]+\.[a-z]+$
result_status
enum<string>
requerido

Estado de entrega empresarial, independiente del ciclo de vida final del Run en status. no_result es una respuesta vacía pero válida; error significa que no se pudo entregar la salida del proveedor de datos.

Opciones disponibles:
success,
no_result,
error,
pending
error
object | null
requerido
runs
object[]
requerido
result_url
string
requerido

Ruta de URL autenticada y de solo lectura para consultar este resultado normalizado y el cargo total. Úsala con el origen de la API. No crea Runs ni reanuda el fallback. GET /v1/runs/:id sigue devolviendo el Run nativo e individual.