Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.
Cada acción devuelve output normalizado. La salida nativa del Provider no se repite allí; permanece en el Run y puede leerse con Get Run. Las acciones de lista exponen output.items[] con campos fijos por fila; las acciones de resumen exponen campos fijos de nivel superior. Un valor que el Provider seleccionado no informa es null; Glasser no convierte ni completa valores. El dinero siempre está expresado en USD (cpc_usd, organic_traffic_value_usd).volume, traffic y cpc_usd son estimaciones propias del Provider que responde. Compárelas únicamente dentro de un mismo Provider (runs[].provider), no entre Providers.Lea 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 de la acción: items es [], o todos los campos de nivel superior son null. error con error.code significa que no se pudo entregar la salida del Provider.charge_usd suma los runs de esta respuesta, incluidos los resultados vacíos cobrados, y es null hasta que todos los Runs finalizan. Con provider: auto, el fallback puede crear varios Runs, cada uno enumerado en runs[] con su propio cargo. Para un rastreo pendiente (site_audit, HTTP 202), siga el result_url autenticado. Get Run sigue siendo nativo e informa de un cargo individual. Consulte Provider selection and charges.
Todos los campos están presentes en cada fila; un valor que el Provider no informa es null. Los campos siguen las convenciones de campos: los importes terminan en _usd, las marcas de tiempo terminan en _at (ISO 8601 UTC), y domain es un nombre de host simple sin www. ni puerto.Las puntuaciones de autoridad conservan la métrica y el nombre propios de cada Provider y nunca se convierten: ahrefs_domain_rating (Domain Rating de Ahrefs, 0–100, puede tener decimales), semrush_authority_score (Authority Score de Semrush, 0–100), dataforseo_rank (rango de DataForSEO, 0–1000) y serpstat_domain_rank (Domain Rank de Serpstat, 0–100). La dificultad de palabras clave se divide de la misma manera: semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty y ahrefs_keyword_difficulty están cada una en el rango 0–100 según el modelo propio del Provider, por lo que la misma palabra clave puede obtener puntuaciones muy diferentes entre ellas. dataforseo_onpage_score es la puntuación propia de página de DataForSEO. Solo se completa el campo del Provider que respondió; los demás son null.position es la posición orgánica: 1 es el primer resultado orgánico, y las funciones de SERP, como los anuncios o los cuadros de respuesta, no se cuentan.
items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at. Una fila por enlace de cada Provider.
dataforseo_task_id (input a los Endpoints del informe OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content
keyword_gap
items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions{domain: position} (null = no está entre los 100 primeros), identificados por los dominios que envió
items[]: url, platform, mentions, ai_search_volume, is_target_domain. Páginas más citadas en respuestas de IA que mencionan el domain, de cualquier sitio.
ai_visibility
ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform{platform: citations}, dataforseo_ai_mentions_by_platform{platform: mentions}, dataforseo_ai_search_volume_by_platform{platform: AI search volume}
Las filas de keyword_gap difieren según el Provider: Semrush devuelve las palabras clave para las que se posiciona cualquiera de los dominios (una unión), mientras que DataForSEO devuelve las palabras clave para las que se posiciona el competidor y usted no. ai_visibility informa de dos métricas diferentes: Ahrefs cuenta las citas de las páginas del dominio en respuestas de IA, mientras que DataForSEO cuenta las menciones del dominio en modelos de lenguaje de gran escala. Cada Provider completa únicamente sus propios campos y no existe un total entre Providers. El first_seen_at de Semrush no incluye zona horaria (Semrush no especifica ninguna), por lo que no tiene el sufijo Z.
Genere un valor único para cada ejecución prevista (se recomienda un UUID). Reintente con la misma clave y los mismos parámetros de ejecución para recuperar el Run original sin un segundo cargo. Cambiar los parámetros de ejecución con la misma clave devuelve 409; cambiar task_id o metadata no actualiza el Run original.
Una breve descripción de esta tarea de SEO, incluido su tema. Con task_id, guarda la descripción de Task para revisar sus resultados y evaluar si cumplen la solicitud. Incluya solo la información relevante para esta tarea, no el historial de la conversación ni datos personales no relacionados. Omítala en llamadas posteriores para mantener la descripción guardada.
keyword_overview: proporciona una o más palabras clave.
keyword_ideas o serp: proporciona exactamente una palabra clave en keywords.
site_audit: proporciona el dominio; limit es el número de páginas que se rastrearán (predeterminado: 20, como máximo 100). El rastreo se ejecuta de forma asíncrona.
keyword_gap y backlink_gap: proporciona el dominio y entre uno y cuatro competidores.
page_audit: proporciona url (una página).
visibility_history: proporciona el dominio; limit es el número de meses (predeterminado: 12, como máximo 24).
Todas las demás acciones: proporciona el dominio. organic_competitors encuentra los dominios que se posicionan para las mismas palabras clave; ai_visibility: visibilidad en respuestas de IA según la métrica propia del proveedor de datos que responde (Ahrefs: citas de las páginas del dominio; DataForSEO: menciones del dominio en LLM); ai_citations: páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio.
Las filas de keyword_gap difieren según el proveedor de datos: Semrush devuelve las palabras clave para las que se posiciona cualquiera de los dominios (unión); DataForSEO devuelve las palabras clave para las que se posiciona el competidor y tú no.
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.
País como código ISO de dos letras o nombre del país, p. ej., us, gb, de, Germany. Predeterminado: us. Códigos de país compatibles: us, gb, ca, au, nz, ie, in, sg, de, at, ch, fr, be, es, mx, ar, it, nl, pt, br, jp, kr, cn, hk, tw, ru, pl, se, no, dk, fi, tr, id, th, vn, ph, my, za, ae, il, sa, eg, ng, ua, cz, gr, hu, ro, co, cl, pe, lu. La disponibilidad también depende de la acción y del proveedor de datos. Un país no compatible se rechaza antes de crear un Run. No cambies el país para evitar un error; eso modifica los datos solicitados.
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.
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.
QUEUED o RUNNING: sigue en curso. COMPLETED: hay una respuesta del proveedor de datos disponible, incluidas las respuestas que no son 2xx. FAILED: consulta failure. STOPPED: detenido antes del envío. Consulta charge_usd por separado de status.
Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.
keyword_ideas: items[]: misma fila que keyword_overview
serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)
ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic
organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)
backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos
referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)
domain_rating: ahrefs_domain_rating
site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content
keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions {domain: posición orgánica; null = no está entre los 100 primeros}, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no
backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target {dominio del competidor: cantidad}
ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)
ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform {platform: citations}, dataforseo_ai_mentions_by_platform {platform: mentions}, dataforseo_ai_search_volume_by_platform {platform: volumen de búsqueda de IA}. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores
Cargo total de los Runs en esta respuesta de Solution. Es null hasta que se liquiden todos los Runs incluidos. Cada Run conserva su propio cargo; los errores también pueden generar cargos.
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.
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 el resultado del proveedor de datos.
Ruta 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 individual nativo.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Glasser","description":"Give your AI access to company, people, web, places, and market data with one Glasser account.","colors":{"primary":"#111111","light":"#e5e5e5","dark":"#171717"},"favicon":"https://mintcdn.com/glasser/UmKPaCGGjUt13e9p/favicon.svg?fit=max\u0026auto=format\u0026n=UmKPaCGGjUt13e9p\u0026q=85\u0026s=4ef0ba1a35f36c7b2499a657f13f068f","api":{"playground":{"display":"interactive"}},"navbar":{"primary":{"type":"button","label":"Get started","href":"https://app.glasser.ai/get-started?utm_source=docs\u0026utm_medium=navbar"}},"footer":{"socials":{"x":"https://x.com/Glasserai","discord":"https://discord.gg/akfMzXuwkw"}},"contextual":{"options":[{"title":"Ask in ChatGPT","description":"Ask questions about this page","icon":"/images/clients/chatgpt.svg","href":{"base":"https://chatgpt.com/","query":[{"key":"hints","value":"search"},{"key":"q","value":"Read this Glasser documentation page and help me understand how to use it: https://glasser.ai/docs$path"}]}},{"title":"Ask in Claude","description":"Ask questions about this page","icon":"/images/clients/claude.svg","href":{"base":"https://claude.ai/new","query":[{"key":"q","value":"Read this Glasser documentation page and help me understand how to use it: https://glasser.ai/docs$path"}]}},"copy","view"],"display":"header"},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","default":true,"href":""},{"language":"zh-CN","navbar":{"primary":{"type":"button","label":"开始使用","href":"https://app.glasser.ai/get-started?utm_source=docs\u0026utm_medium=navbar\u0026locale=zh-CN"}},"href":"zh"},{"language":"es","navbar":{"primary":{"type":"button","label":"Comenzar","href":"https://app.glasser.ai/get-started?utm_source=docs\u0026utm_medium=navbar\u0026locale=es"}},"href":"es"},{"language":"pt-BR","navbar":{"primary":{"type":"button","label":"Começar","href":"https://app.glasser.ai/get-started?utm_source=docs\u0026utm_medium=navbar\u0026locale=pt-BR"}},"href":"pt"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"glasser","hasAudioNarration":false,"actualSubdomain":"glasser","customDomains":["glasser.ai"],"gitSource":{"type":"github","owner":"surething-io","repo":"glasser-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6af41f232d65da0928c51054","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"en","tag":"API Reference","count":24},{"language":"es","tag":"Referencia de la API","count":24},{"language":"pt-BR","tag":"Referência da API","count":24},{"language":"zh-CN","tag":"API 参考","count":24},{"language":"en","tag":"Documentation","count":22},{"language":"es","tag":"Documentación","count":22},{"language":"pt-BR","tag":"Documentação","count":22},{"language":"zh-CN","tag":"文档","count":22},{"language":"en","tag":"For AI agents","count":19},{"language":"es","tag":"Para agentes de IA","count":19},{"language":"pt-BR","tag":"Para agentes de IA","count":19},{"language":"zh-CN","tag":"面向 AI Agent","count":19},{"language":"en","tag":"CLI Reference","count":15},{"language":"es","tag":"Referencia de la CLI","count":15},{"language":"pt-BR","tag":"Referência da CLI","count":15},{"language":"zh-CN","tag":"CLI 参考","count":15},{"language":"en","tag":"Solutions","count":13},{"language":"es","tag":"Solutions","count":13},{"language":"pt-BR","tag":"Solutions","count":13},{"language":"zh-CN","tag":"Solutions","count":13},{"language":"en","tag":"Set up with MCP","count":10},{"language":"es","tag":"Conectar con MCP","count":10},{"language":"pt-BR","tag":"Conectar com MCP","count":10},{"language":"zh-CN","tag":"通过 MCP 接入","count":10},{"language":"en","tag":"Set up with Skill","count":9},{"language":"es","tag":"Conectar con Skill","count":9},{"language":"pt-BR","tag":"Conectar com Skill","count":9},{"language":"zh-CN","tag":"通过 Skill 接入","count":9},{"language":"en","tag":"Runs","count":8},{"language":"es","tag":"Run","count":8},{"language":"pt-BR","tag":"Run","count":8},{"language":"zh-CN","tag":"Run","count":8},{"language":"en","tag":"Get started","count":6},{"language":"es","tag":"Primeros pasos","count":6},{"language":"pt-BR","tag":"Primeiros passos","count":6},{"language":"zh-CN","tag":"开始使用","count":6},{"language":"en","tag":"Balance","count":4},{"language":"es","tag":"Saldo","count":4},{"language":"pt-BR","tag":"Saldo","count":4},{"language":"zh-CN","tag":"余额","count":4}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@font-face{font-family:\"Inter\";font-weight:100 900;font-display:swap;src:url(\"/docs/fonts/inter-latin.woff2\") format(\"woff2\"),\n url(\"/fonts/inter-latin.woff2\") format(\"woff2\");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}@font-face{font-family:\"Inter\";font-weight:100 900;font-display:swap;src:url(\"/docs/fonts/inter-latin-ext.woff2\") format(\"woff2\"),\n url(\"/fonts/inter-latin-ext.woff2\") format(\"woff2\");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}body{font-family:\"Inter\", ui-sans-serif, system-ui, sans-serif}.dark .client-card-monochrome img[aria-hidden=\"true\"]{filter:invert(1)}h1{letter-spacing:-0.02em}.glasser-page-actions>[id=\"page-context-menu-button\"]{display:none}.glasser-page-actions>button[aria-haspopup=\"menu\"]{width:auto;aspect-ratio:auto;gap:8px;padding:0 12px;border-radius:10px;font-size:14px;font-weight:500}.glasser-page-actions-menu [data-glasser-page-action=\"copy\"]{margin-top:6px}.glasser-page-actions-menu [data-glasser-page-action=\"copy\"]::before{content:\"\";position:absolute;top:-4px;left:6px;right:6px;border-top:1px solid currentColor;opacity:0.15}.dark .glasser-page-actions-menu img[src$=\"/chatgpt.svg\"]{filter:invert(1)}code,pre,kbd,samp,.font-mono,[class*=\"paperMono\"],[class*=\"font-mono\"]{font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}.rounded-2xl{border-radius:16px}.rounded-xl{border-radius:14px}.rounded-lg{border-radius:10px}.rounded-md{border-radius:8px}[class*=\"rounded-[14px]\"],[class*=\"rounded-[10px]\"]{border-radius:10px}.tryit-button.tryit-button{background-color:oklch(0.1684 0 0);height:32px;padding:0 12px;font-size:14px;line-height:20px;border-radius:8px}.tryit-button.tryit-button:hover{background-color:#262626}.bg-primary-dark{border-radius:9999px!important;background-color:oklch(0.1684 0 0)!important}.bg-primary-dark~*,a:has(>.bg-primary-dark){font-size:14px}a:has(>.bg-primary-dark),button:has(>.bg-primary-dark){height:32px;padding:0 12px}[class*=\"bg-green-400/20\"]{background-color:#f5f5f5!important}[class*=\"text-green-700\"]{color:oklch(0.53 0 0)!important}[class*=\"bg-blue-400/20\"]{background-color:#f5f5f5!important}[class*=\"text-blue-700\"]{color:oklch(0.1684 0 0)!important}[class*=\"bg-orange-400/20\"],[class*=\"bg-yellow-400/20\"]{background-color:#f5f5f5!important}[class*=\"text-orange-700\"],[class*=\"text-yellow-700\"]{color:oklch(0.1684 0 0)!important}[class*=\"bg-red-400/20\"]{background-color:hsl(357 90.5% 95.9%)!important}[class*=\"text-red-700\"]{color:hsl(358 64.8% 49%)!important}.dark [class*=\"bg-green-400/20\"]{background-color:oklch(0.269 0 0)!important}.dark [class*=\"text-green-400\"]{color:oklch(0.708 0 0)!important}.dark [class*=\"bg-blue-400/20\"]{background-color:oklch(0.269 0 0)!important}.dark [class*=\"text-blue-400\"]{color:#e5e5e5!important}.dark [class*=\"bg-red-400/20\"]{background-color:hsl(350 53.2% 15.1%)!important}.dark [class*=\"text-red-400\"]{color:hsl(2 100% 78.6%)!important}[class*=\"page-header\"] .prose.text-lg{font-size:16px;line-height:26px;color:oklch(0.53 0 0)}.dark [class*=\"page-header\"] .prose.text-lg{color:oklch(0.708 0 0)}[class*=\"bg-[#3064E3]\"]:not(.tryit-button){background-color:#f5f5f5!important;color:oklch(0.1684 0 0)!important}.dark [class*=\"bg-[#3064E3]\"]:not(.tryit-button){background-color:oklch(0.269 0 0)!important;color:#e5e5e5!important}.integration-flow{max-width:640px;margin:24px auto}.integration-flow img{display:block;width:100%;height:auto;border-radius:12px}.integration-flow-dark{display:none}.dark .integration-flow-light{display:none}.dark .integration-flow-dark{display:block}.integration-map{--map-surface: #fafafa;--map-card: #ffffff;--map-border: #e5e5e5;--map-muted: #737373;--map-accent: #ba5639;--map-accent-surface: #fff7f3;--map-accent-border: #ebc3b7;display:grid;grid-template-columns:minmax(0, 1.8fr) minmax(0, 1fr);align-items:center;gap:12px;margin:24px 0 32px;padding:24px;border:1px solid var(--map-border);border-radius:16px;background:var(--map-surface);font-size:14px;line-height:1.4}.dark .integration-map{--map-surface: #141414;--map-card: #1c1c1c;--map-border: #303030;--map-muted: #a3a3a3;--map-accent: #e5a18a;--map-accent-surface: #2b1e19;--map-accent-border: #674437}.integration-map-product{min-width:0;padding:16px;border:1px dashed var(--map-border);border-radius:12px}.integration-map-label{display:block;margin-bottom:12px;color:var(--map-muted);font-size:11px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase}.integration-map-row{display:grid;grid-template-columns:minmax(0, 1fr) 24px minmax(0, 1.4fr);align-items:center}.integration-map-node{display:flex;min-width:0;min-height:72px;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 8px;border:1px solid var(--map-border);border-radius:10px;background:var(--map-card);text-align:center;font-weight:500}.integration-map-node strong{font-weight:600}.integration-map-node>span{color:var(--map-muted);font-size:11px;font-weight:400}.integration-map-glasser{border-color:var(--map-accent-border);background:var(--map-accent-surface)}.integration-map-arrow{color:var(--map-accent);font-size:22px;text-align:center}.integration-map-destinations{display:grid;gap:12px}.integration-map-route{display:grid;grid-template-columns:24px minmax(0, 1fr);align-items:center;gap:8px}.integration-map-direct{grid-template-columns:minmax(0, 1fr) 24px minmax(0, 1fr) 24px minmax(0, 1fr)}@media (max-width: 540px){.integration-map{grid-template-columns:minmax(0, 1fr);gap:12px;padding:16px}.integration-map-destinations{grid-template-columns:repeat(auto-fit, minmax(120px, 1fr))}.integration-map-route{grid-template-columns:minmax(0, 1fr);gap:8px}.integration-map-route>.integration-map-arrow,.integration-map-direct>.integration-map-arrow{transform:rotate(90deg)}.integration-map-direct .integration-map-node{min-height:60px}}.setup-screenshots{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));align-items:start;gap:16px;margin:24px 0}.setup-screenshots>div{min-width:0}.setup-screenshots .frame{margin:0}.setup-screenshots .zoom-image-trigger img{width:auto;height:auto;max-width:100%;max-height:280px}.setup-screenshots figcaption{font-size:12px;line-height:1.5}.setup-screenshots-single{grid-template-columns:minmax(0, 1fr);max-width:400px}.setup-screenshots-create>div:last-child{grid-column:2;grid-row:1 / span 2}.setup-screenshots-create>div:first-child .zoom-image-trigger img{max-height:180px}.setup-screenshots-create>div:last-child .zoom-image-trigger img{max-height:360px}@media (max-width: 640px){.setup-screenshots{grid-template-columns:minmax(0, 1fr)}.setup-screenshots-create>div:last-child{grid-column:auto;grid-row:auto}}"}],"page":{"pagePath":"es/api-reference/solutions/gtm/seo_research","slug":"/es/api-reference/solutions/gtm/seo_research","pageMetadata":{"title":"Investigación SEO","description":"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.","deprecated":null,"version":null,"sidebarTitle":"Investigación SEO","openapi":"/openapi.es.json post /v1/solutions/gtm/seo_research","href":"/es/api-reference/solutions/gtm/seo_research","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Cada acción devuelve `,_jsx(_components.code,{children:`output`}),` normalizado. La salida nativa del Provider no se repite allí; permanece en el Run y puede leerse con `,_jsx(_components.a,{href:`/es/api-reference/runs/get`,children:`Get Run`}),`. Las acciones de lista exponen `,_jsx(_components.code,{children:`output.items[]`}),` con campos fijos por fila; las acciones de resumen exponen campos fijos de nivel superior. Un valor que el Provider seleccionado no informa es `,_jsx(_components.code,{children:`null`}),`; Glasser no convierte ni completa valores. El dinero siempre está expresado en USD (`,_jsx(_components.code,{children:`cpc_usd`}),`, `,_jsx(_components.code,{children:`organic_traffic_value_usd`}),`).`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`volume`}),`, `,_jsx(_components.code,{children:`traffic`}),` y `,_jsx(_components.code,{children:`cpc_usd`}),` son estimaciones propias del Provider que responde. Compárelas únicamente dentro de un mismo Provider (`,_jsx(_components.code,{children:`runs[].provider`}),`), no entre Providers.`]}),`\n`,_jsxs(_components.p,{children:[`Lea `,_jsx(_components.code,{children:`result_status`}),` por separado de `,_jsx(_components.code,{children:`status`}),`: `,_jsx(_components.code,{children:`success`}),`, `,_jsx(_components.code,{children:`no_result`}),`, `,_jsx(_components.code,{children:`error`}),` o `,_jsx(_components.code,{children:`pending`}),`. Una respuesta vacía pero válida es `,_jsx(_components.code,{children:`no_result`}),` y conserva la estructura de la acción: `,_jsx(_components.code,{children:`items`}),` es `,_jsx(_components.code,{children:`[]`}),`, o todos los campos de nivel superior son `,_jsx(_components.code,{children:`null`}),`. `,_jsx(_components.code,{children:`error`}),` con `,_jsx(_components.code,{children:`error.code`}),` significa que no se pudo entregar la salida del Provider.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`charge_usd`}),` suma los `,_jsx(_components.code,{children:`runs`}),` de esta respuesta, incluidos los resultados vacíos cobrados, y es null hasta que todos los Runs finalizan. Con `,_jsx(_components.code,{children:`provider: auto`}),`, el fallback puede crear varios Runs, cada uno enumerado en `,_jsx(_components.code,{children:`runs[]`}),` con su propio cargo. Para un rastreo pendiente (`,_jsx(_components.code,{children:`site_audit`}),`, HTTP 202), siga el `,_jsx(_components.a,{href:`/es/api-reference/solutions/gtm/seo_research/result`,children:`result_url`}),` autenticado. `,_jsx(_components.a,{href:`/es/api-reference/runs/get`,children:`Get Run`}),` sigue siendo nativo e informa de un cargo individual. Consulte `,_jsx(_components.a,{href:`/es/api-reference/solutions/overview#how-provider-selection-works`,children:`Provider selection and charges`}),`.`]}),`\n`,_jsx(`span`,{id:`output-by-action`}),`\n`,_jsx(Heading,{level:`2`,id:`salida-por-acción`,children:`Salida por acción`}),`\n`,_jsxs(_components.p,{children:[`Todos los campos están presentes en cada fila; un valor que el Provider no informa es `,_jsx(_components.code,{children:`null`}),`. Los campos siguen las `,_jsx(_components.a,{href:`/es/api-reference/solutions/overview#field-conventions`,children:`convenciones de campos`}),`: los importes terminan en `,_jsx(_components.code,{children:`_usd`}),`, las marcas de tiempo terminan en `,_jsx(_components.code,{children:`_at`}),` (ISO 8601 UTC), y `,_jsx(_components.code,{children:`domain`}),` es un nombre de host simple sin `,_jsx(_components.code,{children:`www.`}),` ni puerto.`]}),`\n`,_jsxs(_components.p,{children:[`Las puntuaciones de autoridad conservan la métrica y el nombre propios de cada Provider y nunca se convierten: `,_jsx(_components.code,{children:`ahrefs_domain_rating`}),` (Domain Rating de Ahrefs, 0–100, puede tener decimales), `,_jsx(_components.code,{children:`semrush_authority_score`}),` (Authority Score de Semrush, 0–100), `,_jsx(_components.code,{children:`dataforseo_rank`}),` (rango de DataForSEO, 0–1000) y `,_jsx(_components.code,{children:`serpstat_domain_rank`}),` (Domain Rank de Serpstat, 0–100). La dificultad de palabras clave se divide de la misma manera: `,_jsx(_components.code,{children:`semrush_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`serpstat_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`dataforseo_keyword_difficulty`}),` y `,_jsx(_components.code,{children:`ahrefs_keyword_difficulty`}),` están cada una en el rango 0–100 según el modelo propio del Provider, por lo que la misma palabra clave puede obtener puntuaciones muy diferentes entre ellas. `,_jsx(_components.code,{children:`dataforseo_onpage_score`}),` es la puntuación propia de página de DataForSEO. Solo se completa el campo del Provider que respondió; los demás son `,_jsx(_components.code,{children:`null`}),`.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`position`}),` es la posición orgánica: 1 es el primer resultado orgánico, y las funciones de SERP, como los anuncios o los cuadros de respuesta, no se cuentan.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:_jsx(_components.code,{children:`action`})}),_jsx(_components.th,{children:_jsx(_components.code,{children:`output`})})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`keyword_overview`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`keyword`}),`, `,_jsx(_components.code,{children:`volume`}),`, `,_jsx(_components.code,{children:`cpc_usd`}),`, `,_jsx(_components.code,{children:`semrush_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`serpstat_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`dataforseo_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`ahrefs_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`intent`}),` (una fila por `,_jsx(_components.code,{children:`keyword`}),`)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`keyword_ideas`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: misma fila que `,_jsx(_components.code,{children:`keyword_overview`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`serp`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`position`}),`, `,_jsx(_components.code,{children:`url`}),`, `,_jsx(_components.code,{children:`domain`}),`, `,_jsx(_components.code,{children:`title`}),`, `,_jsx(_components.code,{children:`snippet`}),` (solo `,_jsx(_components.code,{children:`results`}),` orgánico)`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`domain_overview`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`organic_keywords`}),`, `,_jsx(_components.code,{children:`organic_traffic`}),`, `,_jsx(_components.code,{children:`organic_traffic_value_usd`}),`, `,_jsx(_components.code,{children:`paid_keywords`}),`, `,_jsx(_components.code,{children:`paid_traffic`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ranked_keywords`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`keyword`}),`, `,_jsx(_components.code,{children:`position`}),`, `,_jsx(_components.code,{children:`url`}),`, `,_jsx(_components.code,{children:`volume`}),`, `,_jsx(_components.code,{children:`cpc_usd`}),`, `,_jsx(_components.code,{children:`traffic`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`organic_competitors`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`domain`}),`, `,_jsx(_components.code,{children:`common_keywords`}),`, `,_jsx(_components.code,{children:`organic_keywords`}),` (`,_jsx(_components.code,{children:`total`}),` del competidor), `,_jsx(_components.code,{children:`organic_traffic`}),`. Se excluyen el `,_jsx(_components.code,{children:`domain`}),` objetivo y sus subdominios.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`backlinks_overview`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`backlinks`}),`, `,_jsx(_components.code,{children:`referring_domains`}),`, `,_jsx(_components.code,{children:`semrush_authority_score`}),`, `,_jsx(_components.code,{children:`dataforseo_rank`}),`, `,_jsx(_components.code,{children:`serpstat_domain_rank`}),`, `,_jsx(_components.code,{children:`dofollow_backlinks`}),`, `,_jsx(_components.code,{children:`nofollow_backlinks`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`backlinks`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`source_url`}),`, `,_jsx(_components.code,{children:`target_url`}),`, `,_jsx(_components.code,{children:`anchor`}),`, `,_jsx(_components.code,{children:`source_ahrefs_domain_rating`}),`, `,_jsx(_components.code,{children:`source_semrush_authority_score`}),`, `,_jsx(_components.code,{children:`source_dataforseo_rank`}),`, `,_jsx(_components.code,{children:`dofollow`}),`, `,_jsx(_components.code,{children:`first_seen_at`}),`. Una fila por enlace de cada Provider.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`referring_domains`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`domain`}),`, `,_jsx(_components.code,{children:`ahrefs_domain_rating`}),`, `,_jsx(_components.code,{children:`semrush_authority_score`}),`, `,_jsx(_components.code,{children:`dataforseo_rank`}),`, `,_jsx(_components.code,{children:`backlinks`}),`, `,_jsx(_components.code,{children:`dofollow_backlinks`}),`, `,_jsx(_components.code,{children:`first_seen_at`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`domain_rating`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`ahrefs_domain_rating`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`site_audit`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`dataforseo_task_id`}),` (`,_jsx(_components.code,{children:`input`}),` a los Endpoints del informe OnPage de DataForSEO), `,_jsx(_components.code,{children:`crawl_progress`}),`, `,_jsx(_components.code,{children:`crawl_stop_reason`}),` (vocabulario de DataForSEO), `,_jsx(_components.code,{children:`pages_crawled`}),`, `,_jsx(_components.code,{children:`dataforseo_onpage_score`}),`, `,_jsx(_components.code,{children:`broken_links`}),`, `,_jsx(_components.code,{children:`non_indexable`}),`, `,_jsx(_components.code,{children:`duplicate_title`}),`, `,_jsx(_components.code,{children:`duplicate_description`}),`, `,_jsx(_components.code,{children:`duplicate_content`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`keyword_gap`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`keyword`}),`, `,_jsx(_components.code,{children:`volume`}),`, `,_jsx(_components.code,{children:`cpc_usd`}),`, `,_jsx(_components.code,{children:`semrush_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`dataforseo_keyword_difficulty`}),`, `,_jsx(_components.code,{children:`positions`}),` `,_jsx(_components.code,{children:`{domain: position}`}),` (`,_jsx(_components.code,{children:`null`}),` = no está entre los 100 primeros), identificados por los dominios que envió`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`backlink_gap`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`domain`}),`, `,_jsx(_components.code,{children:`dataforseo_rank`}),`, `,_jsx(_components.code,{children:`backlinks_per_target`}),` `,_jsx(_components.code,{children:`{competitor domain: count}`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`page_audit`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`url`}),`, `,_jsx(_components.code,{children:`status_code`}),`, `,_jsx(_components.code,{children:`title`}),`, `,_jsx(_components.code,{children:`description`}),`, `,_jsx(_components.code,{children:`canonical`}),`, `,_jsx(_components.code,{children:`dataforseo_onpage_score`}),`, `,_jsx(_components.code,{children:`internal_links`}),`, `,_jsx(_components.code,{children:`external_links`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`visibility_history`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`month`}),`, `,_jsx(_components.code,{children:`organic_keywords`}),`, `,_jsx(_components.code,{children:`organic_traffic`}),`, `,_jsx(_components.code,{children:`organic_traffic_value_usd`}),`, `,_jsx(_components.code,{children:`paid_keywords`}),`, `,_jsx(_components.code,{children:`paid_traffic`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ai_citations`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`items[]`}),`: `,_jsx(_components.code,{children:`url`}),`, `,_jsx(_components.code,{children:`platform`}),`, `,_jsx(_components.code,{children:`mentions`}),`, `,_jsx(_components.code,{children:`ai_search_volume`}),`, `,_jsx(_components.code,{children:`is_target_domain`}),`. Páginas más citadas en respuestas de IA que mencionan el `,_jsx(_components.code,{children:`domain`}),`, de cualquier sitio.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ai_visibility`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`ahrefs_ai_citations`}),`, `,_jsx(_components.code,{children:`ahrefs_ai_cited_pages`}),`, `,_jsx(_components.code,{children:`ahrefs_ai_citations_by_platform`}),` `,_jsx(_components.code,{children:`{platform: citations}`}),`, `,_jsx(_components.code,{children:`dataforseo_ai_mentions_by_platform`}),` `,_jsx(_components.code,{children:`{platform: mentions}`}),`, `,_jsx(_components.code,{children:`dataforseo_ai_search_volume_by_platform`}),` `,_jsx(_components.code,{children:`{platform: AI search volume}`})]})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Las filas de `,_jsx(_components.code,{children:`keyword_gap`}),` difieren según el Provider: Semrush devuelve las palabras clave para las que se posiciona cualquiera de los dominios (una unión), mientras que DataForSEO devuelve las palabras clave para las que se posiciona el competidor y usted no. `,_jsx(_components.code,{children:`ai_visibility`}),` informa de dos métricas diferentes: Ahrefs cuenta las citas de las páginas del dominio en respuestas de IA, mientras que DataForSEO cuenta las menciones del dominio en modelos de lenguaje de gran escala. Cada Provider completa únicamente sus propios campos y no existe un total entre Providers. El `,_jsx(_components.code,{children:`first_seen_at`}),` de Semrush no incluye zona horaria (Semrush no especifica ninguna), por lo que no tiene el sufijo `,_jsx(_components.code,{children:`Z`}),`.`]}),`\n`,_jsx(CodeBlock,{numberOfLines:`14`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`14`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"action\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ranked_keywords\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"provider\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"dataforseo\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"COMPLETED\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"result_status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"success\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"output\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"items\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"keyword\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"zero interest business loan\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"position\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://stripe.com/resources/more/zero-interest-business-loans\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"volume\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1600`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"cpc_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`14.54`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"traffic\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`486.4`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"charge_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0.01236\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"runs\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [{ `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"provider\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"dataforseo\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"COMPLETED\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"charge_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"0.01236\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"result_url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"/v1/solutions/gtm/seo_research/result?token=…\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Investigación SEO","description":"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.","deprecated":null,"version":null,"sidebarTitle":"Investigación SEO","openapi":"/openapi.es.json post /v1/solutions/gtm/seo_research","href":"/es/api-reference/solutions/gtm/seo_research","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Salida por acción","slug":"salida-por-acción","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/glasser/edf4f5bdc385b1eb/glasser-analytics.js","/docs/_mintlify/custom/glasser/270664687dc0b5ab/glasser-page-actions.js","/docs/_mintlify/custom/glasser/b549f0fc1e2142f2/glasser-locale.js"],"openApiReferenceData":{"operation":{"tags":["Solutions"],"operationId":"gtm-seo-research","parameters":["1cb16dcc-1bb0-46bd-a292-0b6d7fc49041"],"security":["14b7a3de-9af7-4a96-b16f-b7397d4050f7"],"responses":{"200":"1eb8acb6-ef27-4040-9e66-b3675e5200ff","202":"0f73130a-b173-4e4a-a2bd-5086070df79b","400":"8bcf37c0-c7bc-4af6-828c-b9b2cba1276d","401":"03e82bb7-e392-4ade-b724-3a5dce29484c","402":"5bf4409d-d984-414a-ba66-f84a9f4769d5","403":"1653a5c8-21e9-438f-8113-bada64a31cf6","409":"77103c20-a0d2-416d-9ce8-557cd32f4fb8","429":"438b24e6-b689-4606-aa23-085bba16eb51","503":"d74c146f-c881-4633-9561-ea9b517db79a"},"description":"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.","summary":"Investigación SEO","requestBody":"c0e391ce-4251-4d05-8b10-8b176de246ec","x-mint":{"metadata":{"title":"Investigación SEO","description":"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.","sidebarTitle":"Investigación SEO"},"content":"Cada acción devuelve `output` normalizado. La salida nativa del Provider no se repite allí; permanece en el Run y puede leerse con [Get Run](/es/api-reference/runs/get). Las acciones de lista exponen `output.items[]` con campos fijos por fila; las acciones de resumen exponen campos fijos de nivel superior. Un valor que el Provider seleccionado no informa es `null`; Glasser no convierte ni completa valores. El dinero siempre está expresado en USD (`cpc_usd`, `organic_traffic_value_usd`).\n\n`volume`, `traffic` y `cpc_usd` son estimaciones propias del Provider que responde. Compárelas únicamente dentro de un mismo Provider (`runs[].provider`), no entre Providers.\n\nLea `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 de la acción: `items` es `[]`, o todos los campos de nivel superior son `null`. `error` con `error.code` significa que no se pudo entregar la salida del Provider.\n\n`charge_usd` suma los `runs` de esta respuesta, incluidos los resultados vacíos cobrados, y es null hasta que todos los Runs finalizan. Con `provider: auto`, el fallback puede crear varios Runs, cada uno enumerado en `runs[]` con su propio cargo. Para un rastreo pendiente (`site_audit`, HTTP 202), siga el [result_url](/es/api-reference/solutions/gtm/seo_research/result) autenticado. [Get Run](/es/api-reference/runs/get) sigue siendo nativo e informa de un cargo individual. Consulte [Provider selection and charges](/es/api-reference/solutions/overview#how-provider-selection-works).\n\n\u003cspan id=\"output-by-action\" />\n\n## Salida por acción\n\nTodos los campos están presentes en cada fila; un valor que el Provider no informa es `null`. Los campos siguen las [convenciones de campos](/es/api-reference/solutions/overview#field-conventions): los importes terminan en `_usd`, las marcas de tiempo terminan en `_at` (ISO 8601 UTC), y `domain` es un nombre de host simple sin `www.` ni puerto.\n\nLas puntuaciones de autoridad conservan la métrica y el nombre propios de cada Provider y nunca se convierten: `ahrefs_domain_rating` (Domain Rating de Ahrefs, 0–100, puede tener decimales), `semrush_authority_score` (Authority Score de Semrush, 0–100), `dataforseo_rank` (rango de DataForSEO, 0–1000) y `serpstat_domain_rank` (Domain Rank de Serpstat, 0–100). La dificultad de palabras clave se divide de la misma manera: `semrush_keyword_difficulty`, `serpstat_keyword_difficulty`, `dataforseo_keyword_difficulty` y `ahrefs_keyword_difficulty` están cada una en el rango 0–100 según el modelo propio del Provider, por lo que la misma palabra clave puede obtener puntuaciones muy diferentes entre ellas. `dataforseo_onpage_score` es la puntuación propia de página de DataForSEO. Solo se completa el campo del Provider que respondió; los demás son `null`.\n\n`position` es la posición orgánica: 1 es el primer resultado orgánico, y las funciones de SERP, como los anuncios o los cuadros de respuesta, no se cuentan.\n\n| `action` | `output` |\n| --- | --- |\n| `keyword_overview` | `items[]`: `keyword`, `volume`, `cpc_usd`, `semrush_keyword_difficulty`, `serpstat_keyword_difficulty`, `dataforseo_keyword_difficulty`, `ahrefs_keyword_difficulty`, `intent` (una fila por `keyword`) |\n| `keyword_ideas` | `items[]`: misma fila que `keyword_overview` |\n| `serp` | `items[]`: `position`, `url`, `domain`, `title`, `snippet` (solo `results` orgánico) |\n| `domain_overview` | `organic_keywords`, `organic_traffic`, `organic_traffic_value_usd`, `paid_keywords`, `paid_traffic` |\n| `ranked_keywords` | `items[]`: `keyword`, `position`, `url`, `volume`, `cpc_usd`, `traffic` |\n| `organic_competitors` | `items[]`: `domain`, `common_keywords`, `organic_keywords` (`total` del competidor), `organic_traffic`. Se excluyen el `domain` objetivo y sus subdominios. |\n| `backlinks_overview` | `backlinks`, `referring_domains`, `semrush_authority_score`, `dataforseo_rank`, `serpstat_domain_rank`, `dofollow_backlinks`, `nofollow_backlinks` |\n| `backlinks` | `items[]`: `source_url`, `target_url`, `anchor`, `source_ahrefs_domain_rating`, `source_semrush_authority_score`, `source_dataforseo_rank`, `dofollow`, `first_seen_at`. Una fila por enlace de cada Provider. |\n| `referring_domains` | `items[]`: `domain`, `ahrefs_domain_rating`, `semrush_authority_score`, `dataforseo_rank`, `backlinks`, `dofollow_backlinks`, `first_seen_at` |\n| `domain_rating` | `ahrefs_domain_rating` |\n| `site_audit` | `dataforseo_task_id` (`input` a los Endpoints del informe OnPage de DataForSEO), `crawl_progress`, `crawl_stop_reason` (vocabulario de DataForSEO), `pages_crawled`, `dataforseo_onpage_score`, `broken_links`, `non_indexable`, `duplicate_title`, `duplicate_description`, `duplicate_content` |\n| `keyword_gap` | `items[]`: `keyword`, `volume`, `cpc_usd`, `semrush_keyword_difficulty`, `dataforseo_keyword_difficulty`, `positions` `{domain: position}` (`null` = no está entre los 100 primeros), identificados por los dominios que envió |\n| `backlink_gap` | `items[]`: `domain`, `dataforseo_rank`, `backlinks_per_target` `{competitor domain: count}` |\n| `page_audit` | `url`, `status_code`, `title`, `description`, `canonical`, `dataforseo_onpage_score`, `internal_links`, `external_links` |\n| `visibility_history` | `items[]`: `month`, `organic_keywords`, `organic_traffic`, `organic_traffic_value_usd`, `paid_keywords`, `paid_traffic` |\n| `ai_citations` | `items[]`: `url`, `platform`, `mentions`, `ai_search_volume`, `is_target_domain`. Páginas más citadas en respuestas de IA que mencionan el `domain`, de cualquier sitio. |\n| `ai_visibility` | `ahrefs_ai_citations`, `ahrefs_ai_cited_pages`, `ahrefs_ai_citations_by_platform` `{platform: citations}`, `dataforseo_ai_mentions_by_platform` `{platform: mentions}`, `dataforseo_ai_search_volume_by_platform` `{platform: AI search volume}` |\n\nLas filas de `keyword_gap` difieren según el Provider: Semrush devuelve las palabras clave para las que se posiciona cualquiera de los dominios (una unión), mientras que DataForSEO devuelve las palabras clave para las que se posiciona el competidor y usted no. `ai_visibility` informa de dos métricas diferentes: Ahrefs cuenta las citas de las páginas del dominio en respuestas de IA, mientras que DataForSEO cuenta las menciones del dominio en modelos de lenguaje de gran escala. Cada Provider completa únicamente sus propios campos y no existe un total entre Providers. El `first_seen_at` de Semrush no incluye zona horaria (Semrush no especifica ninguna), por lo que no tiene el sufijo `Z`.\n\n```json\n{\n \"action\": \"ranked_keywords\",\n \"provider\": \"dataforseo\",\n \"status\": \"COMPLETED\",\n \"result_status\": \"success\",\n \"output\": {\n \"items\": [\n { \"keyword\": \"zero interest business loan\", \"position\": 1, \"url\": \"https://stripe.com/resources/more/zero-interest-business-loans\", \"volume\": 1600, \"cpc_usd\": 14.54, \"traffic\": 486.4 }\n ]\n },\n \"charge_usd\": \"0.01236\",\n \"runs\": [{ \"provider\": \"dataforseo\", \"status\": \"COMPLETED\", \"charge_usd\": \"0.01236\" }],\n \"result_url\": \"/v1/solutions/gtm/seo_research/result?token=…\"\n}\n```","href":"/es/api-reference/solutions/gtm/seo_research"},"method":"post","type":"path","servers":["b82e206e-ccbf-4044-83e7-08a2484228ed"],"path":"/v1/solutions/gtm/seo_research","baseUrlOptions":["https://api.glasser.ai"],"title":"Investigación SEO","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"1cb16dcc-1bb0-46bd-a292-0b6d7fc49041":{"name":"idempotency-key","in":"header","schema":{"type":"string","minLength":1,"description":"Genere un valor único para cada ejecución prevista (se recomienda un UUID). Reintente con la misma clave y los mismos parámetros de ejecución para recuperar el Run original sin un segundo cargo. Cambiar los parámetros de ejecución con la misma clave devuelve 409; cambiar task_id o metadata no actualiza el Run original.","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"use_case":{"oneOf":[{"type":"string","description":"Una breve descripción de esta tarea de SEO, incluido su tema. Con task_id, guarda la descripción de Task para revisar sus resultados y evaluar si cumplen la solicitud. Incluya solo la información relevante para esta tarea, no el historial de la conversación ni datos personales no relacionados. Omítala en llamadas posteriores para mantener la descripción guardada.","uniqueKey":"use_case.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"use_case.oneOf.1","typeLabel":"null"}],"uniqueKey":"use_case","typeLabel":"string | null"},"action":{"oneOf":[{"type":"string","description":"Predeterminado: keyword_overview.\n\n- keyword_overview: proporciona una o más palabras clave.\n- keyword_ideas o serp: proporciona exactamente una palabra clave en keywords.\n- site_audit: proporciona el dominio; limit es el número de páginas que se rastrearán (predeterminado: 20, como máximo 100). El rastreo se ejecuta de forma asíncrona.\n- keyword_gap y backlink_gap: proporciona el dominio y entre uno y cuatro competidores.\n- page_audit: proporciona url (una página).\n- visibility_history: proporciona el dominio; limit es el número de meses (predeterminado: 12, como máximo 24).\n- Todas las demás acciones: proporciona el dominio. organic_competitors encuentra los dominios que se posicionan para las mismas palabras clave; ai_visibility: visibilidad en respuestas de IA según la métrica propia del proveedor de datos que responde (Ahrefs: citas de las páginas del dominio; DataForSEO: menciones del dominio en LLM); ai_citations: páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio.\n- Las filas de keyword_gap difieren según el proveedor de datos: Semrush devuelve las palabras clave para las que se posiciona cualquiera de los dominios (unión); DataForSEO devuelve las palabras clave para las que se posiciona el competidor y tú no.","enum":["keyword_overview","keyword_ideas","serp","domain_overview","ranked_keywords","organic_competitors","backlinks_overview","backlinks","referring_domains","domain_rating","site_audit","ai_visibility","keyword_gap","backlink_gap","page_audit","visibility_history","ai_citations"],"uniqueKey":"action.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","uniqueKey":"action.oneOf.1","typeLabel":"null"}],"uniqueKey":"action","typeLabel":"enum\u003cstring> | null"},"provider":{"oneOf":[{"type":"string","description":"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.","enum":["auto","semrush","serpstat","dataforseo","ahrefs","serper"],"uniqueKey":"provider.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","uniqueKey":"provider.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider","typeLabel":"enum\u003cstring> | null"},"keywords":{"oneOf":[{"type":"array","items":{"type":"string","minLength":1,"maxLength":200,"uniqueKey":"keywords.oneOf.0.items.[INDEX]","typeLabel":"string"},"maxItems":20,"minItems":1,"uniqueKey":"keywords.oneOf.0","typeLabel":"string[]"},{"type":"null","uniqueKey":"keywords.oneOf.1","typeLabel":"null"}],"uniqueKey":"keywords","typeLabel":"string[] | null"},"domain":{"oneOf":[{"type":"string","description":"Un dominio de sitio web, como stripe.com. Se acepta una URL completa y se reduce a su host.","maxLength":253,"minLength":3,"uniqueKey":"domain.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"domain.oneOf.1","typeLabel":"null"}],"uniqueKey":"domain","typeLabel":"string | null"},"competitors":{"oneOf":[{"type":"array","items":{"type":"string","minLength":3,"maxLength":253,"description":"Un dominio de sitio web, como stripe.com. Se acepta una URL completa y se reduce a su host.","uniqueKey":"competitors.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Dominios de competidores para keyword_gap y backlink_gap, entre uno y cuatro. Las URL completas se reducen a su host.","maxItems":4,"minItems":1,"uniqueKey":"competitors.oneOf.0","typeLabel":"string[]"},{"type":"null","uniqueKey":"competitors.oneOf.1","typeLabel":"null"}],"uniqueKey":"competitors","typeLabel":"string[] | null"},"url":{"oneOf":[{"type":"string","description":"Una URL de página para page_audit, como https://stripe.com/pricing.","maxLength":2048,"minLength":1,"uniqueKey":"url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"url.oneOf.1","typeLabel":"null"}],"uniqueKey":"url","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","description":"País como código ISO de dos letras o nombre del país, p. ej., us, gb, de, Germany. Predeterminado: us. Códigos de país compatibles: us, gb, ca, au, nz, ie, in, sg, de, at, ch, fr, be, es, mx, ar, it, nl, pt, br, jp, kr, cn, hk, tw, ru, pl, se, no, dk, fi, tr, id, th, vn, ph, my, za, ae, il, sa, eg, ng, ua, cz, gr, hu, ro, co, cl, pe, lu. La disponibilidad también depende de la acción y del proveedor de datos. Un país no compatible se rechaza antes de crear un Run. No cambies el país para evitar un error; eso modifica los datos solicitados.","maxLength":60,"minLength":2,"uniqueKey":"country.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"country.oneOf.1","typeLabel":"null"}],"uniqueKey":"country","typeLabel":"string | null"},"limit":{"oneOf":[{"type":"integer","description":"Filas que se devolverán. Mantén un número reducido: la regla de cobro del Endpoint enrutado puede leerlo. Cada capacidad lo limita aún más.","maximum":100,"minimum":1,"uniqueKey":"limit.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"limit.oneOf.1","typeLabel":"null"}],"uniqueKey":"limit","typeLabel":"integer | null"},"task_id":{"oneOf":[{"type":"string","description":"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.","uniqueKey":"task_id.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"task_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"task_id","typeLabel":"string | null"},"metadata":{"oneOf":[{"type":"object","description":"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.\n\n- Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra y tener como máximo 40 caracteres.\n- Valores: cadenas de entre 1 y 500 caracteres.\n- user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.\n\nLas entradas no válidas se descartan por completo, sin truncarlas. La solicitud continúa y el Run devuelve los campos que se almacenaron.","maxProperties":20,"additionalProperties":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"metadata.oneOf.0.additionalProperties","typeLabel":"string"},"uniqueKey":"metadata.oneOf.0","typeLabel":"object"},{"description":"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.\n\n- Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra y tener como máximo 40 caracteres.\n- Valores: cadenas de entre 1 y 500 caracteres.\n- user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.\n\nLas entradas no válidas se descartan por completo, sin truncarlas. La solicitud continúa y el Run devuelve los campos que se almacenaron.","uniqueKey":"metadata.oneOf.1","typeLabel":"any"},{"type":"null","uniqueKey":"metadata.oneOf.2","typeLabel":"null"}],"uniqueKey":"metadata","typeLabel":"object | any | null"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"use_case":"\u003cstring>","keywords":["\u003cstring>"],"domain":"\u003cstring>","competitors":["\u003cstring>"],"url":"\u003cstring>","country":"\u003cstring>","limit":50,"task_id":"\u003cstring>","metadata":{}}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"1eb8acb6-ef27-4040-9e66-b3675e5200ff":{"description":"Success","content":{"application/json":{"schema":{"type":"object","required":["id","run_url","provider","endpoint","endpoint_version","status","failure","input","output","provider_response","charge_usd","charge_basis","stoppable","stop_requested_at","created_at","started_at","completed_at","task_id","metadata","action","result_status","error","runs","result_url"],"properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"run_url":{"type":"string","description":"Abre este Run en la consola. Requiere pertenecer a un Workspace.","isRequired":true,"uniqueKey":"run_url","typeLabel":"string"},"provider":{"type":"string","pattern":"^[a-z0-9][a-z0-9-]*$","isRequired":true,"uniqueKey":"provider","typeLabel":"string"},"endpoint":{"type":"string","pattern":"^\\/.+$","isRequired":true,"uniqueKey":"endpoint","typeLabel":"string"},"endpoint_version":{"type":"integer","exclusiveMinimum":0,"isRequired":true,"uniqueKey":"endpoint_version","typeLabel":"integer"},"status":{"type":"string","enum":["QUEUED","RUNNING","COMPLETED","FAILED","STOPPED"],"description":"QUEUED o RUNNING: sigue en curso. COMPLETED: hay una respuesta del proveedor de datos disponible, incluidas las respuestas que no son 2xx. FAILED: consulta `failure`. STOPPED: detenido antes del envío. Consulta charge_usd por separado de status.","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"failure":{"oneOf":[{"type":"object","description":"Motivo por el que falló el Run. No es null únicamente cuando el estado es FAILED.","required":["kind","message"],"properties":{"kind":{"type":"string","enum":["TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"failure.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"failure.oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"failure.oneOf.0","typeLabel":"object"},{"type":"null","description":"Motivo por el que falló el Run. No es null únicamente cuando el estado es FAILED.","isRequired":true,"uniqueKey":"failure.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"failure","typeLabel":"object | null"},"input":{"type":"object","isRequired":true,"uniqueKey":"input","typeLabel":"object"},"output":{"oneOf":[{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"keyword":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].keyword.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].keyword.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].keyword","typeLabel":"string | null"},"volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].volume","typeLabel":"integer | null"},"cpc_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd","typeLabel":"number | enum\u003cstring> | null"},"semrush_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].semrush_keyword_difficulty","typeLabel":"integer | null"},"serpstat_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].serpstat_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].serpstat_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].serpstat_keyword_difficulty","typeLabel":"integer | null"},"dataforseo_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].dataforseo_keyword_difficulty","typeLabel":"integer | null"},"ahrefs_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].ahrefs_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].ahrefs_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].ahrefs_keyword_difficulty","typeLabel":"integer | null"},"intent":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].intent.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].intent.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].intent","typeLabel":"string | null"}},"required":["keyword","volume","cpc_usd","semrush_keyword_difficulty","serpstat_keyword_difficulty","dataforseo_keyword_difficulty","ahrefs_keyword_difficulty","intent"],"additionalProperties":false,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.0.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.0","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"position":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].position.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].position.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].position","typeLabel":"integer | null"},"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].url","typeLabel":"string | null"},"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].domain","typeLabel":"string | null"},"title":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].title.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].title.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].title","typeLabel":"string | null"},"snippet":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].snippet.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].snippet.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].snippet","typeLabel":"string | null"}},"required":["position","url","domain","title","snippet"],"additionalProperties":false,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.1.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.1","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["organic_keywords","organic_traffic","organic_traffic_value_usd","paid_keywords","paid_traffic"],"properties":{"organic_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.2.organic_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.organic_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_keywords","typeLabel":"integer | null"},"organic_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic","typeLabel":"number | enum\u003cstring> | null"},"organic_traffic_value_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd","typeLabel":"number | enum\u003cstring> | null"},"paid_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.2.paid_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.paid_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.paid_keywords","typeLabel":"integer | null"},"paid_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic","typeLabel":"number | enum\u003cstring> | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.2","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"keyword":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].keyword.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].keyword.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].keyword","typeLabel":"string | null"},"position":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].position.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].position.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].position","typeLabel":"integer | null"},"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].url","typeLabel":"string | null"},"volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].volume","typeLabel":"integer | null"},"cpc_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd","typeLabel":"number | enum\u003cstring> | null"},"traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic","typeLabel":"number | enum\u003cstring> | null"}},"required":["keyword","position","url","volume","cpc_usd","traffic"],"additionalProperties":false,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.3.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.3","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].domain","typeLabel":"string | null"},"common_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].common_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].common_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].common_keywords","typeLabel":"integer | null"},"organic_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_keywords","typeLabel":"integer | null"},"organic_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic","typeLabel":"number | enum\u003cstring> | null"}},"required":["domain","common_keywords","organic_keywords","organic_traffic"],"additionalProperties":false,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.4.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.4","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["backlinks","referring_domains","semrush_authority_score","dataforseo_rank","serpstat_domain_rank","dofollow_backlinks","nofollow_backlinks"],"properties":{"backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.backlinks","typeLabel":"integer | null"},"referring_domains":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.referring_domains.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.referring_domains.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.referring_domains","typeLabel":"integer | null"},"semrush_authority_score":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.semrush_authority_score.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.semrush_authority_score.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.semrush_authority_score","typeLabel":"integer | null"},"dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.dataforseo_rank","typeLabel":"integer | null"},"serpstat_domain_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.serpstat_domain_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.serpstat_domain_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.serpstat_domain_rank","typeLabel":"integer | null"},"dofollow_backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.dofollow_backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.dofollow_backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.dofollow_backlinks","typeLabel":"integer | null"},"nofollow_backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.nofollow_backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.nofollow_backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.nofollow_backlinks","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.5","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"source_url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_url","typeLabel":"string | null"},"target_url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].target_url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].target_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].target_url","typeLabel":"string | null"},"anchor":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].anchor.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].anchor.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].anchor","typeLabel":"string | null"},"source_ahrefs_domain_rating":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating","typeLabel":"number | enum\u003cstring> | null"},"source_semrush_authority_score":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_semrush_authority_score.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_semrush_authority_score.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_semrush_authority_score","typeLabel":"integer | null"},"source_dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_dataforseo_rank","typeLabel":"integer | null"},"dofollow":{"oneOf":[{"type":"boolean","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].dofollow.oneOf.0","typeLabel":"boolean"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].dofollow.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].dofollow","typeLabel":"boolean | null"},"first_seen_at":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].first_seen_at.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].first_seen_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].first_seen_at","typeLabel":"string | null"}},"required":["source_url","target_url","anchor","source_ahrefs_domain_rating","source_semrush_authority_score","source_dataforseo_rank","dofollow","first_seen_at"],"additionalProperties":false,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.6.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.6","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].domain","typeLabel":"string | null"},"ahrefs_domain_rating":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating","typeLabel":"number | enum\u003cstring> | null"},"semrush_authority_score":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].semrush_authority_score.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].semrush_authority_score.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].semrush_authority_score","typeLabel":"integer | null"},"dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dataforseo_rank","typeLabel":"integer | null"},"backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].backlinks","typeLabel":"integer | null"},"dofollow_backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dofollow_backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dofollow_backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dofollow_backlinks","typeLabel":"integer | null"},"first_seen_at":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].first_seen_at.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].first_seen_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].first_seen_at","typeLabel":"string | null"}},"required":["domain","ahrefs_domain_rating","semrush_authority_score","dataforseo_rank","backlinks","dofollow_backlinks","first_seen_at"],"additionalProperties":false,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.7.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.7","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["ahrefs_domain_rating"],"properties":{"ahrefs_domain_rating":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating","typeLabel":"number | enum\u003cstring> | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.8","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["dataforseo_task_id","crawl_progress","crawl_stop_reason","pages_crawled","dataforseo_onpage_score","broken_links","non_indexable","duplicate_title","duplicate_description","duplicate_content"],"properties":{"dataforseo_task_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_task_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_task_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_task_id","typeLabel":"string | null"},"crawl_progress":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_progress.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_progress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.crawl_progress","typeLabel":"string | null"},"crawl_stop_reason":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_stop_reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_stop_reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.crawl_stop_reason","typeLabel":"string | null"},"pages_crawled":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.pages_crawled.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.pages_crawled.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.pages_crawled","typeLabel":"integer | null"},"dataforseo_onpage_score":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score","typeLabel":"number | enum\u003cstring> | null"},"broken_links":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.broken_links.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.broken_links.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.broken_links","typeLabel":"integer | null"},"non_indexable":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.non_indexable.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.non_indexable.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.non_indexable","typeLabel":"integer | null"},"duplicate_title":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_title.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_title.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_title","typeLabel":"integer | null"},"duplicate_description":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_description.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_description","typeLabel":"integer | null"},"duplicate_content":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_content.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_content.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_content","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.9","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"keyword":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].keyword.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].keyword.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].keyword","typeLabel":"string | null"},"volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].volume","typeLabel":"integer | null"},"cpc_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd","typeLabel":"number | enum\u003cstring> | null"},"semrush_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].semrush_keyword_difficulty","typeLabel":"integer | null"},"dataforseo_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].dataforseo_keyword_difficulty","typeLabel":"integer | null"},"positions":{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions","typeLabel":"object"}},"required":["keyword","volume","cpc_usd","semrush_keyword_difficulty","dataforseo_keyword_difficulty","positions"],"additionalProperties":false,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.10.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.10","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].domain","typeLabel":"string | null"},"dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].dataforseo_rank","typeLabel":"integer | null"},"backlinks_per_target":{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target","typeLabel":"object"}},"required":["domain","dataforseo_rank","backlinks_per_target"],"additionalProperties":false,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.11.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.11","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["url","status_code","title","description","canonical","dataforseo_onpage_score","internal_links","external_links"],"properties":{"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.url","typeLabel":"string | null"},"status_code":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.12.status_code.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.status_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.status_code","typeLabel":"integer | null"},"title":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.title.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.title.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.title","typeLabel":"string | null"},"description":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.description.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.description","typeLabel":"string | null"},"canonical":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.canonical.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.canonical.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.canonical","typeLabel":"string | null"},"dataforseo_onpage_score":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score","typeLabel":"number | enum\u003cstring> | null"},"internal_links":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.12.internal_links.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.internal_links.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.internal_links","typeLabel":"integer | null"},"external_links":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.12.external_links.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.external_links.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.external_links","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.12","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"month":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].month.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].month.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].month","typeLabel":"string | null"},"organic_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_keywords","typeLabel":"integer | null"},"organic_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic","typeLabel":"number | enum\u003cstring> | null"},"organic_traffic_value_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd","typeLabel":"number | enum\u003cstring> | null"},"paid_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_keywords","typeLabel":"integer | null"},"paid_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic","typeLabel":"number | enum\u003cstring> | null"}},"required":["month","organic_keywords","organic_traffic","organic_traffic_value_usd","paid_keywords","paid_traffic"],"additionalProperties":false,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.13.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.13","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].url","typeLabel":"string | null"},"platform":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].platform.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].platform","typeLabel":"string | null"},"mentions":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].mentions.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].mentions.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].mentions","typeLabel":"integer | null"},"ai_search_volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].ai_search_volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].ai_search_volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].ai_search_volume","typeLabel":"integer | null"},"is_target_domain":{"oneOf":[{"type":"boolean","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].is_target_domain.oneOf.0","typeLabel":"boolean"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].is_target_domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].is_target_domain","typeLabel":"boolean | null"}},"required":["url","platform","mentions","ai_search_volume","is_target_domain"],"additionalProperties":false,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.14.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.14","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["ahrefs_ai_citations","ahrefs_ai_cited_pages","ahrefs_ai_citations_by_platform","dataforseo_ai_mentions_by_platform","dataforseo_ai_search_volume_by_platform"],"properties":{"ahrefs_ai_citations":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations","typeLabel":"integer | null"},"ahrefs_ai_cited_pages":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_cited_pages.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_cited_pages.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_cited_pages","typeLabel":"integer | null"},"ahrefs_ai_citations_by_platform":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform","typeLabel":"object | null"},"dataforseo_ai_mentions_by_platform":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform","typeLabel":"object | null"},"dataforseo_ai_search_volume_by_platform":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform","typeLabel":"object | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.15","typeLabel":"object"},{"type":"null","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","isRequired":true,"uniqueKey":"output.oneOf.16","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output","typeLabel":"object · object · object · object · object · object · object · object · object · object · object · object · object · object · object · object · null"},"provider_response":{"oneOf":[{"type":"object","description":"No es null únicamente cuando el estado es COMPLETED.\n\n- Para respuestas 2xx, output contiene JSON nativo del proveedor de datos (de cualquier estructura), o null si el cuerpo está vacío.\n- Para respuestas que no son 2xx, error contiene el cuerpo de error del proveedor de datos y output es null.\n\nLos campos sensibles se eliminan de ambos cuerpos.","required":["http_status"],"properties":{"http_status":{"type":"integer","minimum":100,"maximum":599,"description":"Estado HTTP devuelto por el proveedor de datos. Compruébalo incluso cuando el Run esté COMPLETED.","isRequired":true,"uniqueKey":"provider_response.oneOf.0.http_status","typeLabel":"integer"},"error":{"oneOf":[{},{"type":"null","uniqueKey":"provider_response.oneOf.0.error.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_response.oneOf.0.error","typeLabel":"null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"provider_response.oneOf.0","typeLabel":"object"},{"type":"null","description":"No es null únicamente cuando el estado es COMPLETED.\n\n- Para respuestas 2xx, output contiene JSON nativo del proveedor de datos (de cualquier estructura), o null si el cuerpo está vacío.\n- Para respuestas que no son 2xx, error contiene el cuerpo de error del proveedor de datos y output es null.\n\nLos campos sensibles se eliminan de ambos cuerpos.","isRequired":true,"uniqueKey":"provider_response.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"provider_response","typeLabel":"object | null"},"charge_usd":{"oneOf":[{"type":"string","description":"Cargo total de los Runs en esta respuesta de Solution. Es null hasta que se liquiden todos los Runs incluidos. Cada Run conserva su propio cargo; los errores también pueden generar cargos.","pattern":"^(0|[1-9]\\d*)\\.(\\d{2}|\\d{2}\\d{0,3}[1-9])$","isRequired":true,"uniqueKey":"charge_usd.oneOf.0","typeLabel":"string"},{"type":"null","description":"Cargo total de los Runs en esta respuesta de Solution. Es null hasta que se liquiden todos los Runs incluidos. Cada Run conserva su propio cargo; los errores también pueden generar cargos.","isRequired":true,"uniqueKey":"charge_usd.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"charge_usd","typeLabel":"string | null"},"charge_basis":{"oneOf":[{"type":"object","description":"Base del cargo de un único Run, o null para un total de varios Runs. Consulta runs[].charge_basis para cada cargo.","required":["clause","quantity"],"properties":{"clause":{"type":"string","enum":["rule","NO_RESULT","PROVIDER_ERROR","TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"charge_basis.oneOf.0.clause","typeLabel":"enum\u003cstring>"},"quantity":{"oneOf":[{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"charge_basis.oneOf.0.quantity.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"charge_basis.oneOf.0.quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"charge_basis.oneOf.0.quantity","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"charge_basis.oneOf.0","typeLabel":"object"},{"type":"null","description":"Base del cargo de un único Run, o null para un total de varios Runs. Consulta runs[].charge_basis para cada cargo.","isRequired":true,"uniqueKey":"charge_basis.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"charge_basis","typeLabel":"object | null"},"stoppable":{"type":"boolean","description":"Indica si actualmente se puede aceptar una solicitud de detención. Esto no garantiza que el Run pueda detenerse antes del envío.","isRequired":true,"uniqueKey":"stoppable","typeLabel":"boolean"},"stop_requested_at":{"oneOf":[{"type":"string","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","format":"date-time","isRequired":true,"uniqueKey":"stop_requested_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","isRequired":true,"uniqueKey":"stop_requested_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"stop_requested_at","typeLabel":"string\u003cdate-time> | null"},"created_at":{"type":"string","description":"Marca de tiempo UTC en formato ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"started_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC en formato ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"started_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"started_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"started_at","typeLabel":"string\u003cdate-time> | null"},"completed_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC en formato ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"completed_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"completed_at","typeLabel":"string\u003cdate-time> | null"},"task_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"task_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"task_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"task_id","typeLabel":"string | null"},"metadata":{"type":"object","additionalProperties":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"maxProperties":20,"propertyNames":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,39}$"},"description":"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.\n\n- Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra; como máximo 40 caracteres.\n- Valores: cadenas de 1–500 caracteres.\n- user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.","isRequired":true,"uniqueKey":"metadata","typeLabel":"object"},"action":{"type":"string","enum":["keyword_overview","keyword_ideas","serp","domain_overview","ranked_keywords","organic_competitors","backlinks_overview","backlinks","referring_domains","domain_rating","site_audit","ai_visibility","keyword_gap","backlink_gap","page_audit","visibility_history","ai_citations"],"isRequired":true,"uniqueKey":"action","typeLabel":"enum\u003cstring>"},"result_status":{"type":"string","enum":["success","no_result","error","pending"],"description":"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 el resultado del proveedor de datos.","isRequired":true,"uniqueKey":"result_status","typeLabel":"enum\u003cstring>"},"error":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.oneOf.0.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"error.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"error","typeLabel":"object | null"},"runs":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"runs.items.[INDEX].id","typeLabel":"string"},"run_url":{"type":"string","description":"Abre este Run en la consola. Requiere pertenencia al Workspace.","isRequired":true,"uniqueKey":"runs.items.[INDEX].run_url","typeLabel":"string"},"provider":{"type":"string","pattern":"^[a-z0-9][a-z0-9-]*$","isRequired":true,"uniqueKey":"runs.items.[INDEX].provider","typeLabel":"string"},"endpoint":{"type":"string","pattern":"^\\/.+$","isRequired":true,"uniqueKey":"runs.items.[INDEX].endpoint","typeLabel":"string"},"endpoint_version":{"type":"integer","exclusiveMinimum":0,"isRequired":true,"uniqueKey":"runs.items.[INDEX].endpoint_version","typeLabel":"integer"},"status":{"type":"string","enum":["QUEUED","RUNNING","COMPLETED","FAILED","STOPPED"],"description":"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.","isRequired":true,"uniqueKey":"runs.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"failure":{"oneOf":[{"type":"object","description":"Motivo por el que falló el Run. Solo es distinto de null cuando status es FAILED.","required":["kind","message"],"properties":{"kind":{"type":"string","enum":["TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.0","typeLabel":"object"},{"type":"null","description":"Motivo por el que falló el Run. Solo es distinto de null cuando status es FAILED.","isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].failure","typeLabel":"object | null"},"input":{"type":"object","properties":{"omitted":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"runs.items.[INDEX].input.omitted","typeLabel":"enum\u003cboolean>"}},"required":["omitted"],"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].input","typeLabel":"object"},"output":{"type":"object","properties":{"omitted":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"runs.items.[INDEX].output.omitted","typeLabel":"enum\u003cboolean>"}},"required":["omitted"],"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].output","typeLabel":"object"},"provider_response":{"oneOf":[{"type":"object","required":["http_status"],"properties":{"http_status":{"type":"integer","minimum":100,"maximum":599,"description":"Estado HTTP devuelto por el proveedor de datos. Compruébalo incluso cuando el Run esté COMPLETED.","isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response.oneOf.0.http_status","typeLabel":"integer"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response","typeLabel":"object | null"},"charge_usd":{"oneOf":[{"type":"string","description":"Cargo final como cadena decimal exacta en USD. Es null mientras está QUEUED o RUNNING. Un Run FAILED puede tener un cargo distinto de cero según el Price del Endpoint.","pattern":"^(0|[1-9]\\d*)\\.(\\d{2}|\\d{2}\\d{0,3}[1-9])$","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_usd.oneOf.0","typeLabel":"string"},{"type":"null","description":"Cargo final como cadena decimal exacta en USD. Es null mientras está QUEUED o RUNNING. Un Run FAILED puede tener un cargo distinto de cero según el Price del Endpoint.","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_usd.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_usd","typeLabel":"string | null"},"charge_basis":{"oneOf":[{"type":"object","description":"Cláusula de Price utilizada para calcular el cargo. Es null antes de la liquidación o cuando no se realizó ningún intento con el proveedor de datos.","required":["clause","quantity"],"properties":{"clause":{"type":"string","enum":["rule","NO_RESULT","PROVIDER_ERROR","TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.clause","typeLabel":"enum\u003cstring>"},"quantity":{"oneOf":[{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.quantity.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.quantity","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0","typeLabel":"object"},{"type":"null","description":"Cláusula de Price utilizada para calcular el cargo. Es null antes de la liquidación o cuando no se realizó ningún intento con el proveedor de datos.","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis","typeLabel":"object | null"},"stoppable":{"type":"boolean","description":"Indica si actualmente se puede aceptar una solicitud de detención. Esto no garantiza que el Run pueda detenerse antes del envío.","isRequired":true,"uniqueKey":"runs.items.[INDEX].stoppable","typeLabel":"boolean"},"stop_requested_at":{"oneOf":[{"type":"string","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].stop_requested_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","isRequired":true,"uniqueKey":"runs.items.[INDEX].stop_requested_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].stop_requested_at","typeLabel":"string\u003cdate-time> | null"},"created_at":{"type":"string","description":"Marca de tiempo UTC ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"started_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].started_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].started_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].started_at","typeLabel":"string\u003cdate-time> | null"},"completed_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].completed_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].completed_at","typeLabel":"string\u003cdate-time> | null"},"task_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"runs.items.[INDEX].task_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].task_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].task_id","typeLabel":"string | null"},"metadata":{"type":"object","additionalProperties":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"runs.items.[INDEX].metadata.additionalProperties","typeLabel":"string"},"maxProperties":20,"propertyNames":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,39}$"},"description":"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.\n\n- Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra; como máximo 40 caracteres.\n- Valores: cadenas de 1–500 caracteres.\n- user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.","isRequired":true,"uniqueKey":"runs.items.[INDEX].metadata","typeLabel":"object"}},"required":["id","run_url","provider","endpoint","endpoint_version","status","failure","input","output","provider_response","charge_usd","charge_basis","stoppable","stop_requested_at","created_at","started_at","completed_at","task_id","metadata"],"additionalProperties":false,"uniqueKey":"runs.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"runs","typeLabel":"object[]"},"result_url":{"type":"string","description":"Ruta 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 individual nativo.","isRequired":true,"uniqueKey":"result_url","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","run_url":"\u003cstring>","provider":"\u003cstring>","endpoint":"\u003cstring>","endpoint_version":123,"status":"QUEUED","failure":{"kind":"TIMED_OUT","message":"\u003cstring>"},"input":{},"output":{"items":[{"keyword":"\u003cstring>","volume":123,"cpc_usd":123,"semrush_keyword_difficulty":123,"serpstat_keyword_difficulty":123,"dataforseo_keyword_difficulty":123,"ahrefs_keyword_difficulty":123,"intent":"\u003cstring>"}]},"provider_response":{"http_status":349,"error":"\u003cunknown>"},"charge_usd":"\u003cstring>","charge_basis":{"clause":"rule","quantity":1},"stoppable":true,"stop_requested_at":"2023-11-07T05:31:56Z","created_at":"2023-11-07T05:31:56Z","started_at":"2023-11-07T05:31:56Z","completed_at":"2023-11-07T05:31:56Z","task_id":"\u003cstring>","metadata":{},"action":"keyword_overview","result_status":"success","error":{"code":"\u003cstring>","message":"\u003cstring>"},"runs":[{"id":"\u003cstring>","run_url":"\u003cstring>","provider":"\u003cstring>","endpoint":"\u003cstring>","endpoint_version":123,"status":"QUEUED","failure":{"kind":"TIMED_OUT","message":"\u003cstring>"},"input":{"omitted":true},"output":{"omitted":true},"provider_response":{"http_status":349},"charge_usd":"\u003cstring>","charge_basis":{"clause":"rule","quantity":1},"stoppable":true,"stop_requested_at":"2023-11-07T05:31:56Z","created_at":"2023-11-07T05:31:56Z","started_at":"2023-11-07T05:31:56Z","completed_at":"2023-11-07T05:31:56Z","task_id":"\u003cstring>","metadata":{}}],"result_url":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"0f73130a-b173-4e4a-a2bd-5086070df79b":{"description":"Success","content":{"application/json":{"schema":{"type":"object","required":["id","run_url","provider","endpoint","endpoint_version","status","failure","input","output","provider_response","charge_usd","charge_basis","stoppable","stop_requested_at","created_at","started_at","completed_at","task_id","metadata","action","result_status","error","runs","result_url"],"properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"run_url":{"type":"string","description":"Abre este Run en la consola. Requiere pertenecer a un Workspace.","isRequired":true,"uniqueKey":"run_url","typeLabel":"string"},"provider":{"type":"string","pattern":"^[a-z0-9][a-z0-9-]*$","isRequired":true,"uniqueKey":"provider","typeLabel":"string"},"endpoint":{"type":"string","pattern":"^\\/.+$","isRequired":true,"uniqueKey":"endpoint","typeLabel":"string"},"endpoint_version":{"type":"integer","exclusiveMinimum":0,"isRequired":true,"uniqueKey":"endpoint_version","typeLabel":"integer"},"status":{"type":"string","enum":["QUEUED","RUNNING","COMPLETED","FAILED","STOPPED"],"description":"QUEUED o RUNNING: sigue en curso. COMPLETED: hay una respuesta del proveedor de datos disponible, incluidas las respuestas que no son 2xx. FAILED: consulta `failure`. STOPPED: detenido antes del envío. Consulta charge_usd por separado de status.","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"failure":{"oneOf":[{"type":"object","description":"Motivo por el que falló el Run. No es null únicamente cuando el estado es FAILED.","required":["kind","message"],"properties":{"kind":{"type":"string","enum":["TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"failure.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"failure.oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"failure.oneOf.0","typeLabel":"object"},{"type":"null","description":"Motivo por el que falló el Run. No es null únicamente cuando el estado es FAILED.","isRequired":true,"uniqueKey":"failure.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"failure","typeLabel":"object | null"},"input":{"type":"object","isRequired":true,"uniqueKey":"input","typeLabel":"object"},"output":{"oneOf":[{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"keyword":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].keyword.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].keyword.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].keyword","typeLabel":"string | null"},"volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].volume","typeLabel":"integer | null"},"cpc_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].cpc_usd","typeLabel":"number | enum\u003cstring> | null"},"semrush_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].semrush_keyword_difficulty","typeLabel":"integer | null"},"serpstat_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].serpstat_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].serpstat_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].serpstat_keyword_difficulty","typeLabel":"integer | null"},"dataforseo_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].dataforseo_keyword_difficulty","typeLabel":"integer | null"},"ahrefs_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].ahrefs_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].ahrefs_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].ahrefs_keyword_difficulty","typeLabel":"integer | null"},"intent":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].intent.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].intent.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX].intent","typeLabel":"string | null"}},"required":["keyword","volume","cpc_usd","semrush_keyword_difficulty","serpstat_keyword_difficulty","dataforseo_keyword_difficulty","ahrefs_keyword_difficulty","intent"],"additionalProperties":false,"uniqueKey":"output.oneOf.0.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.0.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.0","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"position":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].position.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].position.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].position","typeLabel":"integer | null"},"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].url","typeLabel":"string | null"},"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].domain","typeLabel":"string | null"},"title":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].title.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].title.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].title","typeLabel":"string | null"},"snippet":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].snippet.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].snippet.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX].snippet","typeLabel":"string | null"}},"required":["position","url","domain","title","snippet"],"additionalProperties":false,"uniqueKey":"output.oneOf.1.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.1.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.1","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["organic_keywords","organic_traffic","organic_traffic_value_usd","paid_keywords","paid_traffic"],"properties":{"organic_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.2.organic_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.organic_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_keywords","typeLabel":"integer | null"},"organic_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic","typeLabel":"number | enum\u003cstring> | null"},"organic_traffic_value_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.organic_traffic_value_usd","typeLabel":"number | enum\u003cstring> | null"},"paid_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.2.paid_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.paid_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.paid_keywords","typeLabel":"integer | null"},"paid_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.2.paid_traffic","typeLabel":"number | enum\u003cstring> | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.2","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"keyword":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].keyword.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].keyword.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].keyword","typeLabel":"string | null"},"position":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].position.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].position.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].position","typeLabel":"integer | null"},"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].url","typeLabel":"string | null"},"volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].volume","typeLabel":"integer | null"},"cpc_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].cpc_usd","typeLabel":"number | enum\u003cstring> | null"},"traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX].traffic","typeLabel":"number | enum\u003cstring> | null"}},"required":["keyword","position","url","volume","cpc_usd","traffic"],"additionalProperties":false,"uniqueKey":"output.oneOf.3.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.3.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.3","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].domain","typeLabel":"string | null"},"common_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].common_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].common_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].common_keywords","typeLabel":"integer | null"},"organic_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_keywords","typeLabel":"integer | null"},"organic_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX].organic_traffic","typeLabel":"number | enum\u003cstring> | null"}},"required":["domain","common_keywords","organic_keywords","organic_traffic"],"additionalProperties":false,"uniqueKey":"output.oneOf.4.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.4.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.4","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["backlinks","referring_domains","semrush_authority_score","dataforseo_rank","serpstat_domain_rank","dofollow_backlinks","nofollow_backlinks"],"properties":{"backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.backlinks","typeLabel":"integer | null"},"referring_domains":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.referring_domains.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.referring_domains.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.referring_domains","typeLabel":"integer | null"},"semrush_authority_score":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.semrush_authority_score.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.semrush_authority_score.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.semrush_authority_score","typeLabel":"integer | null"},"dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.dataforseo_rank","typeLabel":"integer | null"},"serpstat_domain_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.serpstat_domain_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.serpstat_domain_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.serpstat_domain_rank","typeLabel":"integer | null"},"dofollow_backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.dofollow_backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.dofollow_backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.dofollow_backlinks","typeLabel":"integer | null"},"nofollow_backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.5.nofollow_backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.5.nofollow_backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.5.nofollow_backlinks","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.5","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"source_url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_url","typeLabel":"string | null"},"target_url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].target_url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].target_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].target_url","typeLabel":"string | null"},"anchor":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].anchor.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].anchor.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].anchor","typeLabel":"string | null"},"source_ahrefs_domain_rating":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_ahrefs_domain_rating","typeLabel":"number | enum\u003cstring> | null"},"source_semrush_authority_score":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_semrush_authority_score.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_semrush_authority_score.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_semrush_authority_score","typeLabel":"integer | null"},"source_dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].source_dataforseo_rank","typeLabel":"integer | null"},"dofollow":{"oneOf":[{"type":"boolean","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].dofollow.oneOf.0","typeLabel":"boolean"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].dofollow.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].dofollow","typeLabel":"boolean | null"},"first_seen_at":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].first_seen_at.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].first_seen_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX].first_seen_at","typeLabel":"string | null"}},"required":["source_url","target_url","anchor","source_ahrefs_domain_rating","source_semrush_authority_score","source_dataforseo_rank","dofollow","first_seen_at"],"additionalProperties":false,"uniqueKey":"output.oneOf.6.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.6.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.6","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].domain","typeLabel":"string | null"},"ahrefs_domain_rating":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].ahrefs_domain_rating","typeLabel":"number | enum\u003cstring> | null"},"semrush_authority_score":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].semrush_authority_score.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].semrush_authority_score.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].semrush_authority_score","typeLabel":"integer | null"},"dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dataforseo_rank","typeLabel":"integer | null"},"backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].backlinks","typeLabel":"integer | null"},"dofollow_backlinks":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dofollow_backlinks.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dofollow_backlinks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].dofollow_backlinks","typeLabel":"integer | null"},"first_seen_at":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].first_seen_at.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].first_seen_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX].first_seen_at","typeLabel":"string | null"}},"required":["domain","ahrefs_domain_rating","semrush_authority_score","dataforseo_rank","backlinks","dofollow_backlinks","first_seen_at"],"additionalProperties":false,"uniqueKey":"output.oneOf.7.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.7.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.7","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["ahrefs_domain_rating"],"properties":{"ahrefs_domain_rating":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.8.ahrefs_domain_rating","typeLabel":"number | enum\u003cstring> | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.8","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["dataforseo_task_id","crawl_progress","crawl_stop_reason","pages_crawled","dataforseo_onpage_score","broken_links","non_indexable","duplicate_title","duplicate_description","duplicate_content"],"properties":{"dataforseo_task_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_task_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_task_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_task_id","typeLabel":"string | null"},"crawl_progress":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_progress.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_progress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.crawl_progress","typeLabel":"string | null"},"crawl_stop_reason":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_stop_reason.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.crawl_stop_reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.crawl_stop_reason","typeLabel":"string | null"},"pages_crawled":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.pages_crawled.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.pages_crawled.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.pages_crawled","typeLabel":"integer | null"},"dataforseo_onpage_score":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.dataforseo_onpage_score","typeLabel":"number | enum\u003cstring> | null"},"broken_links":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.broken_links.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.broken_links.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.broken_links","typeLabel":"integer | null"},"non_indexable":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.non_indexable.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.non_indexable.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.non_indexable","typeLabel":"integer | null"},"duplicate_title":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_title.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_title.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_title","typeLabel":"integer | null"},"duplicate_description":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_description.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_description","typeLabel":"integer | null"},"duplicate_content":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_content.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_content.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.9.duplicate_content","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.9","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"keyword":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].keyword.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].keyword.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].keyword","typeLabel":"string | null"},"volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].volume","typeLabel":"integer | null"},"cpc_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].cpc_usd","typeLabel":"number | enum\u003cstring> | null"},"semrush_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].semrush_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].semrush_keyword_difficulty","typeLabel":"integer | null"},"dataforseo_keyword_difficulty":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].dataforseo_keyword_difficulty.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].dataforseo_keyword_difficulty","typeLabel":"integer | null"},"positions":{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX].positions","typeLabel":"object"}},"required":["keyword","volume","cpc_usd","semrush_keyword_difficulty","dataforseo_keyword_difficulty","positions"],"additionalProperties":false,"uniqueKey":"output.oneOf.10.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.10.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.10","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].domain","typeLabel":"string | null"},"dataforseo_rank":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].dataforseo_rank.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].dataforseo_rank.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].dataforseo_rank","typeLabel":"integer | null"},"backlinks_per_target":{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX].backlinks_per_target","typeLabel":"object"}},"required":["domain","dataforseo_rank","backlinks_per_target"],"additionalProperties":false,"uniqueKey":"output.oneOf.11.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.11.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.11","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["url","status_code","title","description","canonical","dataforseo_onpage_score","internal_links","external_links"],"properties":{"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.url","typeLabel":"string | null"},"status_code":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.12.status_code.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.status_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.status_code","typeLabel":"integer | null"},"title":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.title.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.title.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.title","typeLabel":"string | null"},"description":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.description.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.description","typeLabel":"string | null"},"canonical":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.12.canonical.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.canonical.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.canonical","typeLabel":"string | null"},"dataforseo_onpage_score":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.dataforseo_onpage_score","typeLabel":"number | enum\u003cstring> | null"},"internal_links":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.12.internal_links.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.internal_links.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.internal_links","typeLabel":"integer | null"},"external_links":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.12.external_links.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.12.external_links.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.12.external_links","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.12","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"month":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].month.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].month.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].month","typeLabel":"string | null"},"organic_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_keywords","typeLabel":"integer | null"},"organic_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic","typeLabel":"number | enum\u003cstring> | null"},"organic_traffic_value_usd":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].organic_traffic_value_usd","typeLabel":"number | enum\u003cstring> | null"},"paid_keywords":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_keywords.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_keywords.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_keywords","typeLabel":"integer | null"},"paid_traffic":{"oneOf":[{"type":"number","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic.oneOf.0","typeLabel":"number"},{"type":"string","enum":["Infinity","-Infinity","NaN"],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic.oneOf.1","typeLabel":"enum\u003cstring>"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX].paid_traffic","typeLabel":"number | enum\u003cstring> | null"}},"required":["month","organic_keywords","organic_traffic","organic_traffic_value_usd","paid_keywords","paid_traffic"],"additionalProperties":false,"uniqueKey":"output.oneOf.13.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.13.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.13","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","properties":{"url":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].url","typeLabel":"string | null"},"platform":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].platform.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].platform","typeLabel":"string | null"},"mentions":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].mentions.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].mentions.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].mentions","typeLabel":"integer | null"},"ai_search_volume":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].ai_search_volume.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].ai_search_volume.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].ai_search_volume","typeLabel":"integer | null"},"is_target_domain":{"oneOf":[{"type":"boolean","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].is_target_domain.oneOf.0","typeLabel":"boolean"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].is_target_domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX].is_target_domain","typeLabel":"boolean | null"}},"required":["url","platform","mentions","ai_search_volume","is_target_domain"],"additionalProperties":false,"uniqueKey":"output.oneOf.14.\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"output.oneOf.14.\\items","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.14","typeLabel":"object"},{"type":"object","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","required":["ahrefs_ai_citations","ahrefs_ai_cited_pages","ahrefs_ai_citations_by_platform","dataforseo_ai_mentions_by_platform","dataforseo_ai_search_volume_by_platform"],"properties":{"ahrefs_ai_citations":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations","typeLabel":"integer | null"},"ahrefs_ai_cited_pages":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_cited_pages.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_cited_pages.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_cited_pages","typeLabel":"integer | null"},"ahrefs_ai_citations_by_platform":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.ahrefs_ai_citations_by_platform","typeLabel":"object | null"},"dataforseo_ai_mentions_by_platform":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_mentions_by_platform","typeLabel":"object | null"},"dataforseo_ai_search_volume_by_platform":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0.additionalProperties","typeLabel":"integer | null"},"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output.oneOf.15.dataforseo_ai_search_volume_by_platform","typeLabel":"object | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"output.oneOf.15","typeLabel":"object"},{"type":"null","description":"Campos normalizados por acción. El resultado nativo del proveedor de datos no se repite aquí; permanece en el Run (GET /v1/runs/:id). Los valores que un proveedor de datos no informa son null. Los importes monetarios están en USD. Las puntuaciones de autoridad conservan la métrica y el nombre propios del proveedor de datos que responde y nunca se convierten: ahrefs_domain_rating (Ahrefs Domain Rating, 0–100), semrush_authority_score (Semrush Authority Score, 0–100), dataforseo_rank (DataForSEO rank, 0–1000), serpstat_domain_rank (Serpstat Domain Rank, 0–100). La dificultad de palabras clave se divide del mismo modo (semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, cada una de 0–100 según su propio modelo). Solo se completa el campo del proveedor de datos que respondió; los demás son null. volume, traffic y cpc son estimaciones del proveedor de datos que responde; compáralos únicamente dentro de un mismo proveedor de datos (runs[].provider). Una respuesta vacía (result_status no_result) conserva la estructura de la acción: items es [], o todos los campos son null.\n\n- keyword_overview: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, serpstat_keyword_difficulty, dataforseo_keyword_difficulty, ahrefs_keyword_difficulty, intent\n- keyword_ideas: items[]: misma fila que keyword_overview\n- serp: items[]: position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, domain, title, snippet (solo resultados orgánicos)\n- domain_overview: organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ranked_keywords: items[]: keyword, position (posición orgánica: 1 = primer resultado orgánico; las funciones de SERP no se contabilizan), url, volume, cpc_usd, traffic\n- organic_competitors: items[]: domain, common_keywords, organic_keywords (total del competidor), organic_traffic (se excluyen el dominio objetivo y sus subdominios)\n- backlinks_overview: backlinks, referring_domains, semrush_authority_score, dataforseo_rank, serpstat_domain_rank, dofollow_backlinks, nofollow_backlinks\n- backlinks: items[]: source_url, target_url, anchor, source_ahrefs_domain_rating, source_semrush_authority_score, source_dataforseo_rank, dofollow, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z). Una fila por enlace de cada proveedor de datos\n- referring_domains: items[]: domain, ahrefs_domain_rating, semrush_authority_score, dataforseo_rank, backlinks, dofollow_backlinks, first_seen_at (ISO 8601 UTC; Semrush: zona no indicada, sin sufijo Z)\n- domain_rating: ahrefs_domain_rating\n- site_audit: dataforseo_task_id (entrada para los endpoints de informes OnPage de DataForSEO), crawl_progress, crawl_stop_reason (vocabulario de DataForSEO), pages_crawled, dataforseo_onpage_score, broken_links, non_indexable, duplicate_title, duplicate_description, duplicate_content\n- keyword_gap: items[]: keyword, volume, cpc_usd, semrush_keyword_difficulty, dataforseo_keyword_difficulty, positions `{domain: posición orgánica; null = no está entre los 100 primeros}`, identificadas por los dominios enviados. Las filas de Semrush son palabras clave para las que posiciona cualquiera de los dominios (unión); las filas de DataForSEO son palabras clave para las que posiciona el competidor y tú no\n- backlink_gap: items[]: domain, dataforseo_rank, backlinks_per_target `{dominio del competidor: cantidad}`\n- page_audit: url, status_code, title, description, canonical, dataforseo_onpage_score, internal_links, external_links\n- visibility_history: items[]: month, organic_keywords, organic_traffic, organic_traffic_value_usd, paid_keywords, paid_traffic\n- ai_citations: items[]: url, platform, mentions, ai_search_volume, is_target_domain (páginas más citadas en respuestas de IA que mencionan el dominio, de cualquier sitio)\n- ai_visibility: ahrefs_ai_citations, ahrefs_ai_cited_pages, ahrefs_ai_citations_by_platform `{platform: citations}`, dataforseo_ai_mentions_by_platform `{platform: mentions}`, dataforseo_ai_search_volume_by_platform `{platform: volumen de búsqueda de IA}`. Cada proveedor de datos completa únicamente sus propios campos; no hay un total combinado entre proveedores","isRequired":true,"uniqueKey":"output.oneOf.16","typeLabel":"null"}],"isRequired":true,"uniqueKey":"output","typeLabel":"object · object · object · object · object · object · object · object · object · object · object · object · object · object · object · object · null"},"provider_response":{"oneOf":[{"type":"object","description":"No es null únicamente cuando el estado es COMPLETED.\n\n- Para respuestas 2xx, output contiene JSON nativo del proveedor de datos (de cualquier estructura), o null si el cuerpo está vacío.\n- Para respuestas que no son 2xx, error contiene el cuerpo de error del proveedor de datos y output es null.\n\nLos campos sensibles se eliminan de ambos cuerpos.","required":["http_status"],"properties":{"http_status":{"type":"integer","minimum":100,"maximum":599,"description":"Estado HTTP devuelto por el proveedor de datos. Compruébalo incluso cuando el Run esté COMPLETED.","isRequired":true,"uniqueKey":"provider_response.oneOf.0.http_status","typeLabel":"integer"},"error":{"oneOf":[{},{"type":"null","uniqueKey":"provider_response.oneOf.0.error.oneOf.1","typeLabel":"null"}],"uniqueKey":"provider_response.oneOf.0.error","typeLabel":"null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"provider_response.oneOf.0","typeLabel":"object"},{"type":"null","description":"No es null únicamente cuando el estado es COMPLETED.\n\n- Para respuestas 2xx, output contiene JSON nativo del proveedor de datos (de cualquier estructura), o null si el cuerpo está vacío.\n- Para respuestas que no son 2xx, error contiene el cuerpo de error del proveedor de datos y output es null.\n\nLos campos sensibles se eliminan de ambos cuerpos.","isRequired":true,"uniqueKey":"provider_response.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"provider_response","typeLabel":"object | null"},"charge_usd":{"oneOf":[{"type":"string","description":"Cargo total de los Runs en esta respuesta de Solution. Es null hasta que se liquiden todos los Runs incluidos. Cada Run conserva su propio cargo; los errores también pueden generar cargos.","pattern":"^(0|[1-9]\\d*)\\.(\\d{2}|\\d{2}\\d{0,3}[1-9])$","isRequired":true,"uniqueKey":"charge_usd.oneOf.0","typeLabel":"string"},{"type":"null","description":"Cargo total de los Runs en esta respuesta de Solution. Es null hasta que se liquiden todos los Runs incluidos. Cada Run conserva su propio cargo; los errores también pueden generar cargos.","isRequired":true,"uniqueKey":"charge_usd.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"charge_usd","typeLabel":"string | null"},"charge_basis":{"oneOf":[{"type":"object","description":"Base del cargo de un único Run, o null para un total de varios Runs. Consulta runs[].charge_basis para cada cargo.","required":["clause","quantity"],"properties":{"clause":{"type":"string","enum":["rule","NO_RESULT","PROVIDER_ERROR","TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"charge_basis.oneOf.0.clause","typeLabel":"enum\u003cstring>"},"quantity":{"oneOf":[{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"charge_basis.oneOf.0.quantity.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"charge_basis.oneOf.0.quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"charge_basis.oneOf.0.quantity","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"charge_basis.oneOf.0","typeLabel":"object"},{"type":"null","description":"Base del cargo de un único Run, o null para un total de varios Runs. Consulta runs[].charge_basis para cada cargo.","isRequired":true,"uniqueKey":"charge_basis.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"charge_basis","typeLabel":"object | null"},"stoppable":{"type":"boolean","description":"Indica si actualmente se puede aceptar una solicitud de detención. Esto no garantiza que el Run pueda detenerse antes del envío.","isRequired":true,"uniqueKey":"stoppable","typeLabel":"boolean"},"stop_requested_at":{"oneOf":[{"type":"string","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","format":"date-time","isRequired":true,"uniqueKey":"stop_requested_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","isRequired":true,"uniqueKey":"stop_requested_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"stop_requested_at","typeLabel":"string\u003cdate-time> | null"},"created_at":{"type":"string","description":"Marca de tiempo UTC en formato ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"started_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC en formato ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"started_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"started_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"started_at","typeLabel":"string\u003cdate-time> | null"},"completed_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC en formato ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"completed_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"completed_at","typeLabel":"string\u003cdate-time> | null"},"task_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"task_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"task_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"task_id","typeLabel":"string | null"},"metadata":{"type":"object","additionalProperties":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"maxProperties":20,"propertyNames":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,39}$"},"description":"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.\n\n- Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra; como máximo 40 caracteres.\n- Valores: cadenas de 1–500 caracteres.\n- user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.","isRequired":true,"uniqueKey":"metadata","typeLabel":"object"},"action":{"type":"string","enum":["keyword_overview","keyword_ideas","serp","domain_overview","ranked_keywords","organic_competitors","backlinks_overview","backlinks","referring_domains","domain_rating","site_audit","ai_visibility","keyword_gap","backlink_gap","page_audit","visibility_history","ai_citations"],"isRequired":true,"uniqueKey":"action","typeLabel":"enum\u003cstring>"},"result_status":{"type":"string","enum":["success","no_result","error","pending"],"description":"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 el resultado del proveedor de datos.","isRequired":true,"uniqueKey":"result_status","typeLabel":"enum\u003cstring>"},"error":{"oneOf":[{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"error.oneOf.0.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"error.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"error","typeLabel":"object | null"},"runs":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"runs.items.[INDEX].id","typeLabel":"string"},"run_url":{"type":"string","description":"Abre este Run en la consola. Requiere pertenencia al Workspace.","isRequired":true,"uniqueKey":"runs.items.[INDEX].run_url","typeLabel":"string"},"provider":{"type":"string","pattern":"^[a-z0-9][a-z0-9-]*$","isRequired":true,"uniqueKey":"runs.items.[INDEX].provider","typeLabel":"string"},"endpoint":{"type":"string","pattern":"^\\/.+$","isRequired":true,"uniqueKey":"runs.items.[INDEX].endpoint","typeLabel":"string"},"endpoint_version":{"type":"integer","exclusiveMinimum":0,"isRequired":true,"uniqueKey":"runs.items.[INDEX].endpoint_version","typeLabel":"integer"},"status":{"type":"string","enum":["QUEUED","RUNNING","COMPLETED","FAILED","STOPPED"],"description":"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.","isRequired":true,"uniqueKey":"runs.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"failure":{"oneOf":[{"type":"object","description":"Motivo por el que falló el Run. Solo es distinto de null cuando status es FAILED.","required":["kind","message"],"properties":{"kind":{"type":"string","enum":["TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.0","typeLabel":"object"},{"type":"null","description":"Motivo por el que falló el Run. Solo es distinto de null cuando status es FAILED.","isRequired":true,"uniqueKey":"runs.items.[INDEX].failure.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].failure","typeLabel":"object | null"},"input":{"type":"object","properties":{"omitted":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"runs.items.[INDEX].input.omitted","typeLabel":"enum\u003cboolean>"}},"required":["omitted"],"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].input","typeLabel":"object"},"output":{"type":"object","properties":{"omitted":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"runs.items.[INDEX].output.omitted","typeLabel":"enum\u003cboolean>"}},"required":["omitted"],"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].output","typeLabel":"object"},"provider_response":{"oneOf":[{"type":"object","required":["http_status"],"properties":{"http_status":{"type":"integer","minimum":100,"maximum":599,"description":"Estado HTTP devuelto por el proveedor de datos. Compruébalo incluso cuando el Run esté COMPLETED.","isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response.oneOf.0.http_status","typeLabel":"integer"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].provider_response","typeLabel":"object | null"},"charge_usd":{"oneOf":[{"type":"string","description":"Cargo final como cadena decimal exacta en USD. Es null mientras está QUEUED o RUNNING. Un Run FAILED puede tener un cargo distinto de cero según el Price del Endpoint.","pattern":"^(0|[1-9]\\d*)\\.(\\d{2}|\\d{2}\\d{0,3}[1-9])$","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_usd.oneOf.0","typeLabel":"string"},{"type":"null","description":"Cargo final como cadena decimal exacta en USD. Es null mientras está QUEUED o RUNNING. Un Run FAILED puede tener un cargo distinto de cero según el Price del Endpoint.","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_usd.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_usd","typeLabel":"string | null"},"charge_basis":{"oneOf":[{"type":"object","description":"Cláusula de Price utilizada para calcular el cargo. Es null antes de la liquidación o cuando no se realizó ningún intento con el proveedor de datos.","required":["clause","quantity"],"properties":{"clause":{"type":"string","enum":["rule","NO_RESULT","PROVIDER_ERROR","TIMED_OUT","INTERNAL"],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.clause","typeLabel":"enum\u003cstring>"},"quantity":{"oneOf":[{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.quantity.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0.quantity","typeLabel":"integer | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.0","typeLabel":"object"},{"type":"null","description":"Cláusula de Price utilizada para calcular el cargo. Es null antes de la liquidación o cuando no se realizó ningún intento con el proveedor de datos.","isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].charge_basis","typeLabel":"object | null"},"stoppable":{"type":"boolean","description":"Indica si actualmente se puede aceptar una solicitud de detención. Esto no garantiza que el Run pueda detenerse antes del envío.","isRequired":true,"uniqueKey":"runs.items.[INDEX].stoppable","typeLabel":"boolean"},"stop_requested_at":{"oneOf":[{"type":"string","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].stop_requested_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Momento en que se solicitó la detención. El Run puede continuar si el envío ya había comenzado.","isRequired":true,"uniqueKey":"runs.items.[INDEX].stop_requested_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].stop_requested_at","typeLabel":"string\u003cdate-time> | null"},"created_at":{"type":"string","description":"Marca de tiempo UTC ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"started_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].started_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].started_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].started_at","typeLabel":"string\u003cdate-time> | null"},"completed_at":{"oneOf":[{"type":"string","description":"Marca de tiempo UTC ISO-8601","format":"date-time","isRequired":true,"uniqueKey":"runs.items.[INDEX].completed_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].completed_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].completed_at","typeLabel":"string\u003cdate-time> | null"},"task_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"runs.items.[INDEX].task_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"runs.items.[INDEX].task_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"runs.items.[INDEX].task_id","typeLabel":"string | null"},"metadata":{"type":"object","additionalProperties":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"runs.items.[INDEX].metadata.additionalProperties","typeLabel":"string"},"maxProperties":20,"propertyNames":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,39}$"},"description":"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.\n\n- Hasta 20 claves: letras minúsculas, dígitos y guiones bajos; deben comenzar por una letra; como máximo 40 caracteres.\n- Valores: cadenas de 1–500 caracteres.\n- user_id: el ID opaco de tu usuario final, nunca su dirección de correo electrónico ni su nombre.","isRequired":true,"uniqueKey":"runs.items.[INDEX].metadata","typeLabel":"object"}},"required":["id","run_url","provider","endpoint","endpoint_version","status","failure","input","output","provider_response","charge_usd","charge_basis","stoppable","stop_requested_at","created_at","started_at","completed_at","task_id","metadata"],"additionalProperties":false,"uniqueKey":"runs.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"runs","typeLabel":"object[]"},"result_url":{"type":"string","description":"Ruta 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 individual nativo.","isRequired":true,"uniqueKey":"result_url","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","run_url":"\u003cstring>","provider":"\u003cstring>","endpoint":"\u003cstring>","endpoint_version":123,"status":"QUEUED","failure":{"kind":"TIMED_OUT","message":"\u003cstring>"},"input":{},"output":{"items":[{"keyword":"\u003cstring>","volume":123,"cpc_usd":123,"semrush_keyword_difficulty":123,"serpstat_keyword_difficulty":123,"dataforseo_keyword_difficulty":123,"ahrefs_keyword_difficulty":123,"intent":"\u003cstring>"}]},"provider_response":{"http_status":349,"error":"\u003cunknown>"},"charge_usd":"\u003cstring>","charge_basis":{"clause":"rule","quantity":1},"stoppable":true,"stop_requested_at":"2023-11-07T05:31:56Z","created_at":"2023-11-07T05:31:56Z","started_at":"2023-11-07T05:31:56Z","completed_at":"2023-11-07T05:31:56Z","task_id":"\u003cstring>","metadata":{},"action":"keyword_overview","result_status":"success","error":{"code":"\u003cstring>","message":"\u003cstring>"},"runs":[{"id":"\u003cstring>","run_url":"\u003cstring>","provider":"\u003cstring>","endpoint":"\u003cstring>","endpoint_version":123,"status":"QUEUED","failure":{"kind":"TIMED_OUT","message":"\u003cstring>"},"input":{"omitted":true},"output":{"omitted":true},"provider_response":{"http_status":349},"charge_usd":"\u003cstring>","charge_basis":{"clause":"rule","quantity":1},"stoppable":true,"stop_requested_at":"2023-11-07T05:31:56Z","created_at":"2023-11-07T05:31:56Z","started_at":"2023-11-07T05:31:56Z","completed_at":"2023-11-07T05:31:56Z","task_id":"\u003cstring>","metadata":{}}],"result_url":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"8bcf37c0-c7bc-4af6-828c-b9b2cba1276d":{"description":"ValidationFailed | IdempotencyKeyRequired","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error","request_id"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["validation_failed"],"isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"oneOf.0.error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"oneOf.0.error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"oneOf.0.error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"oneOf.0.error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"oneOf.0.error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.request_id","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["error","request_id"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["idempotency_key_required"],"isRequired":true,"uniqueKey":"oneOf.1.error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"oneOf.1.error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"oneOf.1.error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"oneOf.1.error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"oneOf.1.error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"oneOf.1.error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.request_id","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["error","request_id"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["validation_failed"],"isRequired":true,"uniqueKey":"oneOf.2.error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"oneOf.2.error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.2.error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"oneOf.2.error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"oneOf.2.error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"oneOf.2.error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"oneOf.2.error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"oneOf.2.error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"oneOf.2.error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.2.error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.2.error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.2.request_id","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.2","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"validation_failed","message":"\u003cstring>","reason":"\u003cstring>","control":"\u003cstring>","retry_after_ms":123,"details":{}},"request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"03e82bb7-e392-4ade-b724-3a5dce29484c":{"description":"Unauthorized","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["unauthorized"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"required":["error","request_id"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"unauthorized","message":"\u003cstring>","reason":"\u003cstring>","control":"\u003cstring>","retry_after_ms":123,"details":{}},"request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"5bf4409d-d984-414a-ba66-f84a9f4769d5":{"description":"InsufficientBalance","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["insufficient_balance"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"required":["error","request_id"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"insufficient_balance","message":"\u003cstring>","reason":"\u003cstring>","control":"\u003cstring>","retry_after_ms":123,"details":{}},"request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"1653a5c8-21e9-438f-8113-bada64a31cf6":{"description":"EndpointNotPermitted | Forbidden","content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error","request_id"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["endpoint_not_permitted"],"isRequired":true,"uniqueKey":"oneOf.0.error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"oneOf.0.error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.0.error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"oneOf.0.error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"oneOf.0.error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"oneOf.0.error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"oneOf.0.error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"oneOf.0.error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.request_id","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["error","request_id"],"properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["forbidden"],"isRequired":true,"uniqueKey":"oneOf.1.error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"oneOf.1.error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"oneOf.1.error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"oneOf.1.error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"oneOf.1.error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"oneOf.1.error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"oneOf.1.error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"oneOf.1.error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.1.error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.request_id","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"endpoint_not_permitted","message":"\u003cstring>","reason":"\u003cstring>","control":"\u003cstring>","retry_after_ms":123,"details":{}},"request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"77103c20-a0d2-416d-9ce8-557cd32f4fb8":{"description":"IdempotencyConflict","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["idempotency_conflict"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"required":["error","request_id"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"idempotency_conflict","message":"\u003cstring>","reason":"\u003cstring>","control":"\u003cstring>","retry_after_ms":123,"details":{}},"request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"438b24e6-b689-4606-aa23-085bba16eb51":{"description":"RateLimited","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["rate_limited"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"required":["error","request_id"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"rate_limited","message":"\u003cstring>","reason":"\u003cstring>","control":"\u003cstring>","retry_after_ms":123,"details":{}},"request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"d74c146f-c881-4633-9561-ea9b517db79a":{"description":"ServiceUnavailable","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","enum":["service_unavailable"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","uniqueKey":"error.reason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.reason","typeLabel":"string | null"},"control":{"oneOf":[{"type":"string","uniqueKey":"error.control.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"error.control.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.control","typeLabel":"string | null"},"retry_after_ms":{"oneOf":[{"type":"integer","uniqueKey":"error.retry_after_ms.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.1","typeLabel":"null"},{"type":"null","uniqueKey":"error.retry_after_ms.oneOf.2","typeLabel":"null"}],"uniqueKey":"error.retry_after_ms","typeLabel":"integer · null · null"},"details":{"oneOf":[{"type":"object","uniqueKey":"error.details.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"error.details.oneOf.1","typeLabel":"null"}],"uniqueKey":"error.details","typeLabel":"object | null"}},"required":["code","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"type":"string","isRequired":true,"uniqueKey":"request_id","typeLabel":"string"}},"required":["error","request_id"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"service_unavailable","message":"\u003cstring>","reason":"\u003cstring>","control":"\u003cstring>","retry_after_ms":123,"details":{}},"request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"14b7a3de-9af7-4a96-b16f-b7397d4050f7":{"bearer":{"type":"http","scheme":"Bearer","scopes":[],"schemeName":"bearer"}}},"servers":{"b82e206e-ccbf-4044-83e7-08a2484228ed":{"url":"https://api.glasser.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"Bearer","scopes":[],"schemeName":"bearer"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearer","name":"Authorization"}],"title":"bearer"}]},"originalFileLocation":"openapi.es.json"},"subdomain":"glasser","siteName":"Glasser","title":"Investigación SEO - Glasser","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/solutions/gtm/seo_research","matchLevel":1},"zh-CN":{"href":"/zh/api-reference/solutions/gtm/seo_research","matchLevel":1},"es":{"href":"/es/api-reference/solutions/gtm/seo_research","matchLevel":0},"pt-BR":{"href":"/pt/api-reference/solutions/gtm/seo_research","matchLevel":1}}},"lastModified":"2026-11-10T13:08:43.760Z","originalFileLocation":"es/api-reference/solutions/gtm/seo_research.mdx","locale":"es"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Glasser\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Investigación SEO - Glasser\">\u003cmeta data-mint-head property=\"og:description\" content=\"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Glasser\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://glasser.mintlify.site/docs/_mintlify/api/og/v2?division=Solutions\u0026amp;title=Investigaci%C3%B3n+SEO\u0026amp;description=Investiga+el+volumen+y+la+dificultad+de+palabras+clave%2C+las+posiciones+en+b%C3%BAsquedas%2C+los+backlinks%2C+las+auditor%C3%ADas+de+sitios+y+la+visibilidad+en+respuestas+de+I\u0026amp;theme=3ee88162cbaf966a7048062a\u0026amp;signature=345c70b2a82a123a099d600f7d99dc681dd7c73fca9c629185fff99863b55353\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Investigación SEO - Glasser\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://glasser.mintlify.site/docs/_mintlify/api/og/v2?division=Solutions\u0026amp;title=Investigaci%C3%B3n+SEO\u0026amp;description=Investiga+el+volumen+y+la+dificultad+de+palabras+clave%2C+las+posiciones+en+b%C3%BAsquedas%2C+los+backlinks%2C+las+auditor%C3%ADas+de+sitios+y+la+visibilidad+en+respuestas+de+I\u0026amp;theme=3ee88162cbaf966a7048062a\u0026amp;signature=345c70b2a82a123a099d600f7d99dc681dd7c73fca9c629185fff99863b55353\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/glasser/BkuzOUT55q1vTY9q/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Glasser\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#111111\">\u003clink data-mint-head rel=\"canonical\" href=\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/es/api-reference/solutions/gtm/seo_research.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://glasser.ai/docs/api-reference/solutions/gtm/seo_research\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-CN\" href=\"https://glasser.ai/docs/zh/api-reference/solutions/gtm/seo_research\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://glasser.ai/docs/pt/api-reference/solutions/gtm/seo_research\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://glasser.ai/docs/api-reference/solutions/gtm/seo_research\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://glasser.ai/#organization\",\"name\":\"Glasser\",\"url\":\"https://glasser.ai\"},{\"@type\":\"WebSite\",\"@id\":\"https://glasser.ai/docs#website\",\"name\":\"Glasser\",\"url\":\"https://glasser.ai/docs\",\"publisher\":{\"@id\":\"https://glasser.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research#webpage\",\"url\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research\",\"name\":\"Investigación SEO\",\"description\":\"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.\",\"dateModified\":\"2026-11-10T13:08:43.760Z\",\"isPartOf\":{\"@id\":\"https://glasser.ai/docs#website\"},\"breadcrumb\":{\"@id\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Solutions\",\"item\":\"https://glasser.ai/docs/es/api-reference/solutions/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Investigación SEO\",\"item\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research#apireference\",\"headline\":\"Investigación SEO\",\"name\":\"Investigación SEO\",\"description\":\"Investiga el volumen y la dificultad de palabras clave, las posiciones en búsquedas, los backlinks, las auditorías de sitios y la visibilidad en respuestas de IA en varios proveedores de datos con un único resultado normalizado. Elige una acción y proporciona palabras clave o un dominio.\",\"url\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research\",\"mainEntityOfPage\":{\"@id\":\"https://glasser.ai/docs/es/api-reference/solutions/gtm/seo_research#webpage\"},\"dateModified\":\"2026-11-10T13:08:43.760Z\",\"publisher\":{\"@id\":\"https://glasser.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://glasser.ai/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Glasser\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Glasser\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/docs/es/api-reference/solutions/gtm/seo_research.md","siteName":"Glasser","nav":{"global":null,"languages":[{"language":"en","default":true,"pages":[{"title":"en","href":"/api-reference/solutions/gtm/seo_research"}]},{"language":"zh-CN","navbar":{"primary":{"type":"button","label":"开始使用","href":"https://app.glasser.ai/get-started?utm_source=docs\u0026utm_medium=navbar\u0026locale=zh-CN"}},"pages":[{"title":"zh-CN","href":"/zh/api-reference/solutions/gtm/seo_research"}]},{"language":"es","navbar":{"primary":{"type":"button","label":"Comenzar","href":"https://app.glasser.ai/get-started?utm_source=docs\u0026utm_medium=navbar\u0026locale=es"}},"tabs":[{"tab":"Documentación","pages":[{"title":"Documentación","href":"/es"}]},{"tab":"Referencia de la API","groups":[{"group":"Primeros pasos","pages":[{"title":"Descripción general de la API","sidebarTitle":"Descripción general","href":"/es/api-reference/overview"}]},{"group":"Endpoints","pages":[{"title":"Listar proveedores de datos y endpoints","api":"GET https://api.glasser.ai/public/catalog","href":"/es/api-reference/endpoints/list"},{"title":"Buscar endpoints ejecutables","deprecated":null,"version":null,"sidebarTitle":"Buscar endpoints ejecutables","openapi":"/openapi.es.json post /v1/endpoints/search","href":"/es/api-reference/endpoints/search"},{"title":"Inspeccionar un Endpoint","deprecated":null,"version":null,"sidebarTitle":"Inspeccionar un Endpoint","openapi":"/openapi.es.json post /v1/endpoints/inspect","href":"/es/api-reference/endpoints/inspect"}]},{"group":"Run","pages":[{"title":"Crear un Run","deprecated":null,"version":null,"sidebarTitle":"Crear un Run","openapi":"/openapi.es.json post /v1/runs","href":"/es/api-reference/runs/create"},{"title":"Listar Run","deprecated":null,"version":null,"sidebarTitle":"Listar Run","openapi":"/openapi.es.json get /v1/runs","href":"/es/api-reference/runs/list"},{"title":"Obtener un Run","deprecated":null,"version":null,"sidebarTitle":"Obtener un Run","openapi":"/openapi.es.json get /v1/runs/{runId}","href":"/es/api-reference/runs/get"},{"title":"Detener un Run","deprecated":null,"version":null,"sidebarTitle":"Detener un Run","openapi":"/openapi.es.json post /v1/runs/{runId}/stop","href":"/es/api-reference/runs/stop"}]},{"group":"Saldo","pages":[{"title":"Consultar saldo","deprecated":null,"version":null,"sidebarTitle":"Consultar saldo","openapi":"/openapi.es.json get /v1/balance","href":"/es/api-reference/balance/get"},{"title":"Listar historial de saldo","deprecated":null,"version":null,"sidebarTitle":"Listar historial de saldo","openapi":"/openapi.es.json get /v1/balance/history","href":"/es/api-reference/balance/history"}]},{"group":"Fuentes de datos","pages":[{"title":"Jev API","sidebarTitle":"Jev","href":"/es/api-reference/data-sources/jev"}]},{"group":"Solutions","pages":[{"title":"Descripción general de las soluciones","sidebarTitle":"Descripción general","href":"/es/api-reference/solutions/overview"},{"title":"Investigación web","deprecated":null,"version":null,"sidebarTitle":"Investigación web","openapi":"/openapi.es.json post /v1/solutions/gtm/web_research","href":"/es/api-reference/solutions/gtm/web_research"},{"title":"Leer un resultado de investigación web","deprecated":null,"version":null,"sidebarTitle":"Leer un resultado de investigación web","openapi":"/openapi.es.json get /v1/solutions/gtm/web_research/result","href":"/es/api-reference/solutions/gtm/web_research/result"},{"title":"Información sobre empresas","deprecated":null,"version":null,"sidebarTitle":"Información sobre empresas","openapi":"/openapi.es.json post /v1/solutions/gtm/company_intelligence","href":"/es/api-reference/solutions/gtm/company_intelligence"},{"title":"Leer un resultado de inteligencia empresarial","deprecated":null,"version":null,"sidebarTitle":"Leer un resultado de inteligencia empresarial","openapi":"/openapi.es.json get /v1/solutions/gtm/company_intelligence/result","href":"/es/api-reference/solutions/gtm/company_intelligence/result"},{"title":"Búsqueda de personas","deprecated":null,"version":null,"sidebarTitle":"Búsqueda de personas","openapi":"/openapi.es.json post /v1/solutions/gtm/people_search","href":"/es/api-reference/solutions/gtm/people_search"},{"title":"Leer el resultado de una búsqueda de personas","description":"Lee el resultado normalizado, el estado de entrega y los cargos totales de una solicitud de búsqueda de personas existente. Sigue el result_url que devuelve la llamada.","deprecated":null,"version":null,"sidebarTitle":"Leer el resultado de una búsqueda de personas","openapi":"/openapi.es.json get /v1/solutions/gtm/people_search/result","href":"/es/api-reference/solutions/gtm/people_search/result"},{"title":"Investigación SEO","deprecated":null,"version":null,"sidebarTitle":"Investigación SEO","openapi":"/openapi.es.json post /v1/solutions/gtm/seo_research","href":"/es/api-reference/solutions/gtm/seo_research"},{"title":"Leer el resultado de una investigación SEO","description":"Lee el resultado normalizado, el estado de entrega y los cargos totales de una solicitud de investigación SEO existente. Sigue el result_url que devuelve la llamada.","deprecated":null,"version":null,"sidebarTitle":"Leer el resultado de una investigación SEO","openapi":"/openapi.es.json get /v1/solutions/gtm/seo_research/result","href":"/es/api-reference/solutions/gtm/seo_research/result"},{"title":"Investigación en redes sociales","deprecated":null,"version":null,"sidebarTitle":"Investigación en redes sociales","openapi":"/openapi.es.json post /v1/solutions/gtm/social_research","href":"/es/api-reference/solutions/gtm/social_research"},{"title":"Leer un resultado de investigación social","deprecated":null,"version":null,"sidebarTitle":"Leer un resultado de investigación social","openapi":"/openapi.es.json get /v1/solutions/gtm/social_research/result","href":"/es/api-reference/solutions/gtm/social_research/result"},{"title":"Datos de mercado","deprecated":null,"version":null,"sidebarTitle":"Datos de mercado","openapi":"/openapi.es.json post /v1/solutions/gtm/market_data","href":"/es/api-reference/solutions/gtm/market_data"},{"title":"Leer un resultado de datos de mercado","deprecated":null,"version":null,"sidebarTitle":"Leer un resultado de datos de mercado","openapi":"/openapi.es.json get /v1/solutions/gtm/market_data/result","href":"/es/api-reference/solutions/gtm/market_data/result"}]}]},{"tab":"Referencia de la CLI","pages":[{"title":"Referencia de la CLI","href":"/es/cli"}]},{"tab":"Integraciones","pages":[{"title":"Integraciones","href":"/es/integrations/overview"}]}]},{"language":"pt-BR","navbar":{"primary":{"type":"button","label":"Começar","href":"https://app.glasser.ai/get-started?utm_source=docs\u0026utm_medium=navbar\u0026locale=pt-BR"}},"pages":[{"title":"pt-BR","href":"/pt/api-reference/solutions/gtm/seo_research"}]}]},"basePath":"","title":"Investigación SEO - Glasser","buildId":"dpl_6PxPD4Fj1JDU9BJxEHvfdUmxKThw","deploymentId":"dpl_6PxPD4Fj1JDU9BJxEHvfdUmxKThw","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CASS2Vpq.js","utils-4k9fyWRu.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-UU-UueZb.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BgJ0LOYq.js","snippetPresets-CMgzlMR-.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BzEJegkK.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CZuQIZdk.js","shallow-Bw5arfMA.js","getApiPlaygroundDisplay-Ds834aVN.js","CodeSnippet-CKzmjw9L.js","CodeSnippets-BRpgomdp.js","Page-DvEUoD2H.js","getPastedJson-B0N-Tn76.js","icon-DASMs9nC.js","MethodPill-BA6DBLqx.js","DuplicateIcon-BMT5qfbJ.js","createIcon-CNfwVWPx.js","DynamicMarkdown-JYyBNlrJ.js","SectionHeading-BbZnmz8a.js","axios-vUo_bRtp.js","Markdown-LUU0YLpA.js","clsx-Di4ek5Ae.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-VEVWQCR4.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CPszyu99.js"]}