Skip to content
Start here

Get email routing time series grouped by dimension

client.Radar.Email.Routing.TimeseriesGroupsV2(ctx, dimension, query) (*EmailRoutingTimeseriesGroupsV2Response, error)
GET/radar/email/routing/timeseries_groups/{dimension}

Retrieves the distribution of email routing metrics grouped by 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
ParametersExpand Collapse

Specifies the attribute by which to group the results.

One of the following:
const EmailRoutingTimeseriesGroupsV2ParamsDimensionIPVersion EmailRoutingTimeseriesGroupsV2ParamsDimension = "IP_VERSION"
const EmailRoutingTimeseriesGroupsV2ParamsDimensionEncrypted EmailRoutingTimeseriesGroupsV2ParamsDimension = "ENCRYPTED"
const EmailRoutingTimeseriesGroupsV2ParamsDimensionARC EmailRoutingTimeseriesGroupsV2ParamsDimension = "ARC"
const EmailRoutingTimeseriesGroupsV2ParamsDimensionDKIM EmailRoutingTimeseriesGroupsV2ParamsDimension = "DKIM"
const EmailRoutingTimeseriesGroupsV2ParamsDimensionDMARC EmailRoutingTimeseriesGroupsV2ParamsDimension = "DMARC"
const EmailRoutingTimeseriesGroupsV2ParamsDimensionSPF EmailRoutingTimeseriesGroupsV2ParamsDimension = "SPF"
query EmailRoutingTimeseriesGroupsV2Params
AggInterval param.Field[EmailRoutingTimeseriesGroupsV2ParamsAggInterval]Optional

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

const EmailRoutingTimeseriesGroupsV2ParamsAggInterval15m EmailRoutingTimeseriesGroupsV2ParamsAggInterval = "15m"
const EmailRoutingTimeseriesGroupsV2ParamsAggInterval1h EmailRoutingTimeseriesGroupsV2ParamsAggInterval = "1h"
const EmailRoutingTimeseriesGroupsV2ParamsAggInterval1d EmailRoutingTimeseriesGroupsV2ParamsAggInterval = "1d"
const EmailRoutingTimeseriesGroupsV2ParamsAggInterval1w EmailRoutingTimeseriesGroupsV2ParamsAggInterval = "1w"
ARC param.Field[[]EmailRoutingTimeseriesGroupsV2ParamsARC]Optional

Filters results by ARC (Authenticated Received Chain) validation.

const EmailRoutingTimeseriesGroupsV2ParamsARCPass EmailRoutingTimeseriesGroupsV2ParamsARC = "PASS"
const EmailRoutingTimeseriesGroupsV2ParamsARCNone EmailRoutingTimeseriesGroupsV2ParamsARC = "NONE"
const EmailRoutingTimeseriesGroupsV2ParamsARCFail EmailRoutingTimeseriesGroupsV2ParamsARC = "FAIL"
DateEnd param.Field[[]Time]Optional

End of the date range (inclusive).

DateRange param.Field[[]string]Optional

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 param.Field[[]Time]Optional

Start of the date range.

DKIM param.Field[[]EmailRoutingTimeseriesGroupsV2ParamsDKIM]Optional

Filters results by DKIM (DomainKeys Identified Mail) validation status.

const EmailRoutingTimeseriesGroupsV2ParamsDKIMPass EmailRoutingTimeseriesGroupsV2ParamsDKIM = "PASS"
const EmailRoutingTimeseriesGroupsV2ParamsDKIMNone EmailRoutingTimeseriesGroupsV2ParamsDKIM = "NONE"
const EmailRoutingTimeseriesGroupsV2ParamsDKIMFail EmailRoutingTimeseriesGroupsV2ParamsDKIM = "FAIL"
DMARC param.Field[[]EmailRoutingTimeseriesGroupsV2ParamsDMARC]Optional

Filters results by DMARC (Domain-based Message Authentication, Reporting and Conformance) validation status.

const EmailRoutingTimeseriesGroupsV2ParamsDMARCPass EmailRoutingTimeseriesGroupsV2ParamsDMARC = "PASS"
const EmailRoutingTimeseriesGroupsV2ParamsDMARCNone EmailRoutingTimeseriesGroupsV2ParamsDMARC = "NONE"
const EmailRoutingTimeseriesGroupsV2ParamsDMARCFail EmailRoutingTimeseriesGroupsV2ParamsDMARC = "FAIL"
Encrypted param.Field[[]EmailRoutingTimeseriesGroupsV2ParamsEncrypted]Optional

Filters results by encryption status (encrypted vs. not-encrypted).

const EmailRoutingTimeseriesGroupsV2ParamsEncryptedEncrypted EmailRoutingTimeseriesGroupsV2ParamsEncrypted = "ENCRYPTED"
const EmailRoutingTimeseriesGroupsV2ParamsEncryptedNotEncrypted EmailRoutingTimeseriesGroupsV2ParamsEncrypted = "NOT_ENCRYPTED"
Format param.Field[EmailRoutingTimeseriesGroupsV2ParamsFormat]Optional

Format in which results will be returned.

const EmailRoutingTimeseriesGroupsV2ParamsFormatJson EmailRoutingTimeseriesGroupsV2ParamsFormat = "JSON"
const EmailRoutingTimeseriesGroupsV2ParamsFormatCsv EmailRoutingTimeseriesGroupsV2ParamsFormat = "CSV"
IPVersion param.Field[[]EmailRoutingTimeseriesGroupsV2ParamsIPVersion]Optional

Filters results by IP version (Ipv4 vs. IPv6).

const EmailRoutingTimeseriesGroupsV2ParamsIPVersionIPv4 EmailRoutingTimeseriesGroupsV2ParamsIPVersion = "IPv4"
const EmailRoutingTimeseriesGroupsV2ParamsIPVersionIPv6 EmailRoutingTimeseriesGroupsV2ParamsIPVersion = "IPv6"
LimitPerGroup param.Field[int64]Optional

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.

Name param.Field[[]string]Optional

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

SPF param.Field[[]EmailRoutingTimeseriesGroupsV2ParamsSPF]Optional

Filters results by SPF (Sender Policy Framework) validation status.

const EmailRoutingTimeseriesGroupsV2ParamsSPFPass EmailRoutingTimeseriesGroupsV2ParamsSPF = "PASS"
const EmailRoutingTimeseriesGroupsV2ParamsSPFNone EmailRoutingTimeseriesGroupsV2ParamsSPF = "NONE"
const EmailRoutingTimeseriesGroupsV2ParamsSPFFail EmailRoutingTimeseriesGroupsV2ParamsSPF = "FAIL"
ReturnsExpand Collapse
type EmailRoutingTimeseriesGroupsV2Response struct{…}
Meta EmailRoutingTimeseriesGroupsV2ResponseMeta

Metadata for the results.

AggInterval EmailRoutingTimeseriesGroupsV2ResponseMetaAggInterval

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

One of the following:
const EmailRoutingTimeseriesGroupsV2ResponseMetaAggIntervalFifteenMinutes EmailRoutingTimeseriesGroupsV2ResponseMetaAggInterval = "FIFTEEN_MINUTES"
const EmailRoutingTimeseriesGroupsV2ResponseMetaAggIntervalOneHour EmailRoutingTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_HOUR"
const EmailRoutingTimeseriesGroupsV2ResponseMetaAggIntervalOneDay EmailRoutingTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_DAY"
const EmailRoutingTimeseriesGroupsV2ResponseMetaAggIntervalOneWeek EmailRoutingTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_WEEK"
const EmailRoutingTimeseriesGroupsV2ResponseMetaAggIntervalOneMonth EmailRoutingTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_MONTH"
ConfidenceInfo EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfo
Annotations []EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotation
DataSource EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource

Data source for annotations.

One of the following:
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceAll EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceAIBots EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceBGP EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceBots EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceCT EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "CT"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNS EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDos EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceFw EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "FW"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceFwPg EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTP EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceIQI EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceNet EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "NET"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceSpeed EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"
Description string
EndDate Time
formatdate-time
EventType EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType

Event type for annotations.

One of the following:
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeEvent EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeGeneral EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeOutage EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypePipeline EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"
const EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly EmailRoutingTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"
IsInstantaneous bool

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

LinkedURL string
formaturi
StartDate Time
formatdate-time
Tags []stringOptional
Level int64

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

DateRange []EmailRoutingTimeseriesGroupsV2ResponseMetaDateRange
EndTime Time

Adjusted end of date range.

formatdate-time
StartTime Time

Adjusted start of date range.

formatdate-time
LastUpdated Time

Timestamp of the last dataset update.

formatdate-time
Normalization EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization

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

One of the following:
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationPercentage EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "PERCENTAGE"
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationMin0Max EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "MIN0_MAX"
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationMinMax EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "MIN_MAX"
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationRawValues EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "RAW_VALUES"
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationPercentageChange EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "PERCENTAGE_CHANGE"
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationRollingAverage EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "ROLLING_AVERAGE"
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationOverlappedPercentage EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"
const EmailRoutingTimeseriesGroupsV2ResponseMetaNormalizationRatio EmailRoutingTimeseriesGroupsV2ResponseMetaNormalization = "RATIO"
Units []EmailRoutingTimeseriesGroupsV2ResponseMetaUnit

Measurement units for the results.

Name string
Value string
Serie0 EmailRoutingTimeseriesGroupsV2ResponseSerie0
Timestamps []Time

Get email routing time series grouped by dimension

package main

import (
  "context"
  "fmt"

  "github.com/stainless-sdks/cloudflare-go"
  "github.com/stainless-sdks/cloudflare-go/option"
  "github.com/stainless-sdks/cloudflare-go/radar"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  response, err := client.Radar.Email.Routing.TimeseriesGroupsV2(
    context.TODO(),
    radar.EmailRoutingTimeseriesGroupsV2ParamsDimensionIPVersion,
    radar.EmailRoutingTimeseriesGroupsV2Params{

    },
  )
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.Meta)
}
{
  "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",
            "tags": [
              "BOT_CLASS"
            ]
          }
        ],
        "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",
            "tags": [
              "BOT_CLASS"
            ]
          }
        ],
        "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
}