blob: 815bb433fee7c4800bb1af548c1136544d78866f [file] [log] [blame]
{
"auth": {
"oauth2": {
"scopes": {
"openid": {
"description": "Associate you with your personal info on Google"
}
}
}
},
"basePath": "",
"baseUrl": "https://pagespeedonline.googleapis.com/",
"batchPath": "batch",
"canonicalName": "Pagespeed Insights",
"description": "The PageSpeed Insights API lets you analyze the performance of your website with a simple API. It offers tailored suggestions for how you can optimize your site, and lets you easily integrate PageSpeed Insights analysis into your development tools and workflow.\n",
"discoveryVersion": "v1",
"documentationLink": "https://developers.google.com/speed/docs/insights/v5/about",
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
"id": "pagespeedonline:v5",
"kind": "discovery#restDescription",
"mtlsRootUrl": "https://pagespeedonline.mtls.googleapis.com/",
"name": "pagespeedonline",
"ownerDomain": "google.com",
"ownerName": "Google",
"parameters": {
"$.xgafv": {
"description": "V1 error format.",
"enum": [
"1",
"2"
],
"enumDescriptions": [
"v1 error format",
"v2 error format"
],
"location": "query",
"type": "string"
},
"access_token": {
"description": "OAuth access token.",
"location": "query",
"type": "string"
},
"alt": {
"default": "json",
"description": "Data format for response.",
"enum": [
"json",
"media",
"proto"
],
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
"location": "query",
"type": "string"
},
"callback": {
"description": "JSONP",
"location": "query",
"type": "string"
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
"location": "query",
"type": "string"
},
"key": {
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
"location": "query",
"type": "string"
},
"oauth_token": {
"description": "OAuth 2.0 token for the current user.",
"location": "query",
"type": "string"
},
"prettyPrint": {
"default": "true",
"description": "Returns response with indentations and line breaks.",
"location": "query",
"type": "boolean"
},
"quotaUser": {
"description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
"location": "query",
"type": "string"
},
"uploadType": {
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"location": "query",
"type": "string"
},
"upload_protocol": {
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"location": "query",
"type": "string"
}
},
"protocol": "rest",
"resources": {
"pagespeedapi": {
"methods": {
"runpagespeed": {
"description": "Runs PageSpeed analysis on the page at the specified URL, and returns\nPageSpeed scores, a list of suggestions to make that page faster, and other\ninformation.",
"flatPath": "pagespeedonline/v5/runPagespeed",
"httpMethod": "GET",
"id": "pagespeedonline.pagespeedapi.runpagespeed",
"parameterOrder": [],
"parameters": {
"captchaToken": {
"description": "The captcha token passed when filling out a captcha.",
"location": "query",
"type": "string"
},
"category": {
"description": "A Lighthouse category to run; if none are given, only Performance category\nwill be run",
"enum": [
"CATEGORY_UNSPECIFIED",
"ACCESSIBILITY",
"BEST_PRACTICES",
"PERFORMANCE",
"PWA",
"SEO"
],
"location": "query",
"repeated": true,
"type": "string"
},
"locale": {
"description": "The locale used to localize formatted results",
"location": "query",
"type": "string"
},
"strategy": {
"description": "The analysis strategy (desktop or mobile) to use, and desktop is the\ndefault",
"enum": [
"STRATEGY_UNSPECIFIED",
"DESKTOP",
"MOBILE"
],
"location": "query",
"type": "string"
},
"url": {
"description": "The URL to fetch and analyze",
"location": "query",
"type": "string"
},
"utm_campaign": {
"description": "Campaign name for analytics.",
"location": "query",
"type": "string"
},
"utm_source": {
"description": "Campaign source for analytics.",
"location": "query",
"type": "string"
}
},
"path": "pagespeedonline/v5/runPagespeed",
"response": {
"$ref": "PagespeedApiPagespeedResponseV5"
},
"scopes": [
"openid"
]
}
}
}
},
"revision": "20200608",
"rootUrl": "https://pagespeedonline.googleapis.com/",
"schemas": {
"AuditRefs": {
"description": "A light reference to an audit by id, used to group and weight audits in a\ngiven category.",
"id": "AuditRefs",
"properties": {
"group": {
"description": "The category group that the audit belongs to (optional).",
"type": "string"
},
"id": {
"description": "The audit ref id.",
"type": "string"
},
"weight": {
"description": "The weight this audit's score has on the overall category score.",
"format": "double",
"type": "number"
}
},
"type": "object"
},
"Bucket": {
"description": "A proportion of data in the total distribution, bucketed by a min/max\npercentage. Each bucket's range is bounded by min \u003c= x \u003c max, In\nmillisecond.",
"id": "Bucket",
"properties": {
"max": {
"description": "Upper bound for a bucket's range.",
"format": "int32",
"type": "integer"
},
"min": {
"description": "Lower bound for a bucket's range.",
"format": "int32",
"type": "integer"
},
"proportion": {
"description": "The proportion of data in this bucket.",
"format": "double",
"type": "number"
}
},
"type": "object"
},
"Categories": {
"description": "The categories in a Lighthouse run.",
"id": "Categories",
"properties": {
"accessibility": {
"$ref": "LighthouseCategoryV5",
"description": "The accessibility category, containing all accessibility related audits."
},
"best-practices": {
"$ref": "LighthouseCategoryV5",
"description": "The best practices category, containing all best practices related\naudits."
},
"performance": {
"$ref": "LighthouseCategoryV5",
"description": "The performance category, containing all performance related audits."
},
"pwa": {
"$ref": "LighthouseCategoryV5",
"description": "The Progressive-Web-App (PWA) category, containing all pwa related\naudits."
},
"seo": {
"$ref": "LighthouseCategoryV5",
"description": "The Search-Engine-Optimization (SEO) category, containing all seo related\naudits."
}
},
"type": "object"
},
"CategoryGroupV5": {
"description": "Message containing a category",
"id": "CategoryGroupV5",
"properties": {
"description": {
"description": "The description of what the category is grouping",
"type": "string"
},
"title": {
"description": "The human readable title of the group",
"type": "string"
}
},
"type": "object"
},
"ConfigSettings": {
"description": "Message containing the configuration settings for the Lighthouse run.",
"id": "ConfigSettings",
"properties": {
"channel": {
"description": "How Lighthouse was run, e.g. from the Chrome extension or from the npm\nmodule.",
"type": "string"
},
"emulatedFormFactor": {
"description": "The form factor the emulation should use.",
"type": "string"
},
"locale": {
"description": "The locale setting.",
"type": "string"
},
"onlyCategories": {
"description": "List of categories of audits the run should conduct.",
"type": "any"
}
},
"type": "object"
},
"Environment": {
"description": "Message containing environment configuration for a Lighthouse run.",
"id": "Environment",
"properties": {
"benchmarkIndex": {
"description": "The benchmark index number that indicates rough device class.",
"format": "double",
"type": "number"
},
"hostUserAgent": {
"description": "The user agent string of the version of Chrome used.",
"type": "string"
},
"networkUserAgent": {
"description": "The user agent string that was sent over the network.",
"type": "string"
}
},
"type": "object"
},
"I18n": {
"description": "Message containing the i18n data for the LHR - Version 1.",
"id": "I18n",
"properties": {
"rendererFormattedStrings": {
"$ref": "RendererFormattedStrings",
"description": "Internationalized strings that are formatted to the locale in\nconfigSettings."
}
},
"type": "object"
},
"LighthouseAuditResultV5": {
"description": "An audit's result object in a Lighthouse result.",
"id": "LighthouseAuditResultV5",
"properties": {
"description": {
"description": "The description of the audit.",
"type": "string"
},
"details": {
"additionalProperties": {
"description": "Properties of the object.",
"type": "any"
},
"description": "Freeform details section of the audit.",
"type": "object"
},
"displayValue": {
"description": "The value that should be displayed on the UI for this audit.",
"type": "string"
},
"errorMessage": {
"description": "An error message from a thrown error inside the audit.",
"type": "string"
},
"explanation": {
"description": "An explanation of the errors in the audit.",
"type": "string"
},
"id": {
"description": "The audit's id.",
"type": "string"
},
"numericValue": {
"description": "A numeric value that has a meaning specific to the audit, e.g. the number\nof nodes in the DOM or the timestamp of a specific load event. More\ninformation can be found in the audit details, if present.",
"format": "double",
"type": "number"
},
"score": {
"description": "The score of the audit, can be null.",
"type": "any"
},
"scoreDisplayMode": {
"description": "The enumerated score display mode.",
"type": "string"
},
"title": {
"description": "The human readable title.",
"type": "string"
},
"warnings": {
"description": "Possible warnings that occurred in the audit, can be null.",
"type": "any"
}
},
"type": "object"
},
"LighthouseCategoryV5": {
"description": "A Lighthouse category.",
"id": "LighthouseCategoryV5",
"properties": {
"auditRefs": {
"description": "An array of references to all the audit members of this category.",
"items": {
"$ref": "AuditRefs"
},
"type": "array"
},
"description": {
"description": "A more detailed description of the category and its importance.",
"type": "string"
},
"id": {
"description": "The string identifier of the category.",
"type": "string"
},
"manualDescription": {
"description": "A description for the manual audits in the category.",
"type": "string"
},
"score": {
"description": "The overall score of the category, the weighted average of all its audits.\n(The category's score, can be null.)",
"type": "any"
},
"title": {
"description": "The human-friendly name of the category.",
"type": "string"
}
},
"type": "object"
},
"LighthouseResultV5": {
"description": "The Lighthouse result object.",
"id": "LighthouseResultV5",
"properties": {
"audits": {
"additionalProperties": {
"$ref": "LighthouseAuditResultV5"
},
"description": "Map of audits in the LHR.",
"type": "object"
},
"categories": {
"$ref": "Categories",
"description": "Map of categories in the LHR."
},
"categoryGroups": {
"additionalProperties": {
"$ref": "CategoryGroupV5"
},
"description": "Map of category groups in the LHR.",
"type": "object"
},
"configSettings": {
"$ref": "ConfigSettings",
"description": "The configuration settings for this LHR."
},
"environment": {
"$ref": "Environment",
"description": "Environment settings that were used when making this LHR."
},
"fetchTime": {
"description": "The time that this run was fetched.",
"type": "string"
},
"finalUrl": {
"description": "The final resolved url that was audited.",
"type": "string"
},
"i18n": {
"$ref": "I18n",
"description": "The internationalization strings that are required to render the LHR."
},
"lighthouseVersion": {
"description": "The lighthouse version that was used to generate this LHR.",
"type": "string"
},
"requestedUrl": {
"description": "The original requested url.",
"type": "string"
},
"runWarnings": {
"description": "List of all run warnings in the LHR. Will always output to at least `[]`.",
"items": {
"type": "any"
},
"type": "array"
},
"runtimeError": {
"$ref": "RuntimeError",
"description": "A top-level error message that, if present, indicates a serious enough\nproblem that this Lighthouse result may need to be discarded."
},
"stackPacks": {
"description": "The Stack Pack advice strings.",
"items": {
"$ref": "StackPack"
},
"type": "array"
},
"timing": {
"$ref": "Timing",
"description": "Timing information for this LHR."
},
"userAgent": {
"description": "The user agent that was used to run this LHR.",
"type": "string"
}
},
"type": "object"
},
"PagespeedApiLoadingExperienceV5": {
"description": "The CrUX loading experience object that contains CrUX data breakdowns.",
"id": "PagespeedApiLoadingExperienceV5",
"properties": {
"id": {
"description": "The url, pattern or origin which the metrics are on.",
"type": "string"
},
"initial_url": {
"description": "The requested URL, which may differ from the resolved \"id\".",
"type": "string"
},
"metrics": {
"additionalProperties": {
"$ref": "UserPageLoadMetricV5"
},
"description": "The map of \u003cmetrics, data\u003e.",
"type": "object"
},
"origin_fallback": {
"description": "True if the result is an origin fallback from a page, false otherwise.",
"type": "boolean"
},
"overall_category": {
"description": "The human readable speed \"category\" of the id.",
"type": "string"
}
},
"type": "object"
},
"PagespeedApiPagespeedResponseV5": {
"description": "The Pagespeed API response object.",
"id": "PagespeedApiPagespeedResponseV5",
"properties": {
"analysisUTCTimestamp": {
"description": "The UTC timestamp of this analysis.",
"type": "string"
},
"captchaResult": {
"description": "The captcha verify result",
"type": "string"
},
"id": {
"description": "Canonicalized and final URL for the document, after following page\nredirects (if any).",
"type": "string"
},
"kind": {
"description": "Kind of result.",
"type": "string"
},
"lighthouseResult": {
"$ref": "LighthouseResultV5",
"description": "Lighthouse response for the audit url as an object."
},
"loadingExperience": {
"$ref": "PagespeedApiLoadingExperienceV5",
"description": "Metrics of end users' page loading experience."
},
"originLoadingExperience": {
"$ref": "PagespeedApiLoadingExperienceV5",
"description": "Metrics of the aggregated page loading experience of the origin"
},
"version": {
"$ref": "PagespeedVersion",
"description": "The version of PageSpeed used to generate these results."
}
},
"type": "object"
},
"PagespeedVersion": {
"description": "The Pagespeed Version object.",
"id": "PagespeedVersion",
"properties": {
"major": {
"description": "The major version number of PageSpeed used to generate these results.",
"type": "string"
},
"minor": {
"description": "The minor version number of PageSpeed used to generate these results.",
"type": "string"
}
},
"type": "object"
},
"RendererFormattedStrings": {
"description": "Message holding the formatted strings used in the renderer.",
"id": "RendererFormattedStrings",
"properties": {
"auditGroupExpandTooltip": {
"description": "The tooltip text on an expandable chevron icon.",
"type": "string"
},
"crcInitialNavigation": {
"description": "The label for the initial request in a critical request chain.",
"type": "string"
},
"crcLongestDurationLabel": {
"description": "The label for values shown in the summary of critical request chains.",
"type": "string"
},
"errorLabel": {
"description": "The label shown next to an audit or metric that has had an error.",
"type": "string"
},
"errorMissingAuditInfo": {
"description": "The error string shown next to an erroring audit.",
"type": "string"
},
"labDataTitle": {
"description": "The title of the lab data performance category.",
"type": "string"
},
"lsPerformanceCategoryDescription": {
"description": "The disclaimer shown under performance explaning that the network can\nvary.",
"type": "string"
},
"manualAuditsGroupTitle": {
"description": "The heading shown above a list of audits that were not computerd in the\nrun.",
"type": "string"
},
"notApplicableAuditsGroupTitle": {
"description": "The heading shown above a list of audits that do not apply to a page.",
"type": "string"
},
"opportunityResourceColumnLabel": {
"description": "The heading for the estimated page load savings opportunity of an\naudit.",
"type": "string"
},
"opportunitySavingsColumnLabel": {
"description": "The heading for the estimated page load savings of opportunity audits.",
"type": "string"
},
"passedAuditsGroupTitle": {
"description": "The heading that is shown above a list of audits that are passing.",
"type": "string"
},
"scorescaleLabel": {
"description": "The label that explains the score gauges scale (0-49, 50-89, 90-100).",
"type": "string"
},
"toplevelWarningsMessage": {
"description": "The label shown preceding important warnings that may have invalidated\nan entire report.",
"type": "string"
},
"varianceDisclaimer": {
"description": "The disclaimer shown below a performance metric value.",
"type": "string"
},
"warningHeader": {
"description": "The label shown above a bulleted list of warnings.",
"type": "string"
}
},
"type": "object"
},
"RuntimeError": {
"description": "Message containing a runtime error config.",
"id": "RuntimeError",
"properties": {
"code": {
"description": "The enumerated Lighthouse Error code.",
"type": "string"
},
"message": {
"description": "A human readable message explaining the error code.",
"type": "string"
}
},
"type": "object"
},
"StackPack": {
"description": "Message containing Stack Pack information.",
"id": "StackPack",
"properties": {
"descriptions": {
"additionalProperties": {
"type": "string"
},
"description": "The stack pack advice strings.",
"type": "object"
},
"iconDataURL": {
"description": "The stack pack icon data uri.",
"type": "string"
},
"id": {
"description": "The stack pack id.",
"type": "string"
},
"title": {
"description": "The stack pack title.",
"type": "string"
}
},
"type": "object"
},
"Timing": {
"description": "Message containing the performance timing data for the Lighthouse run.",
"id": "Timing",
"properties": {
"total": {
"description": "The total duration of Lighthouse's run.",
"format": "double",
"type": "number"
}
},
"type": "object"
},
"UserPageLoadMetricV5": {
"description": "A CrUX metric object for a single metric and form factor.",
"id": "UserPageLoadMetricV5",
"properties": {
"category": {
"description": "The category of the specific time metric.",
"type": "string"
},
"distributions": {
"description": "Metric distributions. Proportions should sum up to 1.",
"items": {
"$ref": "Bucket"
},
"type": "array"
},
"formFactor": {
"description": "Identifies the form factor of the metric being collected.",
"type": "string"
},
"median": {
"description": "The median number of the metric, in millisecond.",
"format": "int32",
"type": "integer"
},
"metricId": {
"description": "Identifies the type of the metric.",
"type": "string"
},
"percentile": {
"description": "We use this field to store certain percentile value for this metric.\nFor v4, this field contains pc50.\nFor v5, this field contains pc90.",
"format": "int32",
"type": "integer"
}
},
"type": "object"
}
},
"servicePath": "",
"title": "PageSpeed Insights API",
"version": "v5",
"version_module": true
}