Search Analytics: query

Requiere autorización.

Consulta tus datos de tráfico de búsqueda con los filtros y parámetros que definas. El método muestra cero o más filas agrupadas por las claves de fila (dimensiones) que definas. Debes definir un período de uno o más días.

Cuando la fecha es una de las dimensiones, se omiten los días sin datos de la lista de resultados. Para saber qué días tienen datos, emite una consulta sin filtros agrupados por fecha para el período en cuestión.

Los resultados se ordenan por recuento de clics de forma descendente. Si dos filas tienen la misma cantidad de clics, se ordenan de manera arbitraria.

Consulta el ejemplo de Python para llamar a este método.

La API está limitada por las limitaciones internas de Search Console y no garantiza que devuelva todas las filas de datos, sino las principales.

Consulta los límites de la cantidad de datos disponibles.

Ejemplo de POST JSON:
POST https://www.googleapis.com/webmasters/v3/sites/https%3A%2F%2Fwww.example.com%2F/searchAnalytics/query?key={MY_API_KEY}
{
  "startDate": "2015-04-01",
  "endDate": "2015-05-01",
  "dimensions": ["country","device"]
}
Pruébalo ahora.

Solicitud

Solicitud HTTP

POST https://www.googleapis.com/webmasters/v3/sites/siteUrl/searchAnalytics/query

Parámetros

Nombre del parámetro Valor Descripción
Parámetros de ruta de acceso
siteUrl string La URL de la propiedad, como se define en Search Console. Ejemplos: http://www.example.com/ (para una propiedad de prefijo de URL) o sc-domain:example.com (para una propiedad de dominio)

Autorización

Esta solicitud requiere autorización con al menos uno de los siguientes alcances (obtén más información acerca de la autenticación y autorización).

Alcance
https://www.googleapis.com/auth/webmasters.readonly
https://www.googleapis.com/auth/webmasters

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporciona los datos con la siguiente estructura:

{
  "startDate": string,
  "endDate": string,
  "dimensions": [
    string
  ],
  "type": string,
  "dimensionFilterGroups": [
    {
      "groupType": string,
      "filters": [
        {
          "dimension": string,
          "operator": string,
          "expression": string
        }
      ]
    }
  ],
  "aggregationType": string,
  "rowLimit": integer,
  "startRow": integer
}
Nombre de la propiedad Valor Descripción Notas
startDate string [Obligatorio] Es la fecha de inicio del período solicitado, en formato AAAA-MM-DD, en hora del Pacífico (UTC - 7:00/8:00). Debe ser menor o igual que la fecha de finalización. Este valor se incluye en el rango.
endDate string [Obligatorio] Es la fecha de finalización del período solicitado, en formato AAAA-MM-DD, en la hora del PT (UTC - 7:00/8:00). Debe ser mayor o igual que la fecha de inicio. Este valor se incluye en el rango.
dimensions[] list [Opcional] Cero o más dimensiones para agrupar los resultados. Los resultados se agrupan en el orden en que proporcionas estas dimensiones.Puedes usar cualquier nombre de dimensión en dimensionFilterGroups[].filters[].dimension y "date". Los valores de la dimensión de agrupación se combinan para crear una clave única para cada fila de resultados. Si no se especifican dimensiones, todos los valores se combinarán en una sola fila. No hay límite para la cantidad de dimensiones que puedes agrupar, pero no puedes agrupar por la misma dimensión dos veces. Ejemplo: [country, device]
searchType string Obsoleto; usa type en su lugar.
type string [Opcional] Filtra los resultados según el siguiente tipo:
  • "discover": Indica resultados de Descubre.
  • "googleNews": Resultados de news.google.com y la app de Google Noticias en iOS y Android. No incluye los resultados de la pestaña "Noticias" de la Búsqueda de Google.
  • "news": Resultados de la búsqueda de la pestaña "Noticias" en la Búsqueda de Google.
  • "image": Son los resultados de la búsqueda de la pestaña "Imagen" en la Búsqueda de Google.
  • "video": Resultados de la búsqueda de videos
  • "web": [Predeterminado] Filtra los resultados en la pestaña combinada ("Todos") de la Búsqueda de Google. No incluye los resultados de Descubre ni Google Noticias.
dimensionFilterGroups[] list [Opcional] Cero o más grupos de filtros para aplicar a los valores de agrupación de dimensiones. Todos los grupos de filtros deben coincidir para que se devuelva una fila en la respuesta. Dentro de un solo grupo de filtros, puedes especificar si todos los filtros deben coincidir o si al menos uno debe hacerlo.
dimensionFilterGroups[].groupType string Indica si todos los filtros de este grupo deben mostrar un valor verdadero ("y") o si uno o más deben mostrar un valor verdadero (aún no se admite).

Los valores aceptables son los siguientes:
  • "and": Todos los filtros del grupo deben mostrar un valor verdadero para que el grupo de filtros sea verdadero.
dimensionFilterGroups[].filters[] list [Opcional] Es cero o más filtros para probar en la fila. Cada filtro consta de un nombre de dimensión, un operador y un valor. La longitud máxima es de 4,096 caracteres. Ejemplos:
country equals FRA
query contains mobile use
device notContains tablet
dimensionFilterGroups[].filters[].dimension string La dimensión a la que se aplica este filtro. Puedes filtrar por cualquier dimensión que aparezca aquí, incluso si no estás agrupando por esa dimensión.

Los valores aceptables son los siguientes:
  • "country": Filtra según el país especificado, como se especifica con el código de país de 3 letras (ISO 3166-1 alpha-3).
  • "device": Filtra los resultados según el tipo de dispositivo especificado. Valores admitidos:
    • DESKTOP
    • DISPOSITIVOS MÓVILES
    • TABLET
  • "page": Filtra según la cadena de URI especificada.
  • "query": Filtra según la cadena de consulta especificada.
  • "searchAppearance": Filtra según una función específica de los resultados de la búsqueda. Para ver una lista de los valores disponibles, ejecuta una consulta agrupada por "searchAppearance". La lista completa de valores y descripciones también está disponible en la documentación de ayuda.
dimensionFilterGroups[].filters[].operator string [Opcional] Indica cómo el valor que especificaste debe coincidir (o no) con el valor de la dimensión de la fila.

Los valores aceptables son los siguientes:
  • "contains": El valor de la fila debe contener tu expresión o ser igual a ella (no distingue mayúsculas de minúsculas).
  • "equals": [Opción predeterminada] Tu expresión debe ser exactamente igual al valor de la fila (distingue mayúsculas de minúsculas para las dimensiones de página y consulta).
  • "notContains": El valor de la fila no debe contener tu expresión como una subcadena ni una coincidencia completa (sin distinción entre mayúsculas y minúsculas).
  • "notEquals": La expresión no debe ser exactamente igual al valor de la fila (distingue mayúsculas de minúsculas para las dimensiones de la página y de la búsqueda).
  • "includingRegex": Es una expresión regular con sintaxis RE2 que debe coincidir.
  • "excludingRegex": Es una expresión regular con sintaxis RE2 que no debe coincidir.
dimensionFilterGroups[].filters[].expression string Es el valor del filtro que debe coincidir o excluir, según el operador.
aggregationType string

[Opcional] Indica cómo se agregan los datos. Si se agregan por propiedad, se agregan todos los datos de la misma propiedad. Si se agregan por página, se agregan todos los datos por URI canónico. Si filtras o agrupas por página, elige la opción automática. De lo contrario, puedes agregar los datos por propiedad o por página, según cómo desees que se calculen tus datos. Consulta la documentación de ayuda para descubrir cómo se calculan los datos de manera diferente por sitio y por página.

Nota: Si agrupas o filtras por página, no puedes agregar por propiedad.

Si especificas cualquier valor que no sea auto, el tipo de agregación en el resultado coincidirá con el tipo solicitado o, si solicitas un tipo no válido, se mostrará un error. La API nunca cambiará tu tipo de agregación si el tipo solicitado no es válido.

Los valores aceptables son los siguientes:
  • "auto": [Predeterminada] Permite que el servicio decida el tipo de agregación adecuado.
  • "byNewsShowcasePanel": Agrupa los valores por panel de News Showcase. Se debe usar en combinación con el filtro searchAppearance NEWS_SHOWCASE y type=discover o type=googleNews. Si agrupas por página, filtras por página o filtras a otro searchAppearance, no puedes agregar por byNewsShowcasePanel.
  • "byPage": Valores agregados por URI.
  • "byProperty": Agrupa los valores por propiedad. No se admite para type=discover ni type=googleNews
rowLimit integer [Opcional; el rango válido es de 1 a 25,000; el valor predeterminado es 1,000] Es la cantidad máxima de filas que se mostrarán. Para desplazarte por los resultados, usa el desplazamiento startRow.
startRow integer [Opcional; el valor predeterminado es 0] Es el índice basado en cero de la primera fila de la respuesta. Debe ser un número no negativo. Si startRow supera la cantidad de resultados de la consulta, la respuesta será correcta, pero no tendrá filas.
dataState string [Opcional] Si se selecciona "all" (sin distinción entre mayúsculas y minúsculas), los datos incluirán datos actualizados. Si se incluye "final" (sin distinción entre mayúsculas y minúsculas) o si se omite este parámetro, los datos que se muestran solo incluirán datos finalizados.

Respuesta

Los resultados se agrupan según las dimensiones especificadas en la solicitud. Todos los valores con el mismo conjunto de valores de dimensión se agruparán en una sola fila. Por ejemplo, si agrupas por dimensión de país, se agruparán todos los resultados de "usa", se agruparán todos los resultados de "mdv", y así sucesivamente. Si agrupaste los datos por país y dispositivo, se agruparán todos los resultados de "usa, tablet", todos los resultados de "usa, dispositivo móvil", etcétera. Consulta la documentación del informe Estadísticas de búsqueda para obtener información específica sobre cómo se calculan los clics, las impresiones, etcétera, y qué significan.

Los resultados se ordenan por recuento de clics, en orden descendente, a menos que los agrupes por fecha, en cuyo caso se ordenan por fecha, en orden ascendente (los más antiguos primero y los más recientes al final). Si hay un empate entre dos filas, el orden de clasificación es arbitrario.

Consulta la propiedad rowLimit en la solicitud para conocer la cantidad máxima de valores que se pueden mostrar.

{
  "rows": [
    {
      "keys": [
        string
      ],
      "clicks": double,
      "impressions": double,
      "ctr": double,
      "position": double
    }
  ],
  "responseAggregationType": string
}
Nombre de la propiedad Valor Descripción Notas
rows[] list Es una lista de filas agrupadas por los valores de clave en el orden que se indica en la consulta.
rows[].keys[] list Es una lista de los valores de dimensión de esa fila, agrupados según las dimensiones de la solicitud, en el orden especificado en la solicitud.
rows[].clicks double Haz clic en el recuento de la fila.
rows[].impressions double Es el recuento de impresiones de la fila.
rows[].ctr double Es la tasa de clics (CTR) de la fila. Los valores varían de 0 a 1.0, inclusive.
rows[].position double Es la posición promedio en los resultados de la búsqueda.
responseAggregationType string Cómo se agregaron los resultados Consulta la documentación de ayuda para obtener información sobre cómo se calculan los datos de forma diferente por sitio y por página.

Los valores aceptables son los siguientes:
  • "auto"
  • "byPage": Los resultados se agruparon por página.
  • "byProperty": Los resultados se agruparon por propiedad.

Pruébalo

Usa el Explorador de APIs que aparece a continuación para llamar a este método en datos en vivo y ver la respuesta.