Skip to content
Start here

Get time series of certificate distribution by dimension

GET/radar/ct/timeseries_groups/{dimension}

Retrieves the distribution of certificates grouped by the specified dimension over time.

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)
User Details WriteUser Details Read
Path ParametersExpand Collapse
dimension: "CA" or "CA_OWNER" or "DURATION" or 11 more

Specifies the certificate attribute by which to group the results.

One of the following:
"CA"
"CA_OWNER"
"DURATION"
"ENTRY_TYPE"
"EXPIRATION_STATUS"
"HAS_IPS"
"HAS_WILDCARDS"
"LOG"
"LOG_API"
"LOG_OPERATOR"
"PUBLIC_KEY_ALGORITHM"
"SIGNATURE_ALGORITHM"
"TLD"
"VALIDATION_LEVEL"
Query ParametersExpand Collapse
aggInterval: optional "15m" or "1h" or "1d" or "1w"

Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to Aggregation intervals.

One of the following:
"15m"
"1h"
"1d"
"1w"
ca: optional array of string

Filters results by certificate authority.

caOwner: optional array of string

Filters results by certificate authority owner.

dateEnd: optional array of string

End of the date range (inclusive).

dateRange: optional array of string

Filters results by date range. For example, use 7d and 7dcontrol to compare this week with the previous week. Use this parameter or set specific start and end dates (dateStart and dateEnd parameters).

dateStart: optional array of string

Start of the date range.

duration: optional array of "LTE_3D" or "GT_3D_LTE_7D" or "GT_7D_LTE_10D" or 4 more

Filters results by certificate duration.

One of the following:
"LTE_3D"
"GT_3D_LTE_7D"
"GT_7D_LTE_10D"
"GT_10D_LTE_47D"
"GT_47D_LTE_100D"
"GT_100D_LTE_200D"
"GT_200D"
entryType: optional array of "PRECERTIFICATE" or "CERTIFICATE"

Filters results by entry type (certificate vs. pre-certificate).

One of the following:
"PRECERTIFICATE"
"CERTIFICATE"
expirationStatus: optional array of "EXPIRED" or "VALID"

Filters results by expiration status (expired vs. valid).

One of the following:
"EXPIRED"
"VALID"
format: optional "JSON" or "CSV"

Format in which results will be returned.

One of the following:
"JSON"
"CSV"
hasIps: optional array of boolean

Filters results based on whether the certificates are bound to specific IP addresses.

hasWildcards: optional array of boolean

Filters results based on whether the certificates contain wildcard domains.

limitPerGroup: optional number

Limits the number of objects per group to the top items within the specified time range. When item count exceeds the limit, extra items appear grouped under an "other" category.

log: optional array of string

Filters results by certificate log.

logApi: optional array of "RFC6962" or "STATIC"

Filters results by certificate log API (RFC6962 vs. static).

One of the following:
"RFC6962"
"STATIC"
logOperator: optional array of string

Filters results by certificate log operator.

name: optional array of string

Array of names used to label the series in the response.

normalization: optional "RAW_VALUES" or "PERCENTAGE"

Normalization method applied to the results. Refer to Normalization methods.

One of the following:
"RAW_VALUES"
"PERCENTAGE"
publicKeyAlgorithm: optional array of "DSA" or "ECDSA" or "RSA"

Filters results by public key algorithm.

One of the following:
"DSA"
"ECDSA"
"RSA"
signatureAlgorithm: optional array of "DSA_SHA_1" or "DSA_SHA_256" or "ECDSA_SHA_1" or 12 more

Filters results by signature algorithm.

One of the following:
"DSA_SHA_1"
"DSA_SHA_256"
"ECDSA_SHA_1"
"ECDSA_SHA_256"
"ECDSA_SHA_384"
"ECDSA_SHA_512"
"PSS_SHA_256"
"PSS_SHA_384"
"PSS_SHA_512"
"RSA_MD2"
"RSA_MD5"
"RSA_SHA_1"
"RSA_SHA_256"
"RSA_SHA_384"
"RSA_SHA_512"
tld: optional array of string

Filters results by top-level domain.

uniqueEntries: optional array of "true" or "false"

Specifies whether to filter out duplicate certificates and pre-certificates. Set to true for unique entries only.

One of the following:
"true"
"false"
validationLevel: optional array of "DOMAIN" or "ORGANIZATION" or "EXTENDED"

Filters results by validation level.

One of the following:
"DOMAIN"
"ORGANIZATION"
"EXTENDED"
ReturnsExpand Collapse
result: object { meta, serie_0 }
meta: object { aggInterval, confidenceInfo, dateRange, 3 more }

Metadata for the results.

aggInterval: "FIFTEEN_MINUTES" or "ONE_HOUR" or "ONE_DAY" or 2 more

Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to Aggregation intervals.

One of the following:
"FIFTEEN_MINUTES"
"ONE_HOUR"
"ONE_DAY"
"ONE_WEEK"
"ONE_MONTH"
confidenceInfo: object { annotations, level }
annotations: array of object { dataSource, description, endDate, 4 more }
dataSource: "ALL" or "AI_BOTS" or "AI_GATEWAY" or 22 more

Data source for annotations.

One of the following:
"ALL"
"AI_BOTS"
"AI_GATEWAY"
"BGP"
"BOTS"
"CONNECTION_ANOMALY"
"CT"
"DNS"
"DNS_MAGNITUDE"
"DNS_AS112"
"DOS"
"EMAIL_ROUTING"
"EMAIL_SECURITY"
"FW"
"FW_PG"
"HTTP"
"HTTP_CONTROL"
"HTTP_CRAWLER_REFERER"
"HTTP_ORIGINS"
"IQI"
"LEAKED_CREDENTIALS"
"NET"
"ROBOTS_TXT"
"SPEED"
"WORKERS_AI"
description: string
endDate: string
formatdate-time
eventType: "EVENT" or "GENERAL" or "OUTAGE" or 3 more

Event type for annotations.

One of the following:
"EVENT"
"GENERAL"
"OUTAGE"
"PARTIAL_PROJECTION"
"PIPELINE"
"TRAFFIC_ANOMALY"
isInstantaneous: boolean

Whether event is a single point in time or a time range.

linkedUrl: string
formaturi
startDate: string
formatdate-time
level: number

Provides an indication of how much confidence Cloudflare has in the data.

dateRange: array of object { endTime, startTime }
endTime: string

Adjusted end of date range.

formatdate-time
startTime: string

Adjusted start of date range.

formatdate-time
lastUpdated: string

Timestamp of the last dataset update.

formatdate-time
normalization: "PERCENTAGE" or "MIN0_MAX" or "MIN_MAX" or 5 more

Normalization method applied to the results. Refer to Normalization methods.

One of the following:
"PERCENTAGE"
"MIN0_MAX"
"MIN_MAX"
"RAW_VALUES"
"PERCENTAGE_CHANGE"
"ROLLING_AVERAGE"
"OVERLAPPED_PERCENTAGE"
"RATIO"
units: array of object { name, value }

Measurement units for the results.

name: string
value: string
serie_0: object { timestamps } or object { rfc6962, static } or object { gt_121d, gt_16d_lte_31d, gt_31d_lte_91d, 3 more } or 5 more
One of the following:
UnnamedSchemaRef7826220e105d84352ba1108d9ed88e55 = object { timestamps }
timestamps: array of string
object { rfc6962, static }
rfc6962: array of string
static: array of string
object { gt_121d, gt_16d_lte_31d, gt_31d_lte_91d, 3 more }
gt_121d: array of string
gt_16d_lte_31d: array of string
gt_31d_lte_91d: array of string
gt_3d_lte_16d: array of string
gt_91d_lte_121d: array of string
lte_3d: array of string
object { CERTIFICATE, PRECERTIFICATE }
CERTIFICATE: array of string
PRECERTIFICATE: array of string
object { EXPIRED, VALID }
EXPIRED: array of string
VALID: array of string
object { NEGATIVE, POSITIVE }
NEGATIVE: array of string
POSITIVE: array of string
object { DSA, ECDSA, RSA }
DSA: array of string
ECDSA: array of string
RSA: array of string
object { domain, extended, organization, unknown }
domain: array of string
extended: array of string
organization: array of string
unknown: array of string
success: boolean

Get time series of certificate distribution by dimension

curl https://api.cloudflare.com/client/v4/radar/ct/timeseries_groups/$DIMENSION \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
  "result": {
    "meta": {
      "aggInterval": "FIFTEEN_MINUTES",
      "confidenceInfo": {
        "annotations": [
          {
            "dataSource": "ALL",
            "description": "Cable cut in Tonga",
            "endDate": "2019-12-27T18:11:19.117Z",
            "eventType": "EVENT",
            "isInstantaneous": true,
            "linkedUrl": "https://example.com",
            "startDate": "2019-12-27T18:11:19.117Z"
          }
        ],
        "level": 0
      },
      "dateRange": [
        {
          "endTime": "2022-09-17T10:22:57.555Z",
          "startTime": "2022-09-16T10:22:57.555Z"
        }
      ],
      "lastUpdated": "2019-12-27T18:11:19.117Z",
      "normalization": "PERCENTAGE",
      "units": [
        {
          "name": "*",
          "value": "requests"
        }
      ]
    },
    "serie_0": {
      "timestamps": [
        "2023-08-08T10:15:00Z"
      ]
    }
  },
  "success": true
}
Returns Examples
{
  "result": {
    "meta": {
      "aggInterval": "FIFTEEN_MINUTES",
      "confidenceInfo": {
        "annotations": [
          {
            "dataSource": "ALL",
            "description": "Cable cut in Tonga",
            "endDate": "2019-12-27T18:11:19.117Z",
            "eventType": "EVENT",
            "isInstantaneous": true,
            "linkedUrl": "https://example.com",
            "startDate": "2019-12-27T18:11:19.117Z"
          }
        ],
        "level": 0
      },
      "dateRange": [
        {
          "endTime": "2022-09-17T10:22:57.555Z",
          "startTime": "2022-09-16T10:22:57.555Z"
        }
      ],
      "lastUpdated": "2019-12-27T18:11:19.117Z",
      "normalization": "PERCENTAGE",
      "units": [
        {
          "name": "*",
          "value": "requests"
        }
      ]
    },
    "serie_0": {
      "timestamps": [
        "2023-08-08T10:15:00Z"
      ]
    }
  },
  "success": true
}