Skip to content
Start here

List Page Shield connections

page_shield.connections.list(ConnectionListParams**kwargs) -> SyncSinglePage[Connection]
GET/zones/{zone_id}/page_shield/connections

Lists all connections detected by Page Shield.

Security

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)
Page ShieldDomain Page Shield ReadDomain Page ShieldPage Shield ReadZone Settings WriteZone Settings Read
ParametersExpand Collapse
zone_id: str

Identifier

maxLength32
direction: Optional[Literal["asc", "desc"]]

The direction used to sort returned connections.

One of the following:
"asc"
"desc"
exclude_cdn_cgi: Optional[bool]

When true, excludes connections seen in a /cdn-cgi path from the returned connections. The default value is true.

exclude_urls: Optional[str]

Excludes connections whose URL contains one of the URL-encoded URLs separated by commas.

export: Optional[Literal["csv"]]

Export the list of connections as a file, limited to 50000 entries.

hosts: Optional[str]

Includes connections that match one or more URL-encoded hostnames separated by commas.

Wildcards are supported at the start and end of each hostname to support starts with, ends with and contains. If no wildcards are used, results will be filtered by exact match

order_by: Optional[Literal["first_seen_at", "last_seen_at"]]

The field used to sort returned connections.

One of the following:
"first_seen_at"
"last_seen_at"
page: Optional[str]

The current page number of the paginated results.

We additionally support a special value "all". When "all" is used, the API will return all the connections with the applied filters in a single page. This feature is best-effort and it may only work for zones with a low number of connections

page_url: Optional[str]

Includes connections that match one or more page URLs (separated by commas) where they were last seen

Wildcards are supported at the start and end of each page URL to support starts with, ends with and contains. If no wildcards are used, results will be filtered by exact match

per_page: Optional[float]

The number of results per page.

maximum100
minimum1
prioritize_malicious: Optional[bool]

When true, malicious connections appear first in the returned connections.

status: Optional[str]

Filters the returned connections using a comma-separated list of connection statuses. Accepted values: active, infrequent, and inactive. The default value is active.

urls: Optional[str]

Includes connections whose URL contain one or more URL-encoded URLs separated by commas.

ReturnsExpand Collapse
class Connection:
id: str

Identifier

maxLength32
added_at: datetime
formatdate-time
first_seen_at: datetime
formatdate-time
host: str
last_seen_at: datetime
formatdate-time
url: str
url_contains_cdn_cgi_path: bool
domain_reported_malicious: Optional[bool]
first_page_url: Optional[str]
malicious_domain_categories: Optional[List[str]]
malicious_url_categories: Optional[List[str]]
page_urls: Optional[List[str]]
url_reported_malicious: Optional[bool]

List Page Shield connections

import os
from cloudflare import Cloudflare

client = Cloudflare(
    api_email=os.environ.get("CLOUDFLARE_EMAIL"),  # This is the default and can be omitted
    api_key=os.environ.get("CLOUDFLARE_API_KEY"),  # This is the default and can be omitted
)
page = client.page_shield.connections.list(
    zone_id="023e105f4ecef8ad9ca31a8372d0c353",
)
page = page.result[0]
print(page.id)
{
  "result_info": {
    "count": 1,
    "page": 1,
    "per_page": 20,
    "total_count": 2000,
    "total_pages": 100
  },
  "success": true,
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": [
    {
      "id": "023e105f4ecef8ad9ca31a8372d0c353",
      "added_at": "2021-08-18T10:51:10.09615Z",
      "first_seen_at": "2021-08-18T10:51:08Z",
      "host": "blog.cloudflare.com",
      "last_seen_at": "2021-09-02T09:57:54Z",
      "url": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js",
      "url_contains_cdn_cgi_path": false,
      "domain_reported_malicious": false,
      "first_page_url": "blog.cloudflare.com/page",
      "malicious_domain_categories": [
        "Malware"
      ],
      "malicious_url_categories": [
        "Malware"
      ],
      "page_urls": [
        "blog.cloudflare.com/page1",
        "blog.cloudflare.com/page2"
      ],
      "url_reported_malicious": false
    }
  ]
}
Returns Examples
{
  "result_info": {
    "count": 1,
    "page": 1,
    "per_page": 20,
    "total_count": 2000,
    "total_pages": 100
  },
  "success": true,
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "result": [
    {
      "id": "023e105f4ecef8ad9ca31a8372d0c353",
      "added_at": "2021-08-18T10:51:10.09615Z",
      "first_seen_at": "2021-08-18T10:51:08Z",
      "host": "blog.cloudflare.com",
      "last_seen_at": "2021-09-02T09:57:54Z",
      "url": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js",
      "url_contains_cdn_cgi_path": false,
      "domain_reported_malicious": false,
      "first_page_url": "blog.cloudflare.com/page",
      "malicious_domain_categories": [
        "Malware"
      ],
      "malicious_url_categories": [
        "Malware"
      ],
      "page_urls": [
        "blog.cloudflare.com/page1",
        "blog.cloudflare.com/page2"
      ],
      "url_reported_malicious": false
    }
  ]
}