Catchpoint's WebPageTest REST API enables developers to create applications which interact directly with Catchpoint's WebPageTest features and functionality. This provides the opportunity to build or integrate with external tools as per your use case.
API consumers can easily request data by calling the appropriate API endpoint. The server will then send the requested data. API Endpoints begin with https://io.catchpoint.com, followed by the API version number and path to the specific endpoint. For example, to retrieve test history, the endpoint would be https://io.catchpoint.com/api/v4/webpagetest/history
Authentication
Catchpoint’s REST API authenticates all requests using the API key. All requests must pass this key as a “bearer” token within the authorization header, as in this example:
curl --location 'https://io.catchpoint.com/api/v4/webpagetest/history'
--header 'Accept: application/json' \
--header 'Authorization: Bearer SAMPLE-TOKEN-6FBB1C166C4878D0B8FB1AAFFAD8AFCC37D733D38A8AB277776'
To create an API consumer and generate your API key, follow these steps:
Navigate to Integrations > API in the left navigation bar.
Scroll down and expand the REST API section.
Click Add Consumer under REST API.
Provide a consumer Name
Select a Contact. If the desired contact is present, you must first add contact information on the contact page.
Optionally add a comma-separated list of Allowed IPs (IP addresses that can make requests to the API as this consumer)
Click Add Consumer & Show Key.
You will then see your REST API Key for this consumer. (The key is masked in the UI.) You can copy the key value using the copy button next to the field.
REST API Key Validity
REST API keys generated in the Catchpoint portal are valid for two years from the time of generation. If a key is regenerated from the UI then the two-year period will start over. A key can also be revoked.
Response Format
The REST API returns all results in JSON format. All requests made to the API need to include an accept header with either "*/*", "application/json", "text/json", or "text/plain".
Error Responses
Various errors are reported using a common response schema with some variation. Below are a couple of examples:
Example 1:
A sample response for post - payload data serialization error, returns status code 400. It will point out the line number and invalid value.
Example 2:
A sample response for post - payload required field validation, returns status code 400. This error occurs when required fields are missing in the JSON body.
Parameters
All parameters are case sensitive. In case of multiple parameters in a query, the “AND” operation will be performed. When nothing is passed for an optional parameter, the endpoint executes its default behavior.
Date Format
The format for date query parameters such as start/end times is YYYY-MM-DDTHH:MI:SS. All timestamps need to be passed in UTC time zone.
YYYY - The four-digit year
MM - The month from 01 to 12
DD - The day of the month from 01 to 31 HH - The hour of day from 00 to 23
MI - The minute of the hour from 00 to 59
SS – The seconds of the minute from 00 to 59
Usage Limits
Usage limits thresholds are applied per requestor IP, regardless of which consumer API Key is used to make each request. Requests from different IPs using the same key would have these limits applied separately.
• 7 requests per second
• 10 requests per minute
• 500 requests per hour
• 2000 requests per day
For example, if Consumer A and Consumer B each make 10 calls within the same minute from the same originating IP address, then any further calls that minute from any Consumer will result in error code 429, as the 20 requests per minute limit would be exceeded.
Note that the daily REST API call count is reset at 00:00:00 UTC.
REST API Version Support
Catchpoint will support the current major version of the REST API and the prior major version of the REST API for a period of twelve months from when the current major version was announced as stable. If you attempt to access an unsupported version of the API, it will result in an error.
REST API Endpoints
GET /v3.4/webpagetest/history
Returns test history for the specified time period.
Parameters:
search - query string used to filter - matches urls and labels of the history records
startTimeUtc - utc start time, format: YYYY-MM-DDTHH:mm:ss:SSSZ. All tests with runTime between start and end will be returned.
endTimeUtc - utc end time, format: YYYY-MM-DDTHH:mm:ss:SSSZ. All tests with runTime between start and end will be returned.
pageNumber - results are paginated. this will be the index of the page
pageSize - results are paginated. this will be the size of each page (as # of history records)
Example Request URL:https://io.catchpoint.com/api/v3.4/webpagetest/history?startTimeUtc=2025-01-01T17%3A51%3A32.184Z&endTimeUtc=2025-01-20T17%3A51%3A32.184Z
Example Response
{
"data": {
"webpageTestHistory": [
{
"appliedExperiments": [],
"id": 3927,
"status": {
"id": 0,
"name": "Completed"
},
"url": "https://github.com",
"node": {
"id": 0,
"name": "WPT Pietrasanta node"
},
"types": [
"Performance",
"Lighthouse"
],
"runTime": "2025-01-20T08:54:21.997",
"runs": 3,
"labels": []
}
]
},
"messages": [],
"errors": [],
"completed": true,
"traceId": "9c00d1391245aa48a4d274465a9b9313"
}Response Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"webpageTestHistory": {
"type": "array",
"items": {
"type": "object",
"properties": {
"parentId": {
"type": "integer",
"format": "int32",
"nullable": true
},
"controlRunId": {
"type": "integer",
"format": "int32",
"nullable": true
},
"appliedExperiments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"id": { "type": "integer", "format": "int32" },
"status": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"url": { "type": "string", "nullable": true },
"node": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"types": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"runTime": {
"type": "string",
"format": "date-time"
},
"runs": { "type": "integer", "format": "int32" },
"labels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"color": {
"type": "string",
"nullable": true
},
"id": {
"type": "integer",
"format": "int32",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"values": {
"type": "array",
"items": { "type": "string" },
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"hasMore": { "type": "boolean", "nullable": true },
"next": { "type": "string", "nullable": true },
"previous": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"information": { "type": "string", "nullable": true },
"ignoredPath": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ops": { "type": "string", "nullable": true },
"path": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "nullable": true },
"message": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
},
"completed": { "type": "boolean", "readOnly": true },
"traceId": { "type": "string", "nullable": true },
"usageLimits": {
"type": "object",
"properties": {
"clientId": { "type": "integer", "format": "int64" },
"lastRequestTimestamp": {
"type": "string",
"format": "date-time"
},
"limits": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"runs": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"exceededMessage": {
"type": "string",
"nullable": true,
"readOnly": true
},
"divisionUsageStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"divisionId": {
"type": "integer",
"format": "int32"
},
"consumerStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"consumerId": {
"type": "integer",
"format": "int32"
},
"requestCount": {
"type": "object",
"properties": {
"minute": {
"type": "integer",
"format": "int32"
},
"hour": {
"type": "integer",
"format": "int32"
},
"day": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"maxPerDay": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}GET /v3.4/webpagetest/enumerations
Retrieves enumeration values for ConnectionType, DeviceType, and DeviceResolution.
Parameters:
includeConnectionType - if true, include connection type enumeration values
includeDeviceType - if true, include device type enumeration values
includeDeviceResolution - if true, include device resolution enumeration values
Example full request url:https://io.catchpoint.com/api/v3.4/webpagetest/enumerations?includeConnectionType=true&includeDeviceType=true&includeDeviceResolution=true
Example Response
{
"data": {
"sections": [
{
"section": "DeviceResolutionType",
"enumeration": [
{
"id": 2,
"name": "1024x768"
},
{
"id": 3,
"name": "1280x720"
},
{
"id": 4,
"name": "1280x1024"
},
{
"id": 5,
"name": "1366x768"
},
{
"id": 6,
"name": "1400x900"
},
{
"id": 7,
"name": "1600x900"
},
{
"id": 8,
"name": "1920x1080"
},
{
"id": 9,
"name": "1920x1200"
}
]
}
]
},
"messages": [],
"errors": [],
"completed": true,
"traceId": "7db113f1b5fecc4097d638ae7cc7f5ca"
}Response Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"sections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"section": { "type": "string", "nullable": true },
"enumeration": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"hasMore": { "type": "boolean", "nullable": true },
"next": { "type": "string", "nullable": true },
"previous": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"information": { "type": "string", "nullable": true },
"ignoredPath": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ops": { "type": "string", "nullable": true },
"path": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "nullable": true },
"message": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
},
"completed": { "type": "boolean", "readOnly": true },
"traceId": { "type": "string", "nullable": true },
"usageLimits": {
"type": "object",
"properties": {
"clientId": { "type": "integer", "format": "int64" },
"lastRequestTimestamp": {
"type": "string",
"format": "date-time"
},
"limits": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"runs": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"exceededMessage": {
"type": "string",
"nullable": true,
"readOnly": true
},
"divisionUsageStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"divisionId": {
"type": "integer",
"format": "int32"
},
"consumerStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"consumerId": {
"type": "integer",
"format": "int32"
},
"requestCount": {
"type": "object",
"properties": {
"minute": {
"type": "integer",
"format": "int32"
},
"hour": {
"type": "integer",
"format": "int32"
},
"day": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"maxPerDay": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}GET /v3.4/webpagetest/nodes
Returns Nodes available for running WPT instant tests.
Parameters:
statusId - 0 for active, 1 for inactive. If not provided, all nodes will be retrieved (both active and inactive)
Example full request url: https://io.catchpoint.com/api/v3.4/webpagetest/nodes?statusId=0
Example Response
{
"data": {
"nodes": [
{
"id": 14410,
"changeDate": "2024-05-06T06:28:45.977",
"name": "WPT Virginia",
"networkType": {
"id": 8,
"name": "WebPageTest"
},
"status": {
"id": 0,
"name": "Active"
},
"internetServiceProvider": {
"id": 66,
"name": "TIM"
},
"country": {
"id": 224,
"name": "United States"
},
"city": {
"id": 25,
"name": "Washington"
},
"isPaused": false
}
]
},
"messages": [],
"errors": [],
"completed": true,
"traceId": "57d6fbba465c084983f2ee3f3385e772"
}Response Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "integer", "format": "int64" },
"changeDate": {
"type": "string",
"format": "date-time"
},
"name": { "type": "string", "nullable": true },
"networkType": {
"enum": {
"8": { "id": 8, "name": "WebPageTest" }
},
"type": "integer",
"format": "int32"
},
"status": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"internetServiceProvider": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"country": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"city": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"region": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int32"
},
"name": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"isPaused": { "type": "boolean" }
},
"additionalProperties": false
},
"nullable": true
},
"hasMore": { "type": "boolean", "nullable": true },
"next": { "type": "string", "nullable": true },
"previous": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"information": { "type": "string", "nullable": true },
"ignoredPath": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ops": { "type": "string", "nullable": true },
"path": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "nullable": true },
"message": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
},
"completed": { "type": "boolean", "readOnly": true },
"traceId": { "type": "string", "nullable": true },
"usageLimits": {
"type": "object",
"properties": {
"clientId": { "type": "integer", "format": "int64" },
"lastRequestTimestamp": {
"type": "string",
"format": "date-time"
},
"limits": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"runs": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"exceededMessage": {
"type": "string",
"nullable": true,
"readOnly": true
},
"divisionUsageStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"divisionId": {
"type": "integer",
"format": "int32"
},
"consumerStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"consumerId": {
"type": "integer",
"format": "int32"
},
"requestCount": {
"type": "object",
"properties": {
"minute": {
"type": "integer",
"format": "int32"
},
"hour": {
"type": "integer",
"format": "int32"
},
"day": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"maxPerDay": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}GET /v3.4/webpagetest/results/{testId}
Returns test results for a specific test run.
Parameters:
run - integer, mandatory, index of run to retrieve results for
includeWaterfall - boolean, optional, if true waterfall data will be included in the results
includeFilmstrip - boolean, optional, if true filmstrip data will be included in results (images converted to base64)
includeLighthouse - boolean, optional, if true include lighthouse data
Example full request url:https://io.catchpoint.com/api/v3.4/webpagetest/results/3917?run=1&includeWaterfall=true&includeFilmstrip=true&includeLighthouse=true
Example Response
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"parentId": {
"type": "integer",
"format": "int64",
"nullable": true
},
"controlRunId": {
"type": "integer",
"format": "int64",
"nullable": true
},
"isExperiment": { "type": "boolean" },
"isControlRun": { "type": "boolean" },
"isCarbonControl": { "type": "boolean" },
"browser": {
"type": "object",
"properties": {
"id": { "type": "integer", "format": "int32" },
"name": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"runs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"initialUrl": {
"type": "string",
"nullable": true
},
"initialHost": {
"type": "string",
"nullable": true
},
"largestContentfulPaintType": {
"type": "string",
"nullable": true
},
"largestContentfulPaintNodeType": {
"type": "string",
"nullable": true
},
"largestContentfulPaintImageURL": {
"type": "string",
"nullable": true
},
"metaViewport": {
"type": "string",
"nullable": true
},
"eventName": { "type": "string", "nullable": true },
"requestImages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"number": {
"type": "integer",
"format": "int32"
},
"src": {
"type": "string",
"nullable": true
},
"imageTotal": {
"type": "integer",
"format": "int32",
"nullable": true
},
"imageSave": {
"type": "integer",
"format": "int32",
"nullable": true
},
"bytesIn": {
"type": "integer",
"format": "int32",
"nullable": true
},
"jpegScanCount": {
"type": "integer",
"format": "int32",
"nullable": true
},
"contentType": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"blockingRequests": {
"type": "object",
"properties": {
"css": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"js": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"tp": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"tpHosts": {
"type": "array",
"items": { "type": "string" },
"nullable": true
}
},
"additionalProperties": false
},
"opportunityConfigurations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"section": {
"type": "string",
"nullable": true
},
"name": {
"type": "string",
"nullable": true
},
"isGood": { "type": "boolean" },
"titleVariables": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"descriptionVariables": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"examples": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"experimentConfigurations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"nullable": true
},
"descriptionVariables": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
},
"isTip": {
"type": "boolean"
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"imgsInViewport": {
"type": "array",
"items": {
"type": "object",
"properties": {
"src": {
"type": "string",
"nullable": true
},
"html": {
"type": "string",
"nullable": true
},
"currentSrc": {
"type": "string",
"nullable": true
},
"srcset": {
"type": "string",
"nullable": true
},
"priority": {
"type": "string",
"nullable": true
},
"sizes": {
"type": "string",
"nullable": true
},
"loading": {
"type": "string",
"nullable": true
},
"naturalWidth": {
"type": "integer",
"format": "int32",
"nullable": true
},
"naturalHeight": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"imgsOutViewport": {
"type": "array",
"items": {
"type": "object",
"properties": {
"src": {
"type": "string",
"nullable": true
},
"html": {
"type": "string",
"nullable": true
},
"currentSrc": {
"type": "string",
"nullable": true
},
"srcset": {
"type": "string",
"nullable": true
},
"priority": {
"type": "string",
"nullable": true
},
"sizes": {
"type": "string",
"nullable": true
},
"loading": {
"type": "string",
"nullable": true
},
"naturalWidth": {
"type": "integer",
"format": "int32",
"nullable": true
},
"naturalHeight": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"fonts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"family": {
"type": "string",
"nullable": true
},
"display": {
"type": "string",
"nullable": true
},
"status": {
"type": "string",
"nullable": true
},
"style": {
"type": "string",
"nullable": true
},
"weight": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"carbonFootprint": {
"type": "object",
"properties": {
"sustainableWebDesign": {
"type": "number",
"format": "double",
"nullable": true
},
"scale": {
"type": "string",
"nullable": true
},
"greenHostings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string",
"nullable": true
},
"hasGoodFootprint": {
"type": "boolean",
"nullable": true
},
"error": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"cpuUtilization": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"timestamp": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"nullable": true
},
"max": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"bwUtilization": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"timestamp": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"nullable": true
},
"max": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"interactivePeriods": {
"type": "array",
"items": {
"type": "object",
"properties": {
"start": {
"type": "number",
"format": "double"
},
"end": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"nullable": true
},
"cpuSlices": {
"type": "object",
"properties": {
"sliceMs": {
"type": "number",
"format": "double"
},
"averages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string",
"nullable": true
},
"values": {
"type": "array",
"items": {
"type": "number",
"format": "double"
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"requests": {
"type": "array",
"items": {
"type": "object",
"properties": {
"contentEncoding": {
"type": "string",
"nullable": true
},
"downloadStart": {
"type": "number",
"format": "double",
"nullable": true
},
"downloadEnd": {
"type": "number",
"format": "double",
"nullable": true
},
"cpuTime": {
"type": "number",
"format": "double",
"nullable": true
},
"priority": {
"type": "string",
"nullable": true
},
"socket": {
"type": "string",
"nullable": true
},
"loadStart": {
"type": "number",
"format": "double",
"nullable": true
},
"preloadUnused": {
"type": "string",
"nullable": true
},
"redirectLocations": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"id": {
"type": "string",
"nullable": true
},
"isBasePage": { "type": "boolean" },
"fullUrl": {
"type": "string",
"nullable": true
},
"host": {
"type": "string",
"nullable": true
},
"initiator": {
"type": "string",
"nullable": true
},
"isRenderBlocking": {
"type": "boolean"
},
"renderBlocking": {
"type": "string",
"nullable": true
},
"contentTypeStr": {
"type": "string",
"nullable": true
},
"requestType": {
"type": "string",
"nullable": true
},
"allEnd": {
"type": "number",
"format": "double",
"nullable": true
},
"isSecureRequest": {
"type": "boolean"
},
"responseCode": {
"type": "integer",
"format": "int32"
},
"isThirdParty": { "type": "boolean" },
"url": {
"type": "string",
"nullable": true
},
"duration": {
"type": "number",
"format": "double",
"nullable": true
},
"startTime": {
"type": "number",
"format": "double",
"nullable": true
},
"endTime": {
"type": "number",
"format": "double",
"nullable": true
},
"ttfbStart": {
"type": "number",
"format": "double",
"nullable": true
},
"ttfbEnd": {
"type": "number",
"format": "double",
"nullable": true
},
"connectStart": {
"type": "number",
"format": "double",
"nullable": true
},
"connectEnd": {
"type": "number",
"format": "double",
"nullable": true
},
"connectMs": {
"type": "number",
"format": "double",
"nullable": true
},
"blockingTime": {
"type": "number",
"format": "double",
"nullable": true
},
"scoreKeepAlive": {
"type": "integer",
"format": "int32"
},
"scoreGzip": {
"type": "integer",
"format": "int32"
},
"scoreCompress": {
"type": "integer",
"format": "int32"
},
"scoreProgressiveJpeg": {
"type": "integer",
"format": "int32",
"nullable": true
},
"scoreCache": {
"type": "integer",
"format": "int32"
},
"scoreCdn": {
"type": "integer",
"format": "int32"
},
"bytesIn": {
"type": "integer",
"format": "int32"
},
"objectSizeUncompressed": {
"type": "integer",
"format": "int32",
"nullable": true
},
"gzipTotal": {
"type": "integer",
"format": "int32",
"nullable": true
},
"gzipSave": {
"type": "integer",
"format": "int32",
"nullable": true
},
"cdnProvider": {
"type": "string",
"nullable": true
},
"cacheTime": {
"type": "integer",
"format": "int32",
"nullable": true
},
"imageTotal": {
"type": "integer",
"format": "int32",
"nullable": true
},
"imageSave": {
"type": "integer",
"format": "int32",
"nullable": true
},
"waitTiming": {
"type": "object",
"properties": {
"start": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"connectTiming": {
"type": "object",
"properties": {
"start": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"dnsTiming": {
"type": "object",
"properties": {
"start": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"sslTiming": {
"type": "object",
"properties": {
"start": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"chunks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"start": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"nullable": true
},
"contentType": {
"enum": {
"0": {
"id": 0,
"name": "string"
}
},
"type": "integer",
"format": "int32"
},
"status": {
"enum": {
"0": {
"id": 0,
"name": "string"
}
},
"type": "integer",
"format": "int32"
},
"cardinality": {
"type": "integer",
"format": "int32"
},
"jsTimings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"start": {
"type": "number",
"format": "double"
},
"value": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"run": { "type": "integer", "format": "int32" },
"viewType": {
"enum": { "0": { "id": 0, "name": "string" } },
"type": "integer",
"format": "int32"
},
"stepNum": { "type": "integer", "format": "int32" },
"timeToFirstByte": {
"type": "number",
"format": "double"
},
"docTime": { "type": "number", "format": "double" },
"fullyLoaded": {
"type": "number",
"format": "double"
},
"bytesOut": {
"type": "number",
"format": "double"
},
"bytesOutDoc": {
"type": "number",
"format": "double"
},
"bytesIn": { "type": "number", "format": "double" },
"bytesInDoc": {
"type": "number",
"format": "double"
},
"firstContentfulPaint": {
"type": "number",
"format": "double"
},
"firstMeaningfulPaint": {
"type": "number",
"format": "double"
},
"totalBlockingTime": {
"type": "number",
"format": "double",
"nullable": true
},
"largestContentfulPaint": {
"type": "number",
"format": "double",
"nullable": true
},
"cumulativeLayoutShift": {
"type": "number",
"format": "double",
"nullable": true
},
"renderBlockingJS": {
"type": "integer",
"format": "int32"
},
"renderBlockingCSS": {
"type": "integer",
"format": "int32"
},
"generatedContentSize": {
"type": "number",
"format": "double"
},
"generatedContentPercent": {
"type": "number",
"format": "double"
},
"render": { "type": "number", "format": "double" },
"speedIndex": {
"type": "number",
"format": "double"
},
"possiblyRenderBlockingReq": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"jsLibsVulns": {
"type": "array",
"items": {
"type": "object",
"properties": {
"severity": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"videoFrames": {
"type": "array",
"items": {
"type": "object",
"properties": {
"time": {
"type": "integer",
"format": "int32"
},
"image": {
"type": "string",
"nullable": true
},
"visuallyComplete": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"nullable": true
},
"layoutShifts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"time": {
"type": "number",
"format": "double"
},
"score": {
"type": "number",
"format": "double"
},
"cumulativeScore": {
"type": "number",
"format": "double"
},
"windowScore": {
"type": "number",
"format": "double"
},
"shiftWindowNum": {
"type": "integer",
"format": "int32"
},
"rects": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "integer",
"format": "int32"
}
},
"nullable": true
},
"sources": {
"type": "array",
"items": {
"type": "object",
"properties": {
"previousRect": {
"type": "object",
"properties": {
"x": {
"type": "number",
"format": "float"
},
"y": {
"type": "number",
"format": "float"
},
"width": {
"type": "number",
"format": "float"
},
"height": {
"type": "number",
"format": "float"
},
"top": {
"type": "number",
"format": "float"
},
"right": {
"type": "number",
"format": "float"
},
"bottom": {
"type": "number",
"format": "float"
},
"left": {
"type": "number",
"format": "float"
}
},
"additionalProperties": false
},
"currentRect": {
"type": "object",
"properties": {
"x": {
"type": "number",
"format": "float"
},
"y": {
"type": "number",
"format": "float"
},
"width": {
"type": "number",
"format": "float"
},
"height": {
"type": "number",
"format": "float"
},
"top": {
"type": "number",
"format": "float"
},
"right": {
"type": "number",
"format": "float"
},
"bottom": {
"type": "number",
"format": "float"
},
"left": {
"type": "number",
"format": "float"
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"screenShot": {
"type": "string",
"nullable": true
},
"pageEvents": {
"type": "array",
"items": {
"type": "object",
"properties": {
"metricType": {
"enum": {
"0": {
"id": 0,
"name": "string"
}
},
"type": "integer",
"format": "int32"
},
"start": {
"type": "number",
"format": "double"
},
"duration": {
"type": "number",
"format": "double"
}
},
"additionalProperties": false
},
"nullable": true
},
"largestPaints": {
"type": "array",
"items": {
"type": "object",
"properties": {
"event": {
"type": "string",
"nullable": true
},
"time": {
"type": "integer",
"format": "int32"
},
"size": {
"type": "integer",
"format": "int32"
},
"element": {
"type": "object",
"properties": {
"nodeName": {
"type": "string",
"nullable": true
},
"boundingRect": {
"type": "object",
"properties": {
"x": {
"type": "number",
"format": "float"
},
"y": {
"type": "number",
"format": "float"
},
"width": {
"type": "number",
"format": "float"
},
"height": {
"type": "number",
"format": "float"
},
"top": {
"type": "number",
"format": "float"
},
"right": {
"type": "number",
"format": "float"
},
"bottom": {
"type": "number",
"format": "float"
},
"left": {
"type": "number",
"format": "float"
}
},
"additionalProperties": false
},
"outerHTML": {
"type": "string",
"nullable": true
},
"content": {
"type": "string",
"nullable": true
},
"src": {
"type": "string",
"nullable": true
},
"currentSrc": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"type": {
"type": "string",
"nullable": true
},
"url": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"axe": {
"type": "object",
"properties": {
"testEngine": {
"type": "string",
"nullable": true
},
"violations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"impact": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"visualComplete": {
"type": "integer",
"format": "int32"
},
"visualComplete85": {
"type": "integer",
"format": "int32",
"nullable": true
},
"visualComplete90": {
"type": "integer",
"format": "int32",
"nullable": true
},
"visualComplete95": {
"type": "integer",
"format": "int32",
"nullable": true
},
"visualComplete99": {
"type": "integer",
"format": "int32",
"nullable": true
},
"lastVisualChange": {
"type": "integer",
"format": "int32"
},
"domContentLoadedEventStart": {
"type": "integer",
"format": "int64"
},
"titleTime": {
"type": "integer",
"format": "int32"
},
"fullyLoadedCPUms": {
"type": "integer",
"format": "int32"
},
"viewport": {
"type": "object",
"properties": {
"width": {
"type": "integer",
"format": "int32"
},
"height": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"scoreCache": {
"type": "integer",
"format": "int32"
},
"scoreCdn": {
"type": "integer",
"format": "int32"
},
"scoreGzip": {
"type": "integer",
"format": "int32"
},
"scoreKeepAlive": {
"type": "integer",
"format": "int32"
},
"gzipTotal": {
"type": "integer",
"format": "int32",
"nullable": true
},
"gzipSavings": {
"type": "integer",
"format": "int32",
"nullable": true
},
"scoreCompress": {
"type": "integer",
"format": "int32"
},
"scoreProgressiveJpeg": {
"type": "integer",
"format": "int32"
},
"imageTotal": {
"type": "integer",
"format": "int32"
},
"imageSavings": {
"type": "integer",
"format": "int32"
},
"cpuTimes": {
"type": "object",
"properties": {
"breakDown": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string",
"nullable": true
},
"time": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"nullable": true
},
"events": {
"type": "array",
"items": {
"type": "object",
"properties": {
"proc": {
"type": "string",
"nullable": true
},
"time": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"consoleLog": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source": {
"type": "string",
"nullable": true
},
"level": {
"type": "string",
"nullable": true
},
"text": {
"type": "string",
"nullable": true
},
"url": {
"type": "string",
"nullable": true
},
"lineNumber": {
"type": "integer",
"format": "int32",
"nullable": true
},
"column": {
"type": "integer",
"format": "int32",
"nullable": true
},
"timestamp": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"mainThreadBlockingTimes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"origin": {
"type": "string",
"nullable": true
},
"time": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"id": { "type": "string", "nullable": true },
"testUrl": { "type": "string", "nullable": true },
"latency": {
"type": "integer",
"format": "int32",
"nullable": true
},
"testRuns": { "type": "integer", "format": "int32" },
"numSteps": { "type": "integer", "format": "int32" },
"hasScript": { "type": "boolean" },
"createDate": { "type": "string", "format": "date-time" },
"isFvOnly": { "type": "boolean" },
"isLighthouse": { "type": "boolean" },
"isPerformance": { "type": "boolean" },
"deviceName": { "type": "string", "nullable": true },
"locationName": { "type": "string", "nullable": true },
"connectionName": { "type": "string", "nullable": true },
"screenWidth": { "type": "integer", "format": "int32" },
"screenHeight": { "type": "integer", "format": "int32" },
"platformTypeId": { "type": "integer", "format": "int32" },
"labels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"color": { "type": "string", "nullable": true },
"id": {
"type": "integer",
"format": "int32",
"nullable": true
},
"name": { "type": "string", "nullable": true },
"values": {
"type": "array",
"items": { "type": "string" },
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"medians": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"enum": { "0": { "id": 0, "name": "string" } },
"type": "integer",
"format": "int32"
},
"index": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"nullable": true
},
"crux": {
"type": "object",
"properties": {
"key": {
"type": "object",
"properties": {
"formFactor": {
"type": "string",
"nullable": true
},
"url": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"metrics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string",
"nullable": true
},
"metric": {
"type": "object",
"properties": {
"percentiles": {
"type": "object",
"properties": {
"p75": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"nullable": true
},
"collectionPeriod": {
"type": "object",
"properties": {
"firstDate": {
"type": "object",
"properties": {
"year": {
"type": "integer",
"format": "int32"
},
"month": {
"type": "integer",
"format": "int32"
},
"day": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"lastDate": {
"type": "object",
"properties": {
"year": {
"type": "integer",
"format": "int32"
},
"month": {
"type": "integer",
"format": "int32"
},
"day": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"lighthouse": {
"type": "object",
"properties": {
"audits": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"title": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"score": {
"type": "number",
"format": "double",
"nullable": true
},
"scoreDescription": {
"type": "string",
"nullable": true
},
"scoreDisplayMode": {
"type": "string",
"nullable": true
},
"displayValue": {
"type": "string",
"nullable": true
},
"details": {
"type": "object",
"properties": {
"type": {
"type": "string",
"nullable": true
},
"overallSavingsMs": {
"type": "number",
"format": "double",
"nullable": true
},
"overallSavingsBytes": {
"type": "number",
"format": "double",
"nullable": true
},
"debugData": {
"type": "object",
"additionalProperties": {},
"nullable": true
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"resourceBytes": {
"type": "number",
"format": "double",
"nullable": true
},
"unusedBytes": {
"type": "number",
"format": "double",
"nullable": true
},
"children": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"nullable": true
},
"resourceBytes": {
"type": "number",
"format": "double",
"nullable": true
},
"unusedBytes": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"numericValue": {
"type": "number",
"format": "double",
"nullable": true
},
"numericUnit": {
"type": "string",
"nullable": true
},
"explanation": {
"type": "string",
"nullable": true
},
"warnings": {
"type": "array",
"items": { "type": "string" },
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"categories": {
"type": "object",
"properties": {
"performance": {
"type": "object",
"properties": {
"title": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"manualDescription": {
"type": "string",
"nullable": true
},
"supportedModes": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"auditRefs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"weight": {
"type": "integer",
"format": "int32"
},
"group": {
"type": "string",
"nullable": true
},
"acronym": {
"type": "string",
"nullable": true
},
"relevantAudits": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"id": {
"type": "string",
"nullable": true
},
"score": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
},
"accessibility": {
"type": "object",
"properties": {
"title": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"manualDescription": {
"type": "string",
"nullable": true
},
"supportedModes": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"auditRefs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"weight": {
"type": "integer",
"format": "int32"
},
"group": {
"type": "string",
"nullable": true
},
"acronym": {
"type": "string",
"nullable": true
},
"relevantAudits": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"id": {
"type": "string",
"nullable": true
},
"score": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
},
"bestPractices": {
"type": "object",
"properties": {
"title": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"manualDescription": {
"type": "string",
"nullable": true
},
"supportedModes": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"auditRefs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"weight": {
"type": "integer",
"format": "int32"
},
"group": {
"type": "string",
"nullable": true
},
"acronym": {
"type": "string",
"nullable": true
},
"relevantAudits": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"id": {
"type": "string",
"nullable": true
},
"score": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
},
"seo": {
"type": "object",
"properties": {
"title": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"manualDescription": {
"type": "string",
"nullable": true
},
"supportedModes": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"auditRefs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"weight": {
"type": "integer",
"format": "int32"
},
"group": {
"type": "string",
"nullable": true
},
"acronym": {
"type": "string",
"nullable": true
},
"relevantAudits": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"id": {
"type": "string",
"nullable": true
},
"score": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
},
"pwa": {
"type": "object",
"properties": {
"title": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"manualDescription": {
"type": "string",
"nullable": true
},
"supportedModes": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"auditRefs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"nullable": true
},
"weight": {
"type": "integer",
"format": "int32"
},
"group": {
"type": "string",
"nullable": true
},
"acronym": {
"type": "string",
"nullable": true
},
"relevantAudits": {
"type": "array",
"items": {
"type": "string"
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"id": {
"type": "string",
"nullable": true
},
"score": {
"type": "number",
"format": "double",
"nullable": true
}
},
"additionalProperties": false
}
},
"additionalProperties": false
},
"categoryGroups": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"title": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"configSettings": {
"type": "object",
"properties": {
"screenEmulation": {
"type": "object",
"properties": {
"width": {
"type": "integer",
"format": "int32"
},
"height": {
"type": "integer",
"format": "int32"
},
"disabled": { "type": "boolean" }
},
"additionalProperties": false
},
"locale": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"treeMapUri": { "type": "string", "nullable": true },
"requestedUrl": { "type": "string", "nullable": true },
"finalUrl": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"error": { "type": "string", "nullable": true },
"hasMore": { "type": "boolean", "nullable": true },
"next": { "type": "string", "nullable": true },
"previous": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"information": { "type": "string", "nullable": true },
"ignoredPath": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ops": { "type": "string", "nullable": true },
"path": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "nullable": true },
"message": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
},
"completed": { "type": "boolean", "readOnly": true },
"traceId": { "type": "string", "nullable": true },
"usageLimits": {
"type": "object",
"properties": {
"clientId": { "type": "integer", "format": "int64" },
"lastRequestTimestamp": {
"type": "string",
"format": "date-time"
},
"limits": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"runs": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"exceededMessage": {
"type": "string",
"nullable": true,
"readOnly": true
},
"divisionUsageStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"divisionId": {
"type": "integer",
"format": "int32"
},
"consumerStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"consumerId": {
"type": "integer",
"format": "int32"
},
"requestCount": {
"type": "object",
"properties": {
"minute": {
"type": "integer",
"format": "int32"
},
"hour": {
"type": "integer",
"format": "int32"
},
"day": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"maxPerDay": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}POST /v3.4/webpagetest/test
Runs a new webpage instant test based on the POST data.
Request Schema
{
"required": { "0": "deviceType", "1": "nodeId", "2": "url" },
"type": "object",
"properties": {
"url": {
"maxLength": 2048,
"minLength": 0,
"type": "string",
"format": "uri"
},
"runs": {
"maximum": 6,
"minimum": 1,
"type": "integer",
"format": "int32"
},
"nodeId": { "type": "integer", "format": "int32" },
"connectionType": { "type": "integer", "format": "int32" },
"deviceType": { "type": "integer", "format": "int32" },
"deviceResolution": {
"type": "integer",
"format": "int32",
"nullable": true
},
"firstViewOnly": { "type": "boolean" },
"lighthouse": { "type": "boolean" },
"performance": { "type": "boolean" },
"labels": {
"type": "array",
"items": {
"required": { "0": "name" },
"type": "object",
"properties": {
"color": { "type": "string", "nullable": true },
"id": { "type": "integer", "format": "int32" },
"name": {
"maxLength": 128,
"minLength": 1,
"type": "string"
},
"values": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"changeLogObjectType": {
"enum": { "0": { "id": 0, "name": "string" } },
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"nullable": true
},
"advancedSettings": {
"type": "object",
"properties": {
"minTestDuration": {
"maximum": 2147483647,
"minimum": 1,
"type": "integer",
"format": "int32",
"nullable": true
},
"stopAtDocumentComplete": { "type": "boolean" },
"preserveUserAgent": { "type": "boolean" },
"appendUserAgent": { "type": "string", "nullable": true },
"customUserAgent": { "type": "string", "nullable": true },
"disableAvif": { "type": "boolean" },
"disableWebp": { "type": "boolean" },
"ignoreSsl": { "type": "boolean" },
"customHeaders": {
"type": "object",
"additionalProperties": { "type": "string" },
"nullable": true
},
"injectScript": { "type": "string", "nullable": true },
"injectScriptAllFrames": { "type": "boolean" }
},
"additionalProperties": false
},
"script": {
"type": "object",
"properties": {
"body": { "type": "string", "nullable": true },
"containsSensitiveData": { "type": "boolean" },
"discardHeaders": { "type": "boolean" }
},
"additionalProperties": false
},
"blockRequest": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"blockDomain": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"spof": {
"type": "array",
"items": { "type": "string" },
"nullable": true
},
"chromiumParameters": {
"type": "object",
"properties": {
"carbonControl": { "type": "boolean" },
"useDevToolsTrafficShaper": { "type": "boolean" },
"hostResolverRules": { "type": "string", "nullable": true },
"cmdLine": { "type": "string", "nullable": true },
"captureDevToolsTimeline": { "type": "boolean" }
},
"additionalProperties": false
}
},
"additionalProperties": false
}Response Schema
{
"type": "object",
"properties": {
"data": {
"type": "object",
"properties": {
"id": { "type": "integer", "format": "int64" },
"hasMore": { "type": "boolean", "nullable": true },
"next": { "type": "string", "nullable": true },
"previous": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"information": { "type": "string", "nullable": true },
"ignoredPath": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ops": { "type": "string", "nullable": true },
"path": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "nullable": true },
"message": { "type": "string", "nullable": true }
},
"additionalProperties": false
},
"nullable": true
},
"completed": { "type": "boolean", "readOnly": true },
"traceId": { "type": "string", "nullable": true },
"usageLimits": {
"type": "object",
"properties": {
"clientId": { "type": "integer", "format": "int64" },
"lastRequestTimestamp": {
"type": "string",
"format": "date-time"
},
"limits": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"runs": {
"type": "object",
"properties": {
"minute": { "type": "integer", "format": "int32" },
"hour": { "type": "integer", "format": "int32" },
"day": { "type": "integer", "format": "int32" }
},
"additionalProperties": false
},
"exceededMessage": {
"type": "string",
"nullable": true,
"readOnly": true
},
"divisionUsageStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"divisionId": {
"type": "integer",
"format": "int32"
},
"consumerStatistics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"consumerId": {
"type": "integer",
"format": "int32"
},
"requestCount": {
"type": "object",
"properties": {
"minute": {
"type": "integer",
"format": "int32"
},
"hour": {
"type": "integer",
"format": "int32"
},
"day": {
"type": "integer",
"format": "int32"
}
},
"additionalProperties": false
},
"maxPerDay": {
"type": "integer",
"format": "int32",
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
},
"nullable": true
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}