Ejecuta PageSpeed Analysis en la página de la URL especificada y muestra las puntuaciones de PageSpeed, una lista de sugerencias para hacer que esa página sea más rápida, entre otros datos. Pruébalo ahora.
Solicitud
Solicitud HTTP
GET https://www.googleapis.com/pagespeedonline/v4/runPagespeed
Parámetros
Nombre del parámetro | Valor | Descripción |
---|---|---|
Parámetros de consulta obligatorios | ||
url |
string |
La URL para recuperar y analizar |
Parámetros de consulta opcionales | ||
filter_third_party_resources |
boolean |
Indica si los recursos de terceros deben filtrarse antes del análisis de PageSpeed.
(Predeterminado: false )
|
locale |
string |
La configuración regional que se usa para localizar resultados con formato |
rule |
string |
Una regla de PageSpeed para ejecutar: Si no se proporciona ninguna, se ejecutan todas las reglas. |
screenshot |
boolean |
Indica si se deben incluir datos binarios que contienen una captura de pantalla
(Predeterminado: false )
|
snapshots |
boolean |
Indica si se deben incluir los datos binarios que contienen imágenes de instantáneas
(Predeterminado: false )
|
strategy |
string |
La estrategia de análisis (computadoras de escritorio o dispositivos móviles) que se usará y las computadoras de escritorio son la opción predeterminada.
Los valores aceptables son los siguientes:
|
utm_campaign |
string |
Nombre de la campaña para Analytics. |
utm_source |
string |
Fuente de la campaña para estadísticas. |
Cuerpo de la solicitud
No proporciones un cuerpo de la solicitud con este método.
Respuesta
Si se aplica correctamente, este método muestra un cuerpo de respuesta con la siguiente estructura:
{ "captchaResult": string, "kind": "pagespeedonline#result", "id": string, "responseCode": integer, "title": string, "ruleGroups": { (key): { "score": integer, "pass": boolean } }, "loadingExperience": { "id": string, "metrics": { (key): { "median": integer, "distributions": [ { "min": integer, "max": integer, "proportion": double } ], "category": string } }, "overall_category": string, "initial_url": string }, "pageStats": { "numberResources": integer, "numberHosts": integer, "totalRequestBytes": long, "numberStaticResources": integer, "htmlResponseBytes": long, "textResponseBytes": long, "overTheWireResponseBytes": long, "cssResponseBytes": long, "imageResponseBytes": long, "javascriptResponseBytes": long, "flashResponseBytes": long, "otherResponseBytes": long, "numberJsResources": integer, "numberCssResources": integer, "numberRobotedResources": integer, "numberTransientFetchFailureResources": integer, "numTotalRoundTrips": integer, "numRenderBlockingRoundTrips": integer, "robotedUrls": [ string ], "transientFetchFailureUrls": [ string ], "cms": string }, "formattedResults": { "locale": string, "ruleResults": { (key): { "localizedRuleName": string, "ruleImpact": double, "beta": boolean, "groups": [ string ], "summary": { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] }, "urlBlocks": [ { "header": { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] }, "urls": [ { "result": { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] }, "details": [ { "format": string, "args": [ { "type": string, "key": string, "value": string, "rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ], "secondary_rects": [ { "left": integer, "top": integer, "width": integer, "height": integer } ] } ] } ] } ] } ] } } }, "version": { "major": integer, "minor": integer }, "invalidRules": [ string ], "screenshot": { "key": string, "mime_type": string, "data": bytes, "width": integer, "height": integer, "page_rect": { "left": integer, "top": integer, "width": integer, "height": integer } }, "snapshots": [ { "key": string, "mime_type": string, "data": bytes, "width": integer, "height": integer, "page_rect": { "left": integer, "top": integer, "width": integer, "height": integer } } ] }
Nombre de la propiedad | Valor | Descripción | Notas |
---|---|---|---|
captchaResult |
string |
Resultado de la verificación de captcha
Los valores aceptables son los siguientes:
|
|
kind |
string |
Tipo de resultado. | |
id |
string |
URL final canónica y final del documento, después de los redireccionamientos de página siguientes (si los hubiera). | |
responseCode |
integer |
Es el código de respuesta del documento. 200 indica una carga normal de la página. 4xx/5xx indica un error. | |
title |
string |
Es el título de la página, como se muestra en la barra de título del navegador. | |
ruleGroups |
object |
Un mapa con una entrada para cada grupo de reglas en estos resultados. | |
ruleGroups.(key) |
object |
El nombre de este grupo de reglas: “SPEED”, “USABILITY” o “SECURITY”. | |
ruleGroups.(key).score |
integer |
La puntuación (de 0 a 100) de este grupo de reglas, que indica cuánto mejor podría ser una página en esa categoría (p.ej., cuánto más rápida, cuánto más utilizable o qué tan segura podría ser). Una puntuación alta indica poco margen para la mejora, mientras que una puntuación más baja indica un mayor margen de mejora. | |
ruleGroups.(key).pass |
boolean |
||
loadingExperience |
object |
Métricas de las métricas de carga de página. | |
loadingExperience.id |
string |
La URL, el patrón o el origen en el que se encuentran las métricas. | |
loadingExperience.metrics |
object |
||
loadingExperience.metrics.(key) |
object |
El tipo de métrica. | |
loadingExperience.metrics.(key).median |
integer |
||
loadingExperience.metrics.(key).distributions[] |
list |
||
loadingExperience.metrics.(key).distributions[].min |
integer |
||
loadingExperience.metrics.(key).distributions[].max |
integer |
||
loadingExperience.metrics.(key).distributions[].proportion |
double |
||
pageStats |
object |
Estadísticas de resumen de la página, como la cantidad de bytes de JavaScript, de HTML, etc. | |
pageStats.numberResources |
integer |
Cantidad de recursos HTTP cargados por la página | |
pageStats.numberHosts |
integer |
Cantidad de hosts únicos a los que hace referencia la página. | |
pageStats.totalRequestBytes |
long |
El tamaño total de todos los bytes de solicitudes que envió la página. | |
pageStats.numberStaticResources |
integer |
Cantidad de recursos estáticos (es decir, que pueden almacenarse en caché) de la página. | |
pageStats.htmlResponseBytes |
long |
Cantidad de bytes de respuesta sin comprimir para el documento HTML principal y todos los iframes de la página. | |
pageStats.textResponseBytes |
long |
Cantidad de bytes de respuesta sin comprimir para recursos de texto que no se incluyen en otras estadísticas (es decir, recursos que no son HTML, sin secuencias de comandos ni de CSS) en la página. | |
pageStats.overTheWireResponseBytes |
long |
Cantidad de bytes por cable. Se usa la estrategia de compresión gzip predeterminada como estimación. | |
pageStats.cssResponseBytes |
long |
Cantidad de bytes de respuesta sin comprimir para los recursos CSS de la página. | |
pageStats.imageResponseBytes |
long |
Cantidad de bytes de respuesta para los recursos de imagen de la página. | |
pageStats.javascriptResponseBytes |
long |
Cantidad de bytes de respuesta sin comprimir para los recursos de JS en la página. | |
pageStats.flashResponseBytes |
long |
Cantidad de bytes de respuesta para los recursos Flash de la página. | |
pageStats.otherResponseBytes |
long |
Cantidad de bytes de respuesta para otros recursos de la página. | |
pageStats.numberJsResources |
integer |
Cantidad de recursos de JavaScript a los que hace referencia la página. | |
pageStats.numberCssResources |
integer |
Cantidad de recursos de CSS a los que hace referencia la página. | |
pageStats.numberRobotedResources |
integer |
Cantidad de recursos bloqueados por robots. | |
pageStats.numberTransientFetchFailureResources |
integer |
Cantidad de recursos con errores transitorios. | |
pageStats.numTotalRoundTrips |
integer |
Los recorridos de ida y vuelta necesarios para cargar la página completa | |
pageStats.numRenderBlockingRoundTrips |
integer |
Los recorridos de ida y vuelta necesarios para cargar los recursos que bloquean la renderización | |
pageStats.robotedUrls[] |
list |
Lista de URLs bloqueadas por robots.txt. | |
pageStats.transientFetchFailureUrls[] |
list |
Lista de URLs con errores de recuperación transitorios. | |
pageStats.cms |
string |
Sistema de administración de contenido (CMS) que se usa para la página
Los valores aceptables son los siguientes:
|
|
formattedResults |
object |
Resultados localizados de PageSpeed. Contiene una entrada ruleResults para cada regla de PageSpeed creada y ejecutada por el servidor. | |
formattedResults.locale |
string |
La configuración regional de formatResults, p.ej., “en_US”. | |
formattedResults.ruleResults |
object |
Diccionario de resultados de reglas con formato, con una entrada para cada regla de PageSpeed creada y ejecutada por el servidor. | |
formattedResults.ruleResults.(key) |
object |
El identificador similar a una enumeración para esta regla. Por ejemplo, "EnableKeepAlive" o "PreventCssImport". No se localizó. | |
formattedResults.ruleResults.(key).localizedRuleName |
string |
Nombre localizado de la regla, destinado a presentarlo a un usuario. | |
formattedResults.ruleResults.(key).ruleImpact |
double |
El impacto (valor de punto flotante no delimitado) que tendría la implementación de las sugerencias para esta regla sobre que la página fuera más rápida. El impacto es comparable entre reglas para determinar qué sugerencias tendrían un impacto mayor o menor sobre la velocidad de una página. Por ejemplo, si habilitar la compresión ahorraría 1 MB, mientras que la optimización de imágenes ahorraría 500 KB, la regla de habilitación de la compresión tendría el doble del impacto que la regla de optimización de imágenes, en las mismas condiciones. | |
formattedResults.ruleResults.(key).beta |
boolean |
Indica si esta regla está en versión "beta". Las reglas en fase beta son reglas nuevas que se están probando y no afectan la puntuación general. | |
formattedResults.ruleResults.(key).groups[] |
list |
Lista de grupos de reglas a los que pertenece esta regla. Cada entrada de la lista es una de estas opciones: "SPEED", "USABILITY" o "SECURITY". | |
formattedResults.ruleResults.(key).summary |
nested object |
una breve descripción resumida de la regla, que indica en términos generales lo que se debe hacer para seguirla y los beneficios que se pueden obtener al hacerlo. | |
formattedResults.ruleResults.(key).summary.format |
string |
Una cadena de formato localizado con marcadores de posición , donde “FOO” es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERVÍNCULO, la cadena de formato contendrá y para el argumento con la clave “FOO”. | |
formattedResults.ruleResults.(key).summary.args[] |
list |
Lista de argumentos para la cadena de formato. | |
formattedResults.ruleResults.(key).summary.args[].type |
string |
Tipo de argumento. Una de estas opciones es URL: STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK o SNAPSHOT_RECT.
Los valores aceptables son los siguientes:
|
|
formattedResults.ruleResults.(key).summary.args[].key |
string |
La clave del marcador de posición para este argumento, como una cadena. | |
formattedResults.ruleResults.(key).summary.args[].value |
string |
Valor del argumento, como una cadena localizada. | |
formattedResults.ruleResults.(key).summary.args[].rects[] |
list |
Son los rectángulos de pantalla a los que se hace referencia, con dimensiones medidas en píxeles de CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. Si está ausente para un argumento SNAPSHOT_RECT, significa que ese argumento hace referencia a toda la instantánea. | |
formattedResults.ruleResults.(key).summary.args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).summary.args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).summary.args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).summary.args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[] |
list |
Rectángulos de pantalla secundarios a los que se hace referencia, con dimensiones medidas en píxeles CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. | |
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).summary.args[].secondary_rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[] |
list |
Lista de bloques de URL. Cada bloque puede contener un encabezado y una lista de URL. De manera opcional, cada URL puede incluir detalles adicionales. | |
formattedResults.ruleResults.(key).urlBlocks[].header |
nested object |
Encabezado que se mostrará con la lista de URL. | |
formattedResults.ruleResults.(key).urlBlocks[].header.format |
string |
Una cadena de formato localizado con marcadores de posición , donde 'FOO' es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERVÍNCULO, la cadena de formato contendrá y para el argumento con la clave “FOO”. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[] |
list |
Lista de argumentos para la cadena de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].type |
string |
Tipo de argumento. Una de estas opciones es URL: STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK o SNAPSHOT_RECT.
Los valores aceptables son los siguientes:
|
|
formattedResults.ruleResults.(key).urlBlocks[].header.args[].key |
string |
La clave del marcador de posición para este argumento, como una cadena. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].value |
string |
Valor del argumento, como una cadena localizada. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[] |
list |
Son los rectángulos de pantalla a los que se hace referencia, con dimensiones medidas en píxeles de CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. Si está ausente para un argumento SNAPSHOT_RECT, significa que ese argumento hace referencia a toda la instantánea. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[] |
list |
Rectángulos de pantalla secundarios a los que se hace referencia, con dimensiones medidas en píxeles CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].header.args[].secondary_rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[] |
list |
Lista de entradas que proporcionan información sobre las URLs en el bloque de URLs. Opcional. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result |
nested object |
Es una cadena de formato que proporciona información sobre la URL y una lista de argumentos para esa cadena de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.format |
string |
Una cadena de formato localizado con marcadores de posición , donde 'FOO' es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERVÍNCULO, la cadena de formato contendrá y para el argumento con la clave “FOO”. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[] |
list |
Lista de argumentos para la cadena de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].type |
string |
Tipo de argumento. Una de estas opciones es URL: STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK o SNAPSHOT_RECT.
Los valores aceptables son los siguientes:
|
|
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].key |
string |
La clave del marcador de posición para este argumento, como una cadena. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].value |
string |
Valor del argumento, como una cadena localizada. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[] |
list |
Son los rectángulos de pantalla a los que se hace referencia, con dimensiones medidas en píxeles de CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. Si está ausente para un argumento SNAPSHOT_RECT, significa que ese argumento hace referencia a toda la instantánea. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[] |
list |
Rectángulos de pantalla secundarios a los que se hace referencia, con dimensiones medidas en píxeles CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].secondary_rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[] |
list |
Lista de entradas que proporcionan detalles adicionales sobre una sola URL. Opcional. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].format |
string |
Una cadena de formato localizado con marcadores de posición , donde 'FOO' es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERVÍNCULO, la cadena de formato contendrá y para el argumento con la clave “FOO”. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[] |
list |
Lista de argumentos para la cadena de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].type |
string |
Tipo de argumento. Una de estas opciones es URL: STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK o SNAPSHOT_RECT.
Los valores aceptables son los siguientes:
|
|
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].key |
string |
La clave del marcador de posición para este argumento, como una cadena. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].value |
string |
Valor del argumento, como una cadena localizada. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[] |
list |
Son los rectángulos de pantalla a los que se hace referencia, con dimensiones medidas en píxeles de CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. Si está ausente para un argumento SNAPSHOT_RECT, significa que ese argumento hace referencia a toda la instantánea. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[].height |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[] |
list |
Rectángulos de pantalla secundarios a los que se hace referencia, con dimensiones medidas en píxeles CSS. Esto solo se utiliza siempre para argumentos SNAPSHOT_RECT. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].left |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].top |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].width |
integer |
||
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].secondary_rects[].height |
integer |
||
version |
object |
Es la versión de PageSpeed que se usa para generar estos resultados. | |
version.major |
integer |
Indica el número de versión principal de PageSpeed que se utiliza para generar estos resultados. | |
version.minor |
integer |
Indica el número de versión secundaria de PageSpeed que se utiliza para generar estos resultados. | |
invalidRules[] |
list |
Lista de reglas que se especificaron en la solicitud, pero de las que el servidor no supo crear instancias. | |
screenshot |
nested object |
Captura de pantalla codificada en Base64 de la página que se analizó. | |
screenshot.key |
string |
Clave de cadena única, si existe, que identifica esta imagen. | |
screenshot.mime_type |
string |
Tipo MIME de datos de imagen (p.ej., "imagen/jpeg"). | |
screenshot.data |
bytes |
Datos de imagen codificados en base64. | |
screenshot.width |
integer |
Es el ancho de la captura de pantalla en píxeles. | |
screenshot.height |
integer |
Es la altura de la captura de pantalla en píxeles. | |
screenshot.page_rect |
object |
||
screenshot.page_rect.left |
integer |
||
screenshot.page_rect.top |
integer |
||
screenshot.page_rect.width |
integer |
||
screenshot.page_rect.height |
integer |
||
snapshots[] |
list |
Capturas de pantalla adicionales codificadas en base64 de la página, en varios estados de renderización parcial. | |
snapshots[].key |
string |
Clave de cadena única, si existe, que identifica esta imagen. | |
snapshots[].mime_type |
string |
Tipo MIME de datos de imagen (p.ej., "imagen/jpeg"). | |
snapshots[].data |
bytes |
Datos de imagen codificados en base64. | |
snapshots[].width |
integer |
Es el ancho de la captura de pantalla en píxeles. | |
snapshots[].height |
integer |
Es la altura de la captura de pantalla en píxeles. | |
snapshots[].page_rect |
object |
||
snapshots[].page_rect.left |
integer |
||
snapshots[].page_rect.top |
integer |
||
snapshots[].page_rect.width |
integer |
||
snapshots[].page_rect.height |
integer |
||
loadingExperience.metrics.(key).category |
string |
Los valores aceptables son los siguientes:
|
|
loadingExperience.overall_category |
string |
Los valores aceptables son los siguientes:
|
|
loadingExperience.initial_url |
string |
Pruébalo
Usa el Explorador de APIs que se muestra a continuación para llamar a este método en datos en vivo y ver la respuesta.