Ejecuta un análisis de PageSpeed en la página de la URL especificada y muestra puntuaciones de PageSpeed, una lista de sugerencias para hacer que la página sea más rápida y otra información. 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 que se 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 |
Se debe ejecutar una regla de PageSpeed; si no se proporciona ninguna, se ejecutan todas las reglas |
screenshot |
boolean |
Indica si se deben incluir los datos binarios que contienen una captura de pantalla (valor predeterminado: false ).
|
snapshots |
boolean |
Indica si se deben incluir los datos binarios que contienen imágenes de instantáneas (valor predeterminado: false ).
|
strategy |
string |
La estrategia de análisis (computadoras de escritorio o dispositivos móviles) que se debe usar y la estrategia predeterminada para computadoras de escritorio
Los valores aceptables son los siguientes:
|
utm_campaign |
string |
Nombre de la campaña para estadísticas. |
utm_source |
string |
Fuente de la campaña para Analytics. |
Cuerpo de la solicitud
No proporciones un cuerpo de 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 |
Es la URL canonicalizada y final del documento, después de los redireccionamientos de página siguientes (si corresponde). | |
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 |
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 es "SPEED", "USABILITY" o "SECURITY". | |
ruleGroups.(key).score |
integer |
La puntuación (de 0 a 100) para este grupo de reglas, que indica en qué medida podría mejorar una página en esa categoría (p.ej., cuánto más rápida o cuánto más utilizable, o cuánto más segura). Una puntuación alta indica que hay poco margen de mejora, mientras que una puntuación más baja indica que hay más posibilidades de mejorar. | |
ruleGroups.(key).pass |
boolean |
||
loadingExperience |
object |
Son métricas de la experiencia de carga de la página de los usuarios finales. | |
loadingExperience.id |
string |
La URL, el patrón o el origen en los que se encuentran las métricas. | |
loadingExperience.metrics |
object |
||
loadingExperience.metrics.(key) |
object |
Es 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 y de HTML, entre otros | |
pageStats.numberResources |
integer |
Cantidad de recursos HTTP que carga 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 solicitud que envió la página. | |
pageStats.numberStaticResources |
integer |
Cantidad de recursos estáticos (es decir, que se pueden almacenar 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 correspondientes a los recursos de texto que otras estadísticas (es decir, recursos que no son HTML, ni CSS ni CSS) de la página | |
pageStats.overTheWireResponseBytes |
long |
Cantidad de bytes por cable; utiliza 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 de 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 CSS a los que hace referencia la página. | |
pageStats.numberRobotedResources |
integer |
Cantidad de recursos bloqueados por robots.txt. | |
pageStats.numberTransientFetchFailureResources |
integer |
Cantidad de recursos transitorios con errores. | |
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 bloqueada por robots.txt. | |
pageStats.transientFetchFailureUrls[] |
list |
Lista de URLs con errores de recuperación transitorias. | |
pageStats.cms |
string |
Es el 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 de la que se haya creado una instancia y ejecutada por el servidor. | |
formattedResults.locale |
string |
La configuración regional de formattedResults, p.ej., "en_US". | |
formattedResults.ruleResults |
object |
Diccionario de resultados de reglas con formato, con una entrada para cada regla de PageSpeed cuya instancia se crea y ejecuta el servidor. | |
formattedResults.ruleResults.(key) |
object |
El identificador de tipo enum para esta regla. Por ejemplo, “EnableKeepAlive” o “EvitaCssImport”. Sin localizar. | |
formattedResults.ruleResults.(key).localizedRuleName |
string |
Es el nombre localizado de la regla, diseñado para presentarse a un usuario. | |
formattedResults.ruleResults.(key).ruleImpact |
double |
El impacto (valor de punto flotante no delimitado) que tendría implementar las sugerencias para esta regla con el objetivo de que la página sea más rápida. El impacto es comparable entre las reglas para determinar qué sugerencias tendrían un impacto mayor o menor en cuanto a 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 de la regla de optimización de imágenes, en igualdad de 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 "SPEED", "USABILITY" o "SECURITY". | |
formattedResults.ruleResults.(key).summary |
nested object |
Es una descripción breve y resumida de la regla, que indica a nivel general lo que se debe hacer para seguirla y el beneficio que se puede obtener al hacerlo. | |
formattedResults.ruleResults.(key).summary.format |
string |
Una cadena de formato localizada con marcadores de posición , donde “FOO” es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERLINK, la cadena de formato contendrá y para el argumento con la clave 'FOO'. | |
formattedResults.ruleResults.(key).summary.args[] |
list |
Lista de argumentos para la string de formato. | |
formattedResults.ruleResults.(key).summary.args[].type |
string |
Es el tipo de argumento. Puede ser una 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 |
El 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 CSS. Solo se usa para argumentos SNAPSHOT_RECT. Si está ausente en 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 |
Se hace referencia a los rectángulos de pantalla secundarios, con dimensiones medidas en píxeles CSS. Solo se usa 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 URLs. Cada bloqueo puede contener un encabezado y una lista de URLs. Cada URL puede incluir detalles adicionales de manera opcional. | |
formattedResults.ruleResults.(key).urlBlocks[].header |
nested object |
Encabezado que se mostrará con la lista de URLs. | |
formattedResults.ruleResults.(key).urlBlocks[].header.format |
string |
Una cadena de formato localizada con marcadores de posición , donde “FOO” es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERLINK, 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 string de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].type |
string |
Es el tipo de argumento. Puede ser una 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 |
El 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 CSS. Solo se usa para argumentos SNAPSHOT_RECT. Si está ausente en 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 |
Se hace referencia a los rectángulos de pantalla secundarios, con dimensiones medidas en píxeles CSS. Solo se usa 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 localizada con marcadores de posición , donde “FOO” es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERLINK, 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 string de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].type |
string |
Es el tipo de argumento. Puede ser una 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 |
El 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 CSS. Solo se usa para argumentos SNAPSHOT_RECT. Si está ausente en 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 |
Se hace referencia a los rectángulos de pantalla secundarios, con dimensiones medidas en píxeles CSS. Solo se usa 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 localizada con marcadores de posición , donde “FOO” es la clave del argumento cuyo valor se debe sustituir. En el caso de los argumentos HIPERLINK, 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 string de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].type |
string |
Es el tipo de argumento. Puede ser una 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 |
El 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 CSS. Solo se usa para argumentos SNAPSHOT_RECT. Si está ausente en 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 |
Se hace referencia a los rectángulos de pantalla secundarios, con dimensiones medidas en píxeles CSS. Solo se usa 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 |
Es el número de versión principal de PageSpeed que se usa para generar estos resultados. | |
version.minor |
integer |
Es el número de versión secundaria de PageSpeed que se usa para generar estos resultados. | |
invalidRules[] |
list |
Lista de reglas que se especificaron en la solicitud, pero de las que el servidor no sabe cómo crear una instancia. | |
screenshot |
nested object |
Captura de pantalla codificada en Base64 de la página que se analizó. | |
screenshot.key |
string |
Es la clave de cadena única, si existe, que identifica esta imagen. | |
screenshot.mime_type |
string |
Tipo de MIME de datos de imagen (p.ej., "imagen/jpeg"). | |
screenshot.data |
bytes |
Datos de imagen codificados en base64. | |
screenshot.width |
integer |
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 de la página codificadas en base64, en varios estados de renderización parcial. | |
snapshots[].key |
string |
Es la clave de cadena única, si existe, que identifica esta imagen. | |
snapshots[].mime_type |
string |
Tipo de MIME de datos de imagen (p.ej., "imagen/jpeg"). | |
snapshots[].data |
bytes |
Datos de imagen codificados en base64. | |
snapshots[].width |
integer |
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ébala
Usa el Explorador de APIs que aparece a continuación para llamar a este método con datos en tiempo real y ver la respuesta.