Skip to content
Start here

List tested webpages

client.speed.pages.list(PageListParams { zone_id } params, RequestOptionsoptions?): SinglePage<PageListResponse { region, scheduleFrequency, tests, url } >
GET/zones/{zone_id}/speed_api/pages

Lists all webpages which have been tested.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
Zone Settings WriteZone Settings Read
ParametersExpand Collapse
params: PageListParams { zone_id }
zone_id: string

Identifier.

maxLength32
ReturnsExpand Collapse
PageListResponse { region, scheduleFrequency, tests, url }
region?: LabeledRegion { label, value }

A test region with a label.

label?: string
value?: "asia-east1" | "asia-northeast1" | "asia-northeast2" | 18 more

A test region.

One of the following:
"asia-east1"
"asia-northeast1"
"asia-northeast2"
"asia-south1"
"asia-southeast1"
"australia-southeast1"
"europe-north1"
"europe-southwest1"
"europe-west1"
"europe-west2"
"europe-west3"
"europe-west4"
"europe-west8"
"europe-west9"
"me-west1"
"southamerica-east1"
"us-central1"
"us-east1"
"us-east4"
"us-south1"
"us-west1"
scheduleFrequency?: "DAILY" | "WEEKLY"

The frequency of the test.

One of the following:
"DAILY"
"WEEKLY"
tests?: Array<Test { id, date, desktopReport, 4 more } >
id?: string

UUID.

maxLength36
date?: string
formatdate-time
desktopReport?: LighthouseReport { cls, deviceType, error, 9 more }

The Lighthouse report.

cls?: number

Cumulative Layout Shift.

deviceType?: "DESKTOP" | "MOBILE"

The type of device.

One of the following:
"DESKTOP"
"MOBILE"
error?: Error { code, detail, finalDisplayedUrl }
code?: "NOT_REACHABLE" | "DNS_FAILURE" | "NOT_HTML" | 2 more

The error code of the Lighthouse result.

One of the following:
"NOT_REACHABLE"
"DNS_FAILURE"
"NOT_HTML"
"LIGHTHOUSE_TIMEOUT"
"UNKNOWN"
detail?: string

Detailed error message.

finalDisplayedUrl?: string

The final URL displayed to the user.

fcp?: number

First Contentful Paint.

jsonReportUrl?: string

The URL to the full Lighthouse JSON report.

lcp?: number

Largest Contentful Paint.

performanceScore?: number

The Lighthouse performance score.

si?: number

Speed Index.

state?: "RUNNING" | "COMPLETE" | "FAILED"

The state of the Lighthouse report.

One of the following:
"RUNNING"
"COMPLETE"
"FAILED"
tbt?: number

Total Blocking Time.

ttfb?: number

Time To First Byte.

tti?: number

Time To Interactive.

mobileReport?: LighthouseReport { cls, deviceType, error, 9 more }

The Lighthouse report.

cls?: number

Cumulative Layout Shift.

deviceType?: "DESKTOP" | "MOBILE"

The type of device.

One of the following:
"DESKTOP"
"MOBILE"
error?: Error { code, detail, finalDisplayedUrl }
code?: "NOT_REACHABLE" | "DNS_FAILURE" | "NOT_HTML" | 2 more

The error code of the Lighthouse result.

One of the following:
"NOT_REACHABLE"
"DNS_FAILURE"
"NOT_HTML"
"LIGHTHOUSE_TIMEOUT"
"UNKNOWN"
detail?: string

Detailed error message.

finalDisplayedUrl?: string

The final URL displayed to the user.

fcp?: number

First Contentful Paint.

jsonReportUrl?: string

The URL to the full Lighthouse JSON report.

lcp?: number

Largest Contentful Paint.

performanceScore?: number

The Lighthouse performance score.

si?: number

Speed Index.

state?: "RUNNING" | "COMPLETE" | "FAILED"

The state of the Lighthouse report.

One of the following:
"RUNNING"
"COMPLETE"
"FAILED"
tbt?: number

Total Blocking Time.

ttfb?: number

Time To First Byte.

tti?: number

Time To Interactive.

region?: LabeledRegion { label, value }

A test region with a label.

label?: string
value?: "asia-east1" | "asia-northeast1" | "asia-northeast2" | 18 more

A test region.

One of the following:
"asia-east1"
"asia-northeast1"
"asia-northeast2"
"asia-south1"
"asia-southeast1"
"australia-southeast1"
"europe-north1"
"europe-southwest1"
"europe-west1"
"europe-west2"
"europe-west3"
"europe-west4"
"europe-west8"
"europe-west9"
"me-west1"
"southamerica-east1"
"us-central1"
"us-east1"
"us-east4"
"us-south1"
"us-west1"
scheduleFrequency?: "DAILY" | "WEEKLY"

The frequency of the test.

One of the following:
"DAILY"
"WEEKLY"
url?: string

A URL.

url?: string

A URL.

List tested webpages

import Cloudflare from 'cloudflare';

const client = new Cloudflare({
  apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted
});

// Automatically fetches more pages as needed.
for await (const pageListResponse of client.speed.pages.list({
  zone_id: '023e105f4ecef8ad9ca31a8372d0c353',
})) {
  console.log(pageListResponse.region);
}
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": [
    {
      "region": {
        "label": "Iowa, USA",
        "value": "us-central1"
      },
      "scheduleFrequency": "DAILY",
      "tests": [
        {
          "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
          "date": "2014-01-01T05:20:00.12345Z",
          "desktopReport": {
            "cls": 100,
            "deviceType": "DESKTOP",
            "error": {
              "code": "NOT_REACHABLE",
              "detail": "Details: net::ERR_CONNECTION_CLOSED",
              "finalDisplayedUrl": "example.com"
            },
            "fcp": 100,
            "jsonReportUrl": "jsonReportUrl",
            "lcp": 100,
            "performanceScore": 90,
            "si": 100,
            "state": "COMPLETE",
            "tbt": 100,
            "ttfb": 100,
            "tti": 100
          },
          "mobileReport": {
            "cls": 100,
            "deviceType": "DESKTOP",
            "error": {
              "code": "NOT_REACHABLE",
              "detail": "Details: net::ERR_CONNECTION_CLOSED",
              "finalDisplayedUrl": "example.com"
            },
            "fcp": 100,
            "jsonReportUrl": "jsonReportUrl",
            "lcp": 100,
            "performanceScore": 90,
            "si": 100,
            "state": "COMPLETE",
            "tbt": 100,
            "ttfb": 100,
            "tti": 100
          },
          "region": {
            "label": "Iowa, USA",
            "value": "us-central1"
          },
          "scheduleFrequency": "DAILY",
          "url": "example.com"
        }
      ],
      "url": "example.com"
    }
  ]
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": [
    {
      "region": {
        "label": "Iowa, USA",
        "value": "us-central1"
      },
      "scheduleFrequency": "DAILY",
      "tests": [
        {
          "id": "f174e90a-fafe-4643-bbbc-4a0ed4fc8415",
          "date": "2014-01-01T05:20:00.12345Z",
          "desktopReport": {
            "cls": 100,
            "deviceType": "DESKTOP",
            "error": {
              "code": "NOT_REACHABLE",
              "detail": "Details: net::ERR_CONNECTION_CLOSED",
              "finalDisplayedUrl": "example.com"
            },
            "fcp": 100,
            "jsonReportUrl": "jsonReportUrl",
            "lcp": 100,
            "performanceScore": 90,
            "si": 100,
            "state": "COMPLETE",
            "tbt": 100,
            "ttfb": 100,
            "tti": 100
          },
          "mobileReport": {
            "cls": 100,
            "deviceType": "DESKTOP",
            "error": {
              "code": "NOT_REACHABLE",
              "detail": "Details: net::ERR_CONNECTION_CLOSED",
              "finalDisplayedUrl": "example.com"
            },
            "fcp": 100,
            "jsonReportUrl": "jsonReportUrl",
            "lcp": 100,
            "performanceScore": 90,
            "si": 100,
            "state": "COMPLETE",
            "tbt": 100,
            "ttfb": 100,
            "tti": 100
          },
          "region": {
            "label": "Iowa, USA",
            "value": "us-central1"
          },
          "scheduleFrequency": "DAILY",
          "url": "example.com"
        }
      ],
      "url": "example.com"
    }
  ]
}