Executa uma análise do PageSpeed na página no URL especificado e retorna as pontuações do PageSpeed, uma lista de sugestões para tornar a página mais rápida, além de outras informações. Faça o teste agora.
Solicitação
Solicitação HTTP
GET https://www.googleapis.com/pagespeedonline/v4/runPagespeed
Parâmetros
| Nome do parâmetro | Valor | Descrição |
|---|---|---|
| Parâmetros de consulta obrigatórios | ||
url |
string |
O URL a ser buscado e analisado |
| Parâmetros de consulta opcionais | ||
filter_third_party_resources |
boolean |
Indica se os recursos de terceiros devem ser filtrados antes da análise do PageSpeed.
Padrão: false.
|
locale |
string |
Localidade usada para localizar resultados formatados |
rule |
string |
Uma regra PageSpeed a ser executada. Se nenhuma for fornecida, todas as regras serão executadas |
screenshot |
boolean |
Indica se dados binários que contêm uma captura de tela precisam ser incluídos
(Padrão: false)
|
snapshots |
boolean |
Indica se dados binários contendo imagens de snapshot precisam ser incluídos
(Padrão: false)
|
strategy |
string |
A estratégia de análise (computador ou dispositivo móvel) a ser usada (computador é o padrão)
Os valores aceitáveis são os seguintes:
|
utm_campaign |
string |
Nome da campanha para análise. |
utm_source |
string |
Origem da campanha para análise. |
Corpo da solicitação
Não forneça um corpo de solicitação com este método.
Resposta
Se for bem-sucedido, esse método retornará um corpo de resposta com esta estrutura:
{
"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
}
}
]
}| Nome da propriedade | Valor | Descrição | Observações |
|---|---|---|---|
captchaResult |
string |
O resultado da verificação de captcha
Os valores aceitáveis são os seguintes:
|
|
kind |
string |
Tipo de resultado. | |
id |
string |
URL canonizado e final do documento, depois de seguir os redirecionamentos da página (se houver). | |
responseCode |
integer |
O código de resposta do documento. O valor 200 indica um carregamento de página normal. 4xx/5xx indica um erro. | |
title |
string |
Título da página, conforme exibido na barra de título do navegador. | |
ruleGroups |
object |
Um mapa com uma entrada para cada grupo de regras nesses resultados. | |
ruleGroups.(key) |
object |
O nome desse grupo de regras: "VELOCIDADE", "USABILIDADE" ou "SEGURANÇA". | |
ruleGroups.(key).score |
integer |
A pontuação (0 a 100) para esse grupo de regras, que indica a qualidade da página em determinada categoria (por exemplo, a velocidade, a usabilidade ou o nível de segurança). Uma pontuação alta indica pouco espaço para melhoria, enquanto uma pontuação mais baixa indica mais espaço para melhorias. | |
ruleGroups.(key).pass |
boolean |
||
loadingExperience |
object |
Métricas dos usuários finais experiência de carregamento da página. | |
loadingExperience.id |
string |
O URL, o padrão ou a origem em que as métricas estão. | |
loadingExperience.metrics |
object |
||
loadingExperience.metrics.(key) |
object |
O 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 |
Estatísticas de resumo da página, como número de bytes JavaScript, número de bytes HTML etc. | |
pageStats.numberResources |
integer |
Número de recursos HTTP carregados pela página. | |
pageStats.numberHosts |
integer |
Número de hosts exclusivos referenciados pela página. | |
pageStats.totalRequestBytes |
long |
Tamanho total de todos os bytes de solicitação enviados pela página. | |
pageStats.numberStaticResources |
integer |
Número de recursos estáticos (que podem ser armazenados em cache) na página. | |
pageStats.htmlResponseBytes |
long |
Número de bytes de resposta descompactados para o documento HTML principal e todos os iframes na página. | |
pageStats.textResponseBytes |
long |
Número de bytes de resposta descompactados para recursos de texto não cobertos por outras estatísticas (ou seja, recursos não HTML, script e não CSS) na página. | |
pageStats.overTheWireResponseBytes |
long |
Número de bytes através da rede, usa a estratégia de compactação gzip padrão como estimativa. | |
pageStats.cssResponseBytes |
long |
Número de bytes de resposta descompactados para recursos CSS na página. | |
pageStats.imageResponseBytes |
long |
Número de bytes de resposta para recursos de imagem na página. | |
pageStats.javascriptResponseBytes |
long |
Número de bytes de resposta descompactados para recursos JS na página. | |
pageStats.flashResponseBytes |
long |
Número de bytes de resposta para recursos em Flash na página. | |
pageStats.otherResponseBytes |
long |
Número de bytes de resposta para outros recursos na página. | |
pageStats.numberJsResources |
integer |
Número de recursos JavaScript referenciados pela página. | |
pageStats.numberCssResources |
integer |
Número de recursos CSS referenciados pela página. | |
pageStats.numberRobotedResources |
integer |
Número de recursos automatizados. | |
pageStats.numberTransientFetchFailureResources |
integer |
Número de recursos com falha temporária. | |
pageStats.numTotalRoundTrips |
integer |
As idas e voltas necessárias para carregar a página inteira. | |
pageStats.numRenderBlockingRoundTrips |
integer |
As idas e voltas necessárias para carregar os recursos de bloqueio de renderização | |
pageStats.robotedUrls[] |
list |
Lista de URLs controlados por robôs. | |
pageStats.transientFetchFailureUrls[] |
list |
Lista de URLs de falha temporária de busca. | |
pageStats.cms |
string |
Sistema de gerenciamento de conteúdo (CMS) usado para a página.
Os valores aceitáveis são:
|
|
formattedResults |
object |
Resultados do PageSpeed localizados. Contém uma entrada rulesResults para cada regra do PageSpeed instanciada e executada pelo servidor. | |
formattedResults.locale |
string |
A localidade do formattedResults, por exemplo, "pt_BR". | |
formattedResults.ruleResults |
object |
Dicionário de resultados de regras formatadas, com uma entrada para cada regra do PageSpeed instanciada e executada pelo servidor. | |
formattedResults.ruleResults.(key) |
object |
O identificador em formato de enumeração para a regra. Por exemplo, "EnableKeepAlive" ou "EvitarCssImport". Não localizada. | |
formattedResults.ruleResults.(key).localizedRuleName |
string |
Nome localizado da regra, destinado à apresentação a um usuário. | |
formattedResults.ruleResults.(key).ruleImpact |
double |
O impacto (valor de ponto flutuante ilimitado) que a implementação das sugestões dessa regra teria em tornar a página mais rápida. O impacto é comparável entre as regras para determinar qual as sugestões de qual delas teria um impacto maior ou menor na geração de uma página mais rápida. Por exemplo, se ativar a compactação economizaria 1 MB e otimizar imagens, economizar 500 KB, a regra de ativação de compactação teria o dobro do impacto da regra de otimização de imagem. Todos os outros aspectos seriam iguais. | |
formattedResults.ruleResults.(key).beta |
boolean |
Indica se a regra está na versão "Beta". Na versão Beta, as regras novas estão sendo testadas e não afetam a pontuação geral. | |
formattedResults.ruleResults.(key).groups[] |
list |
Lista de grupos de regras a que esta regra pertence. Cada entrada na lista tem a classificação "VELOCIDADE", "USABILIDADE" ou "SEGURANÇA". | |
formattedResults.ruleResults.(key).summary |
nested object |
É uma breve descrição resumida da regra, indicando em alto nível o que precisa ser feito para seguir a regra e os benefícios que isso pode trazer. | |
formattedResults.ruleResults.(key).summary.format |
string |
Uma string de formato localizada com espaços reservados , em que "FOO" é a chave do argumento cujo valor deve ser substituído. Para argumentos HYPERLINK, a string de formato conterá e para o argumento com a chave "FOO". | |
formattedResults.ruleResults.(key).summary.args[] |
list |
Lista de argumentos da string de formato. | |
formattedResults.ruleResults.(key).summary.args[].type |
string |
Tipo de argumento. URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK ou SNAPSHOT_RECT.
Os valores aceitáveis são:
|
|
formattedResults.ruleResults.(key).summary.args[].key |
string |
A chave do marcador de posição para este argumento, como uma string. | |
formattedResults.ruleResults.(key).summary.args[].value |
string |
Valor do argumento, como uma string localizada. | |
formattedResults.ruleResults.(key).summary.args[].rects[] |
list |
Os retângulos de tela referidos, com dimensões medidas em pixels CSS. Ele é usado apenas para argumentos SNAPSHOT_RECT. Se esse argumento estiver ausente para um argumento SNAPSHOT_RECT, significa que esse argumento se refere ao snapshot inteiro. | |
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 |
Retângulos de tela secundários sendo referidos, com dimensões medidas em pixels CSS. Ele é usado apenas 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 blocos de URLs. Cada bloco pode conter um cabeçalho e uma lista de URLs. Cada URL pode incluir detalhes adicionais. | |
formattedResults.ruleResults.(key).urlBlocks[].header |
nested object |
Cabeçalho a ser exibido com a lista de URLs. | |
formattedResults.ruleResults.(key).urlBlocks[].header.format |
string |
Uma string de formato localizada com espaços reservados , em que "FOO" é a chave do argumento cujo valor deve ser substituído. Para argumentos HYPERLINK, a string de formato conterá e para o argumento com a chave "FOO". | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[] |
list |
Lista de argumentos da string de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].type |
string |
Tipo de argumento. URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK ou SNAPSHOT_RECT.
Os valores aceitáveis são:
|
|
formattedResults.ruleResults.(key).urlBlocks[].header.args[].key |
string |
A chave do marcador de posição para este argumento, como uma string. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].value |
string |
Valor do argumento, como uma string localizada. | |
formattedResults.ruleResults.(key).urlBlocks[].header.args[].rects[] |
list |
Os retângulos de tela referidos, com dimensões medidas em pixels CSS. Ele é usado apenas para argumentos SNAPSHOT_RECT. Se esse argumento estiver ausente para um argumento SNAPSHOT_RECT, significa que esse argumento se refere ao snapshot inteiro. | |
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 |
Retângulos de tela secundários sendo referidos, com dimensões medidas em pixels CSS. Ele é usado apenas 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 com informações sobre URLs no bloco "url". Opcional. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result |
nested object |
Uma string de formato que fornece informações sobre o URL e uma lista de argumentos para essa string de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.format |
string |
Uma string de formato localizada com espaços reservados , em que "FOO" é a chave do argumento cujo valor deve ser substituído. Para argumentos HYPERLINK, a string de formato conterá e para o argumento com a chave "FOO". | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[] |
list |
Lista de argumentos da string de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].type |
string |
Tipo de argumento. URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK ou SNAPSHOT_RECT.
Os valores aceitáveis são:
|
|
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].key |
string |
A chave do marcador de posição para este argumento, como uma string. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].value |
string |
Valor do argumento, como uma string localizada. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].result.args[].rects[] |
list |
Os retângulos de tela referidos, com dimensões medidas em pixels CSS. Ele é usado apenas para argumentos SNAPSHOT_RECT. Se esse argumento estiver ausente para um argumento SNAPSHOT_RECT, significa que esse argumento se refere ao snapshot inteiro. | |
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 |
Retângulos de tela secundários sendo referidos, com dimensões medidas em pixels CSS. Ele é usado apenas 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 com detalhes adicionais sobre um único URL. Opcional. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].format |
string |
Uma string de formato localizada com espaços reservados , em que "FOO" é a chave do argumento cujo valor deve ser substituído. Para argumentos HYPERLINK, a string de formato conterá e para o argumento com a chave "FOO". | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[] |
list |
Lista de argumentos da string de formato. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].type |
string |
Tipo de argumento. URL, STRING_LITERAL, INT_LITERAL, BYTES, DURATION, VERBATIM_STRING, PERCENTAGE, HYPERLINK ou SNAPSHOT_RECT.
Os valores aceitáveis são:
|
|
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].key |
string |
A chave do marcador de posição para este argumento, como uma string. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].value |
string |
Valor do argumento, como uma string localizada. | |
formattedResults.ruleResults.(key).urlBlocks[].urls[].details[].args[].rects[] |
list |
Os retângulos de tela referidos, com dimensões medidas em pixels CSS. Ele é usado apenas para argumentos SNAPSHOT_RECT. Se esse argumento estiver ausente para um argumento SNAPSHOT_RECT, significa que esse argumento se refere ao snapshot inteiro. | |
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 |
Retângulos de tela secundários sendo referidos, com dimensões medidas em pixels CSS. Ele é usado apenas 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 |
A versão do PageSpeed usada para gerar esses resultados. | |
version.major |
integer |
O número da versão principal do PageSpeed usado para gerar esses resultados. | |
version.minor |
integer |
O número da versão secundária do PageSpeed usado para gerar esses resultados. | |
invalidRules[] |
list |
Lista de regras especificadas na solicitação, mas que o servidor não sabia como instanciar. | |
screenshot |
nested object |
Captura de tela codificada em Base64 da página que foi analisada. | |
screenshot.key |
string |
Chave de string exclusiva, se houver, que identifica a imagem. | |
screenshot.mime_type |
string |
Tipo MIME dos dados da imagem (por exemplo, "image/jpeg"). | |
screenshot.data |
bytes |
Dados de imagem codificados em base64. | |
screenshot.width |
integer |
Largura da captura de tela em pixels. | |
screenshot.height |
integer |
Altura da captura de tela em pixels. | |
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 tela adicionais codificadas em base64 da página, em vários estados de renderização parcial. | |
snapshots[].key |
string |
Chave de string exclusiva, se houver, que identifica a imagem. | |
snapshots[].mime_type |
string |
Tipo MIME dos dados da imagem (por exemplo, "image/jpeg"). | |
snapshots[].data |
bytes |
Dados de imagem codificados em base64. | |
snapshots[].width |
integer |
Largura da captura de tela em pixels. | |
snapshots[].height |
integer |
Altura da captura de tela em pixels. | |
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 |
Os valores aceitáveis são:
|
|
loadingExperience.overall_category |
string |
Os valores aceitáveis são:
|
|
loadingExperience.initial_url |
string |
Confira!
Use o APIs Explorer abaixo para chamar esse método em dados ativos e ver a resposta.