# HTTP ## Get HTTP requests summary by dimension `client.Radar.HTTP.SummaryV2(ctx, dimension, query) (*HTTPSummaryV2Response, error)` **get** `/radar/http/summary/{dimension}` Retrieves the distribution of HTTP requests by the specified dimension. ### Parameters - `dimension HTTPSummaryV2ParamsDimension` Specifies the HTTP attribute by which to group the results. - `const HTTPSummaryV2ParamsDimensionAdm1 HTTPSummaryV2ParamsDimension = "ADM1"` - `const HTTPSummaryV2ParamsDimensionAs HTTPSummaryV2ParamsDimension = "AS"` - `const HTTPSummaryV2ParamsDimensionBotClass HTTPSummaryV2ParamsDimension = "BOT_CLASS"` - `const HTTPSummaryV2ParamsDimensionBrowser HTTPSummaryV2ParamsDimension = "BROWSER"` - `const HTTPSummaryV2ParamsDimensionBrowserFamily HTTPSummaryV2ParamsDimension = "BROWSER_FAMILY"` - `const HTTPSummaryV2ParamsDimensionDeviceType HTTPSummaryV2ParamsDimension = "DEVICE_TYPE"` - `const HTTPSummaryV2ParamsDimensionHTTPProtocol HTTPSummaryV2ParamsDimension = "HTTP_PROTOCOL"` - `const HTTPSummaryV2ParamsDimensionHTTPVersion HTTPSummaryV2ParamsDimension = "HTTP_VERSION"` - `const HTTPSummaryV2ParamsDimensionIPVersion HTTPSummaryV2ParamsDimension = "IP_VERSION"` - `const HTTPSummaryV2ParamsDimensionLocation HTTPSummaryV2ParamsDimension = "LOCATION"` - `const HTTPSummaryV2ParamsDimensionOS HTTPSummaryV2ParamsDimension = "OS"` - `const HTTPSummaryV2ParamsDimensionPostQuantum HTTPSummaryV2ParamsDimension = "POST_QUANTUM"` - `const HTTPSummaryV2ParamsDimensionTLSVersion HTTPSummaryV2ParamsDimension = "TLS_VERSION"` - `query HTTPSummaryV2Params` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryV2ParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryV2ParamsBotClassLikelyAutomated HTTPSummaryV2ParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryV2ParamsBotClassLikelyHuman HTTPSummaryV2ParamsBotClass = "LIKELY_HUMAN"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryV2ParamsDeviceType]` Filters results by device type. - `const HTTPSummaryV2ParamsDeviceTypeDesktop HTTPSummaryV2ParamsDeviceType = "DESKTOP"` - `const HTTPSummaryV2ParamsDeviceTypeMobile HTTPSummaryV2ParamsDeviceType = "MOBILE"` - `const HTTPSummaryV2ParamsDeviceTypeOther HTTPSummaryV2ParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryV2ParamsFormat]` Format in which results will be returned. - `const HTTPSummaryV2ParamsFormatJson HTTPSummaryV2ParamsFormat = "JSON"` - `const HTTPSummaryV2ParamsFormatCsv HTTPSummaryV2ParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryV2ParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryV2ParamsHTTPProtocolHTTP HTTPSummaryV2ParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryV2ParamsHTTPProtocolHTTPS HTTPSummaryV2ParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPSummaryV2ParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryV2ParamsHTTPVersionHttPv1 HTTPSummaryV2ParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryV2ParamsHTTPVersionHttPv2 HTTPSummaryV2ParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryV2ParamsHTTPVersionHttPv3 HTTPSummaryV2ParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPSummaryV2ParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryV2ParamsIPVersionIPv4 HTTPSummaryV2ParamsIPVersion = "IPv4"` - `const HTTPSummaryV2ParamsIPVersionIPv6 HTTPSummaryV2ParamsIPVersion = "IPv6"` - `LimitPerGroup param.Field[int64]` 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. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryV2ParamsOS]` Filters results by operating system. - `const HTTPSummaryV2ParamsOSWindows HTTPSummaryV2ParamsOS = "WINDOWS"` - `const HTTPSummaryV2ParamsOSMacosx HTTPSummaryV2ParamsOS = "MACOSX"` - `const HTTPSummaryV2ParamsOSIos HTTPSummaryV2ParamsOS = "IOS"` - `const HTTPSummaryV2ParamsOSAndroid HTTPSummaryV2ParamsOS = "ANDROID"` - `const HTTPSummaryV2ParamsOSChromeos HTTPSummaryV2ParamsOS = "CHROMEOS"` - `const HTTPSummaryV2ParamsOSLinux HTTPSummaryV2ParamsOS = "LINUX"` - `const HTTPSummaryV2ParamsOSSmartTv HTTPSummaryV2ParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPSummaryV2ParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryV2ParamsTLSVersionTlSv1_0 HTTPSummaryV2ParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryV2ParamsTLSVersionTlSv1_1 HTTPSummaryV2ParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryV2ParamsTLSVersionTlSv1_2 HTTPSummaryV2ParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryV2ParamsTLSVersionTlSv1_3 HTTPSummaryV2ParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryV2ParamsTLSVersionTlSvQuic HTTPSummaryV2ParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryV2Response struct{…}` - `Meta HTTPSummaryV2ResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryV2ResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryV2ResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryV2ResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryV2ResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryV2ResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryV2ResponseMetaNormalizationPercentage HTTPSummaryV2ResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryV2ResponseMetaNormalizationMin0Max HTTPSummaryV2ResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryV2ResponseMetaNormalizationMinMax HTTPSummaryV2ResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryV2ResponseMetaNormalizationRawValues HTTPSummaryV2ResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryV2ResponseMetaNormalizationPercentageChange HTTPSummaryV2ResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryV2ResponseMetaNormalizationRollingAverage HTTPSummaryV2ResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryV2ResponseMetaNormalizationOverlappedPercentage HTTPSummaryV2ResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryV2ResponseMetaNormalizationRatio HTTPSummaryV2ResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryV2ResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 map[string, string]` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.SummaryV2( context.TODO(), radar.HTTPSummaryV2ParamsDimensionAdm1, radar.HTTPSummaryV2Params{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "Chrome": "50.168733", "Firefox": "25.084366" } }, "success": true } ``` ## Get HTTP requests time series `client.Radar.HTTP.Timeseries(ctx, query) (*HTTPTimeseriesResponse, error)` **get** `/radar/http/timeseries` Retrieves the HTTP requests over time. ### Parameters - `query HTTPTimeseriesParams` - `AggInterval param.Field[HTTPTimeseriesParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesParamsAggInterval15m HTTPTimeseriesParamsAggInterval = "15m"` - `const HTTPTimeseriesParamsAggInterval1h HTTPTimeseriesParamsAggInterval = "1h"` - `const HTTPTimeseriesParamsAggInterval1d HTTPTimeseriesParamsAggInterval = "1d"` - `const HTTPTimeseriesParamsAggInterval1w HTTPTimeseriesParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesParamsBotClassLikelyAutomated HTTPTimeseriesParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesParamsBotClassLikelyHuman HTTPTimeseriesParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesParamsBrowserFamilyChrome HTTPTimeseriesParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesParamsBrowserFamilyEdge HTTPTimeseriesParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesParamsBrowserFamilyFirefox HTTPTimeseriesParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesParamsBrowserFamilySafari HTTPTimeseriesParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesParamsDeviceTypeDesktop HTTPTimeseriesParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesParamsDeviceTypeMobile HTTPTimeseriesParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesParamsDeviceTypeOther HTTPTimeseriesParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesParamsFormatJson HTTPTimeseriesParamsFormat = "JSON"` - `const HTTPTimeseriesParamsFormatCsv HTTPTimeseriesParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesParamsHTTPProtocolHTTP HTTPTimeseriesParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesParamsHTTPProtocolHTTPS HTTPTimeseriesParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesParamsHTTPVersionHttPv1 HTTPTimeseriesParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesParamsHTTPVersionHttPv2 HTTPTimeseriesParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesParamsHTTPVersionHttPv3 HTTPTimeseriesParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesParamsIPVersionIPv4 HTTPTimeseriesParamsIPVersion = "IPv4"` - `const HTTPTimeseriesParamsIPVersionIPv6 HTTPTimeseriesParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `Normalization param.Field[HTTPTimeseriesParamsNormalization]` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesParamsNormalizationPercentageChange HTTPTimeseriesParamsNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesParamsNormalizationMin0Max HTTPTimeseriesParamsNormalization = "MIN0_MAX"` - `OS param.Field[[]HTTPTimeseriesParamsOS]` Filters results by operating system. - `const HTTPTimeseriesParamsOSWindows HTTPTimeseriesParamsOS = "WINDOWS"` - `const HTTPTimeseriesParamsOSMacosx HTTPTimeseriesParamsOS = "MACOSX"` - `const HTTPTimeseriesParamsOSIos HTTPTimeseriesParamsOS = "IOS"` - `const HTTPTimeseriesParamsOSAndroid HTTPTimeseriesParamsOS = "ANDROID"` - `const HTTPTimeseriesParamsOSChromeos HTTPTimeseriesParamsOS = "CHROMEOS"` - `const HTTPTimeseriesParamsOSLinux HTTPTimeseriesParamsOS = "LINUX"` - `const HTTPTimeseriesParamsOSSmartTv HTTPTimeseriesParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesParamsTLSVersionTlSv1_0 HTTPTimeseriesParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesParamsTLSVersionTlSv1_1 HTTPTimeseriesParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesParamsTLSVersionTlSv1_2 HTTPTimeseriesParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesParamsTLSVersionTlSv1_3 HTTPTimeseriesParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesParamsTLSVersionTlSvQuic HTTPTimeseriesParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesResponse struct{…}` - `Meta HTTPTimeseriesResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesResponseMetaAggIntervalOneHour HTTPTimeseriesResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesResponseMetaAggIntervalOneDay HTTPTimeseriesResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesResponseMetaAggIntervalOneWeek HTTPTimeseriesResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesResponseMetaAggIntervalOneMonth HTTPTimeseriesResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesResponseMetaNormalizationPercentage HTTPTimeseriesResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesResponseMetaNormalizationMin0Max HTTPTimeseriesResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesResponseMetaNormalizationMinMax HTTPTimeseriesResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesResponseMetaNormalizationRawValues HTTPTimeseriesResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesResponseMetaNormalizationPercentageChange HTTPTimeseriesResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesResponseMetaNormalizationRollingAverage HTTPTimeseriesResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesResponseMetaNormalizationRatio HTTPTimeseriesResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Timeseries(context.TODO(), radar.HTTPTimeseriesParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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" } ] } }, "success": true } ``` ## Get HTTP requests time series grouped by dimension `client.Radar.HTTP.TimeseriesGroupsV2(ctx, dimension, query) (*HTTPTimeseriesGroupsV2Response, error)` **get** `/radar/http/timeseries_groups/{dimension}` Retrieves the distribution of HTTP requests grouped by dimension. ### Parameters - `dimension HTTPTimeseriesGroupsV2ParamsDimension` Specifies the HTTP attribute by which to group the results. - `const HTTPTimeseriesGroupsV2ParamsDimensionAdm1 HTTPTimeseriesGroupsV2ParamsDimension = "ADM1"` - `const HTTPTimeseriesGroupsV2ParamsDimensionAs HTTPTimeseriesGroupsV2ParamsDimension = "AS"` - `const HTTPTimeseriesGroupsV2ParamsDimensionBotClass HTTPTimeseriesGroupsV2ParamsDimension = "BOT_CLASS"` - `const HTTPTimeseriesGroupsV2ParamsDimensionBrowser HTTPTimeseriesGroupsV2ParamsDimension = "BROWSER"` - `const HTTPTimeseriesGroupsV2ParamsDimensionBrowserFamily HTTPTimeseriesGroupsV2ParamsDimension = "BROWSER_FAMILY"` - `const HTTPTimeseriesGroupsV2ParamsDimensionDeviceType HTTPTimeseriesGroupsV2ParamsDimension = "DEVICE_TYPE"` - `const HTTPTimeseriesGroupsV2ParamsDimensionHTTPProtocol HTTPTimeseriesGroupsV2ParamsDimension = "HTTP_PROTOCOL"` - `const HTTPTimeseriesGroupsV2ParamsDimensionHTTPVersion HTTPTimeseriesGroupsV2ParamsDimension = "HTTP_VERSION"` - `const HTTPTimeseriesGroupsV2ParamsDimensionIPVersion HTTPTimeseriesGroupsV2ParamsDimension = "IP_VERSION"` - `const HTTPTimeseriesGroupsV2ParamsDimensionLocation HTTPTimeseriesGroupsV2ParamsDimension = "LOCATION"` - `const HTTPTimeseriesGroupsV2ParamsDimensionOS HTTPTimeseriesGroupsV2ParamsDimension = "OS"` - `const HTTPTimeseriesGroupsV2ParamsDimensionPostQuantum HTTPTimeseriesGroupsV2ParamsDimension = "POST_QUANTUM"` - `const HTTPTimeseriesGroupsV2ParamsDimensionTLSVersion HTTPTimeseriesGroupsV2ParamsDimension = "TLS_VERSION"` - `query HTTPTimeseriesGroupsV2Params` - `AggInterval param.Field[HTTPTimeseriesGroupsV2ParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupsV2ParamsAggInterval15m HTTPTimeseriesGroupsV2ParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupsV2ParamsAggInterval1h HTTPTimeseriesGroupsV2ParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupsV2ParamsAggInterval1d HTTPTimeseriesGroupsV2ParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupsV2ParamsAggInterval1w HTTPTimeseriesGroupsV2ParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupsV2ParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupsV2ParamsBotClassLikelyAutomated HTTPTimeseriesGroupsV2ParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupsV2ParamsBotClassLikelyHuman HTTPTimeseriesGroupsV2ParamsBotClass = "LIKELY_HUMAN"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupsV2ParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupsV2ParamsDeviceTypeDesktop HTTPTimeseriesGroupsV2ParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupsV2ParamsDeviceTypeMobile HTTPTimeseriesGroupsV2ParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupsV2ParamsDeviceTypeOther HTTPTimeseriesGroupsV2ParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupsV2ParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupsV2ParamsFormatJson HTTPTimeseriesGroupsV2ParamsFormat = "JSON"` - `const HTTPTimeseriesGroupsV2ParamsFormatCsv HTTPTimeseriesGroupsV2ParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupsV2ParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupsV2ParamsHTTPProtocolHTTP HTTPTimeseriesGroupsV2ParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupsV2ParamsHTTPProtocolHTTPS HTTPTimeseriesGroupsV2ParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupsV2ParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupsV2ParamsHTTPVersionHttPv1 HTTPTimeseriesGroupsV2ParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupsV2ParamsHTTPVersionHttPv2 HTTPTimeseriesGroupsV2ParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupsV2ParamsHTTPVersionHttPv3 HTTPTimeseriesGroupsV2ParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupsV2ParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupsV2ParamsIPVersionIPv4 HTTPTimeseriesGroupsV2ParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupsV2ParamsIPVersionIPv6 HTTPTimeseriesGroupsV2ParamsIPVersion = "IPv6"` - `LimitPerGroup param.Field[int64]` 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. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `Normalization param.Field[HTTPTimeseriesGroupsV2ParamsNormalization]` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupsV2ParamsNormalizationPercentage HTTPTimeseriesGroupsV2ParamsNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupsV2ParamsNormalizationMin0Max HTTPTimeseriesGroupsV2ParamsNormalization = "MIN0_MAX"` - `OS param.Field[[]HTTPTimeseriesGroupsV2ParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupsV2ParamsOSWindows HTTPTimeseriesGroupsV2ParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupsV2ParamsOSMacosx HTTPTimeseriesGroupsV2ParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupsV2ParamsOSIos HTTPTimeseriesGroupsV2ParamsOS = "IOS"` - `const HTTPTimeseriesGroupsV2ParamsOSAndroid HTTPTimeseriesGroupsV2ParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupsV2ParamsOSChromeos HTTPTimeseriesGroupsV2ParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupsV2ParamsOSLinux HTTPTimeseriesGroupsV2ParamsOS = "LINUX"` - `const HTTPTimeseriesGroupsV2ParamsOSSmartTv HTTPTimeseriesGroupsV2ParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupsV2ParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupsV2ParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupsV2ParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupsV2ParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupsV2ParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupsV2ParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupsV2ParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupsV2ParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupsV2ParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupsV2ParamsTLSVersionTlSvQuic HTTPTimeseriesGroupsV2ParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupsV2Response struct{…}` - `Meta HTTPTimeseriesGroupsV2ResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupsV2ResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupsV2ResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupsV2ResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupsV2ResponseMetaAggIntervalOneHour HTTPTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupsV2ResponseMetaAggIntervalOneDay HTTPTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupsV2ResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupsV2ResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupsV2ResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupsV2ResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupsV2ResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupsV2ResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationPercentage HTTPTimeseriesGroupsV2ResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationMin0Max HTTPTimeseriesGroupsV2ResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationMinMax HTTPTimeseriesGroupsV2ResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationRawValues HTTPTimeseriesGroupsV2ResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupsV2ResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupsV2ResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupsV2ResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupsV2ResponseMetaNormalizationRatio HTTPTimeseriesGroupsV2ResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupsV2ResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupsV2ResponseSerie0` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroupsV2( context.TODO(), radar.HTTPTimeseriesGroupsV2ParamsDimensionAdm1, radar.HTTPTimeseriesGroupsV2Params{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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 } ``` # Locations ## Get top locations by HTTP requests `client.Radar.HTTP.Locations.Get(ctx, query) (*HTTPLocationGetResponse, error)` **get** `/radar/http/top/locations` Retrieves the top locations by HTTP requests. ### Parameters - `query HTTPLocationGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationGetParamsBotClassLikelyAutomated HTTPLocationGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationGetParamsBotClassLikelyHuman HTTPLocationGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPLocationGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationGetParamsBrowserFamilyChrome HTTPLocationGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationGetParamsBrowserFamilyEdge HTTPLocationGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationGetParamsBrowserFamilyFirefox HTTPLocationGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationGetParamsBrowserFamilySafari HTTPLocationGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationGetParamsDeviceTypeDesktop HTTPLocationGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationGetParamsDeviceTypeMobile HTTPLocationGetParamsDeviceType = "MOBILE"` - `const HTTPLocationGetParamsDeviceTypeOther HTTPLocationGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationGetParamsFormatJson HTTPLocationGetParamsFormat = "JSON"` - `const HTTPLocationGetParamsFormatCsv HTTPLocationGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationGetParamsHTTPProtocolHTTP HTTPLocationGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationGetParamsHTTPProtocolHTTPS HTTPLocationGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPLocationGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationGetParamsHTTPVersionHttPv1 HTTPLocationGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationGetParamsHTTPVersionHttPv2 HTTPLocationGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationGetParamsHTTPVersionHttPv3 HTTPLocationGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPLocationGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationGetParamsIPVersionIPv4 HTTPLocationGetParamsIPVersion = "IPv4"` - `const HTTPLocationGetParamsIPVersionIPv6 HTTPLocationGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationGetParamsOS]` Filters results by operating system. - `const HTTPLocationGetParamsOSWindows HTTPLocationGetParamsOS = "WINDOWS"` - `const HTTPLocationGetParamsOSMacosx HTTPLocationGetParamsOS = "MACOSX"` - `const HTTPLocationGetParamsOSIos HTTPLocationGetParamsOS = "IOS"` - `const HTTPLocationGetParamsOSAndroid HTTPLocationGetParamsOS = "ANDROID"` - `const HTTPLocationGetParamsOSChromeos HTTPLocationGetParamsOS = "CHROMEOS"` - `const HTTPLocationGetParamsOSLinux HTTPLocationGetParamsOS = "LINUX"` - `const HTTPLocationGetParamsOSSmartTv HTTPLocationGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPLocationGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationGetParamsTLSVersionTlSv1_0 HTTPLocationGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationGetParamsTLSVersionTlSv1_1 HTTPLocationGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationGetParamsTLSVersionTlSv1_2 HTTPLocationGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationGetParamsTLSVersionTlSv1_3 HTTPLocationGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationGetParamsTLSVersionTlSvQuic HTTPLocationGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationGetResponse struct{…}` - `Meta HTTPLocationGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationGetResponseMetaNormalizationPercentage HTTPLocationGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationGetResponseMetaNormalizationMin0Max HTTPLocationGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationGetResponseMetaNormalizationMinMax HTTPLocationGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationGetResponseMetaNormalizationRawValues HTTPLocationGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationGetResponseMetaNormalizationPercentageChange HTTPLocationGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationGetResponseMetaNormalizationRollingAverage HTTPLocationGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationGetResponseMetaNormalizationOverlappedPercentage HTTPLocationGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationGetResponseMetaNormalizationRatio HTTPLocationGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) location, err := client.Radar.HTTP.Locations.Get(context.TODO(), radar.HTTPLocationGetParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", location.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # Bot Class ## Get top locations by HTTP requests for a bot class `client.Radar.HTTP.Locations.BotClass.Get(ctx, botClass, query) (*HTTPLocationBotClassGetResponse, error)` **get** `/radar/http/top/locations/bot_class/{bot_class}` Retrieves the top locations, by HTTP requests, of the requested bot class. ### Parameters - `botClass HTTPLocationBotClassGetParamsBotClass` Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationBotClassGetParamsBotClassLikelyAutomated HTTPLocationBotClassGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationBotClassGetParamsBotClassLikelyHuman HTTPLocationBotClassGetParamsBotClass = "LIKELY_HUMAN"` - `query HTTPLocationBotClassGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BrowserFamily param.Field[[]HTTPLocationBotClassGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationBotClassGetParamsBrowserFamilyChrome HTTPLocationBotClassGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationBotClassGetParamsBrowserFamilyEdge HTTPLocationBotClassGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationBotClassGetParamsBrowserFamilyFirefox HTTPLocationBotClassGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationBotClassGetParamsBrowserFamilySafari HTTPLocationBotClassGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationBotClassGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationBotClassGetParamsDeviceTypeDesktop HTTPLocationBotClassGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationBotClassGetParamsDeviceTypeMobile HTTPLocationBotClassGetParamsDeviceType = "MOBILE"` - `const HTTPLocationBotClassGetParamsDeviceTypeOther HTTPLocationBotClassGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationBotClassGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationBotClassGetParamsFormatJson HTTPLocationBotClassGetParamsFormat = "JSON"` - `const HTTPLocationBotClassGetParamsFormatCsv HTTPLocationBotClassGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationBotClassGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationBotClassGetParamsHTTPProtocolHTTP HTTPLocationBotClassGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationBotClassGetParamsHTTPProtocolHTTPS HTTPLocationBotClassGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPLocationBotClassGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationBotClassGetParamsHTTPVersionHttPv1 HTTPLocationBotClassGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationBotClassGetParamsHTTPVersionHttPv2 HTTPLocationBotClassGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationBotClassGetParamsHTTPVersionHttPv3 HTTPLocationBotClassGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPLocationBotClassGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationBotClassGetParamsIPVersionIPv4 HTTPLocationBotClassGetParamsIPVersion = "IPv4"` - `const HTTPLocationBotClassGetParamsIPVersionIPv6 HTTPLocationBotClassGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationBotClassGetParamsOS]` Filters results by operating system. - `const HTTPLocationBotClassGetParamsOSWindows HTTPLocationBotClassGetParamsOS = "WINDOWS"` - `const HTTPLocationBotClassGetParamsOSMacosx HTTPLocationBotClassGetParamsOS = "MACOSX"` - `const HTTPLocationBotClassGetParamsOSIos HTTPLocationBotClassGetParamsOS = "IOS"` - `const HTTPLocationBotClassGetParamsOSAndroid HTTPLocationBotClassGetParamsOS = "ANDROID"` - `const HTTPLocationBotClassGetParamsOSChromeos HTTPLocationBotClassGetParamsOS = "CHROMEOS"` - `const HTTPLocationBotClassGetParamsOSLinux HTTPLocationBotClassGetParamsOS = "LINUX"` - `const HTTPLocationBotClassGetParamsOSSmartTv HTTPLocationBotClassGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPLocationBotClassGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationBotClassGetParamsTLSVersionTlSv1_0 HTTPLocationBotClassGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationBotClassGetParamsTLSVersionTlSv1_1 HTTPLocationBotClassGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationBotClassGetParamsTLSVersionTlSv1_2 HTTPLocationBotClassGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationBotClassGetParamsTLSVersionTlSv1_3 HTTPLocationBotClassGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationBotClassGetParamsTLSVersionTlSvQuic HTTPLocationBotClassGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationBotClassGetResponse struct{…}` - `Meta HTTPLocationBotClassGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationBotClassGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationBotClassGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationBotClassGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationBotClassGetResponseMetaNormalizationPercentage HTTPLocationBotClassGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationBotClassGetResponseMetaNormalizationMin0Max HTTPLocationBotClassGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationBotClassGetResponseMetaNormalizationMinMax HTTPLocationBotClassGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationBotClassGetResponseMetaNormalizationRawValues HTTPLocationBotClassGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationBotClassGetResponseMetaNormalizationPercentageChange HTTPLocationBotClassGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationBotClassGetResponseMetaNormalizationRollingAverage HTTPLocationBotClassGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationBotClassGetResponseMetaNormalizationOverlappedPercentage HTTPLocationBotClassGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationBotClassGetResponseMetaNormalizationRatio HTTPLocationBotClassGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationBotClassGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationBotClassGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) botClass, err := client.Radar.HTTP.Locations.BotClass.Get( context.TODO(), radar.HTTPLocationBotClassGetParamsBotClassLikelyAutomated, radar.HTTPLocationBotClassGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", botClass.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # Device Type ## Get top locations by HTTP requests for a device type `client.Radar.HTTP.Locations.DeviceType.Get(ctx, deviceType, query) (*HTTPLocationDeviceTypeGetResponse, error)` **get** `/radar/http/top/locations/device_type/{device_type}` Retrieves the top locations, by HTTP requests, of the requested device type. ### Parameters - `deviceType HTTPLocationDeviceTypeGetParamsDeviceType` Device type. - `const HTTPLocationDeviceTypeGetParamsDeviceTypeDesktop HTTPLocationDeviceTypeGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationDeviceTypeGetParamsDeviceTypeMobile HTTPLocationDeviceTypeGetParamsDeviceType = "MOBILE"` - `const HTTPLocationDeviceTypeGetParamsDeviceTypeOther HTTPLocationDeviceTypeGetParamsDeviceType = "OTHER"` - `query HTTPLocationDeviceTypeGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationDeviceTypeGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationDeviceTypeGetParamsBotClassLikelyAutomated HTTPLocationDeviceTypeGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationDeviceTypeGetParamsBotClassLikelyHuman HTTPLocationDeviceTypeGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPLocationDeviceTypeGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationDeviceTypeGetParamsBrowserFamilyChrome HTTPLocationDeviceTypeGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationDeviceTypeGetParamsBrowserFamilyEdge HTTPLocationDeviceTypeGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationDeviceTypeGetParamsBrowserFamilyFirefox HTTPLocationDeviceTypeGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationDeviceTypeGetParamsBrowserFamilySafari HTTPLocationDeviceTypeGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `Format param.Field[HTTPLocationDeviceTypeGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationDeviceTypeGetParamsFormatJson HTTPLocationDeviceTypeGetParamsFormat = "JSON"` - `const HTTPLocationDeviceTypeGetParamsFormatCsv HTTPLocationDeviceTypeGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationDeviceTypeGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationDeviceTypeGetParamsHTTPProtocolHTTP HTTPLocationDeviceTypeGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationDeviceTypeGetParamsHTTPProtocolHTTPS HTTPLocationDeviceTypeGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPLocationDeviceTypeGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationDeviceTypeGetParamsHTTPVersionHttPv1 HTTPLocationDeviceTypeGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationDeviceTypeGetParamsHTTPVersionHttPv2 HTTPLocationDeviceTypeGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationDeviceTypeGetParamsHTTPVersionHttPv3 HTTPLocationDeviceTypeGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPLocationDeviceTypeGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationDeviceTypeGetParamsIPVersionIPv4 HTTPLocationDeviceTypeGetParamsIPVersion = "IPv4"` - `const HTTPLocationDeviceTypeGetParamsIPVersionIPv6 HTTPLocationDeviceTypeGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationDeviceTypeGetParamsOS]` Filters results by operating system. - `const HTTPLocationDeviceTypeGetParamsOSWindows HTTPLocationDeviceTypeGetParamsOS = "WINDOWS"` - `const HTTPLocationDeviceTypeGetParamsOSMacosx HTTPLocationDeviceTypeGetParamsOS = "MACOSX"` - `const HTTPLocationDeviceTypeGetParamsOSIos HTTPLocationDeviceTypeGetParamsOS = "IOS"` - `const HTTPLocationDeviceTypeGetParamsOSAndroid HTTPLocationDeviceTypeGetParamsOS = "ANDROID"` - `const HTTPLocationDeviceTypeGetParamsOSChromeos HTTPLocationDeviceTypeGetParamsOS = "CHROMEOS"` - `const HTTPLocationDeviceTypeGetParamsOSLinux HTTPLocationDeviceTypeGetParamsOS = "LINUX"` - `const HTTPLocationDeviceTypeGetParamsOSSmartTv HTTPLocationDeviceTypeGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPLocationDeviceTypeGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationDeviceTypeGetParamsTLSVersionTlSv1_0 HTTPLocationDeviceTypeGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationDeviceTypeGetParamsTLSVersionTlSv1_1 HTTPLocationDeviceTypeGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationDeviceTypeGetParamsTLSVersionTlSv1_2 HTTPLocationDeviceTypeGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationDeviceTypeGetParamsTLSVersionTlSv1_3 HTTPLocationDeviceTypeGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationDeviceTypeGetParamsTLSVersionTlSvQuic HTTPLocationDeviceTypeGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationDeviceTypeGetResponse struct{…}` - `Meta HTTPLocationDeviceTypeGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationDeviceTypeGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationDeviceTypeGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationDeviceTypeGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationPercentage HTTPLocationDeviceTypeGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationMin0Max HTTPLocationDeviceTypeGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationMinMax HTTPLocationDeviceTypeGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationRawValues HTTPLocationDeviceTypeGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationPercentageChange HTTPLocationDeviceTypeGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationRollingAverage HTTPLocationDeviceTypeGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationOverlappedPercentage HTTPLocationDeviceTypeGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationDeviceTypeGetResponseMetaNormalizationRatio HTTPLocationDeviceTypeGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationDeviceTypeGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationDeviceTypeGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) deviceType, err := client.Radar.HTTP.Locations.DeviceType.Get( context.TODO(), radar.HTTPLocationDeviceTypeGetParamsDeviceTypeDesktop, radar.HTTPLocationDeviceTypeGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", deviceType.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # HTTP Protocol ## Get top locations by HTTP requests for an HTTP protocol `client.Radar.HTTP.Locations.HTTPProtocol.Get(ctx, httpProtocol, query) (*HTTPLocationHTTPProtocolGetResponse, error)` **get** `/radar/http/top/locations/http_protocol/{http_protocol}` Retrieves the top locations, by HTTP requests, of the requested HTTP protocol. ### Parameters - `httpProtocol HTTPLocationHTTPProtocolGetParamsHTTPProtocol` HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationHTTPProtocolGetParamsHTTPProtocolHTTP HTTPLocationHTTPProtocolGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationHTTPProtocolGetParamsHTTPProtocolHTTPS HTTPLocationHTTPProtocolGetParamsHTTPProtocol = "HTTPS"` - `query HTTPLocationHTTPProtocolGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationHTTPProtocolGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationHTTPProtocolGetParamsBotClassLikelyAutomated HTTPLocationHTTPProtocolGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationHTTPProtocolGetParamsBotClassLikelyHuman HTTPLocationHTTPProtocolGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPLocationHTTPProtocolGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationHTTPProtocolGetParamsBrowserFamilyChrome HTTPLocationHTTPProtocolGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationHTTPProtocolGetParamsBrowserFamilyEdge HTTPLocationHTTPProtocolGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationHTTPProtocolGetParamsBrowserFamilyFirefox HTTPLocationHTTPProtocolGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationHTTPProtocolGetParamsBrowserFamilySafari HTTPLocationHTTPProtocolGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationHTTPProtocolGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationHTTPProtocolGetParamsDeviceTypeDesktop HTTPLocationHTTPProtocolGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationHTTPProtocolGetParamsDeviceTypeMobile HTTPLocationHTTPProtocolGetParamsDeviceType = "MOBILE"` - `const HTTPLocationHTTPProtocolGetParamsDeviceTypeOther HTTPLocationHTTPProtocolGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationHTTPProtocolGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationHTTPProtocolGetParamsFormatJson HTTPLocationHTTPProtocolGetParamsFormat = "JSON"` - `const HTTPLocationHTTPProtocolGetParamsFormatCsv HTTPLocationHTTPProtocolGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPVersion param.Field[[]HTTPLocationHTTPProtocolGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationHTTPProtocolGetParamsHTTPVersionHttPv1 HTTPLocationHTTPProtocolGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationHTTPProtocolGetParamsHTTPVersionHttPv2 HTTPLocationHTTPProtocolGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationHTTPProtocolGetParamsHTTPVersionHttPv3 HTTPLocationHTTPProtocolGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPLocationHTTPProtocolGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationHTTPProtocolGetParamsIPVersionIPv4 HTTPLocationHTTPProtocolGetParamsIPVersion = "IPv4"` - `const HTTPLocationHTTPProtocolGetParamsIPVersionIPv6 HTTPLocationHTTPProtocolGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationHTTPProtocolGetParamsOS]` Filters results by operating system. - `const HTTPLocationHTTPProtocolGetParamsOSWindows HTTPLocationHTTPProtocolGetParamsOS = "WINDOWS"` - `const HTTPLocationHTTPProtocolGetParamsOSMacosx HTTPLocationHTTPProtocolGetParamsOS = "MACOSX"` - `const HTTPLocationHTTPProtocolGetParamsOSIos HTTPLocationHTTPProtocolGetParamsOS = "IOS"` - `const HTTPLocationHTTPProtocolGetParamsOSAndroid HTTPLocationHTTPProtocolGetParamsOS = "ANDROID"` - `const HTTPLocationHTTPProtocolGetParamsOSChromeos HTTPLocationHTTPProtocolGetParamsOS = "CHROMEOS"` - `const HTTPLocationHTTPProtocolGetParamsOSLinux HTTPLocationHTTPProtocolGetParamsOS = "LINUX"` - `const HTTPLocationHTTPProtocolGetParamsOSSmartTv HTTPLocationHTTPProtocolGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPLocationHTTPProtocolGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationHTTPProtocolGetParamsTLSVersionTlSv1_0 HTTPLocationHTTPProtocolGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationHTTPProtocolGetParamsTLSVersionTlSv1_1 HTTPLocationHTTPProtocolGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationHTTPProtocolGetParamsTLSVersionTlSv1_2 HTTPLocationHTTPProtocolGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationHTTPProtocolGetParamsTLSVersionTlSv1_3 HTTPLocationHTTPProtocolGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationHTTPProtocolGetParamsTLSVersionTlSvQuic HTTPLocationHTTPProtocolGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationHTTPProtocolGetResponse struct{…}` - `Meta HTTPLocationHTTPProtocolGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationHTTPProtocolGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationHTTPProtocolGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationPercentage HTTPLocationHTTPProtocolGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationMin0Max HTTPLocationHTTPProtocolGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationMinMax HTTPLocationHTTPProtocolGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationRawValues HTTPLocationHTTPProtocolGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationPercentageChange HTTPLocationHTTPProtocolGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationRollingAverage HTTPLocationHTTPProtocolGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationOverlappedPercentage HTTPLocationHTTPProtocolGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationHTTPProtocolGetResponseMetaNormalizationRatio HTTPLocationHTTPProtocolGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationHTTPProtocolGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationHTTPProtocolGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) httpProtocol, err := client.Radar.HTTP.Locations.HTTPProtocol.Get( context.TODO(), radar.HTTPLocationHTTPProtocolGetParamsHTTPProtocolHTTP, radar.HTTPLocationHTTPProtocolGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", httpProtocol.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # HTTP Method ## Get top locations by HTTP requests for an HTTP version `client.Radar.HTTP.Locations.HTTPMethod.Get(ctx, httpVersion, query) (*HTTPLocationHTTPMethodGetResponse, error)` **get** `/radar/http/top/locations/http_version/{http_version}` Retrieves the top locations, by HTTP requests, of the requested HTTP version. ### Parameters - `httpVersion HTTPLocationHTTPMethodGetParamsHTTPVersion` HTTP version. - `const HTTPLocationHTTPMethodGetParamsHTTPVersionHttPv1 HTTPLocationHTTPMethodGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationHTTPMethodGetParamsHTTPVersionHttPv2 HTTPLocationHTTPMethodGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationHTTPMethodGetParamsHTTPVersionHttPv3 HTTPLocationHTTPMethodGetParamsHTTPVersion = "HTTPv3"` - `query HTTPLocationHTTPMethodGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationHTTPMethodGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationHTTPMethodGetParamsBotClassLikelyAutomated HTTPLocationHTTPMethodGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationHTTPMethodGetParamsBotClassLikelyHuman HTTPLocationHTTPMethodGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPLocationHTTPMethodGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationHTTPMethodGetParamsBrowserFamilyChrome HTTPLocationHTTPMethodGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationHTTPMethodGetParamsBrowserFamilyEdge HTTPLocationHTTPMethodGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationHTTPMethodGetParamsBrowserFamilyFirefox HTTPLocationHTTPMethodGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationHTTPMethodGetParamsBrowserFamilySafari HTTPLocationHTTPMethodGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationHTTPMethodGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationHTTPMethodGetParamsDeviceTypeDesktop HTTPLocationHTTPMethodGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationHTTPMethodGetParamsDeviceTypeMobile HTTPLocationHTTPMethodGetParamsDeviceType = "MOBILE"` - `const HTTPLocationHTTPMethodGetParamsDeviceTypeOther HTTPLocationHTTPMethodGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationHTTPMethodGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationHTTPMethodGetParamsFormatJson HTTPLocationHTTPMethodGetParamsFormat = "JSON"` - `const HTTPLocationHTTPMethodGetParamsFormatCsv HTTPLocationHTTPMethodGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationHTTPMethodGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationHTTPMethodGetParamsHTTPProtocolHTTP HTTPLocationHTTPMethodGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationHTTPMethodGetParamsHTTPProtocolHTTPS HTTPLocationHTTPMethodGetParamsHTTPProtocol = "HTTPS"` - `IPVersion param.Field[[]HTTPLocationHTTPMethodGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationHTTPMethodGetParamsIPVersionIPv4 HTTPLocationHTTPMethodGetParamsIPVersion = "IPv4"` - `const HTTPLocationHTTPMethodGetParamsIPVersionIPv6 HTTPLocationHTTPMethodGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationHTTPMethodGetParamsOS]` Filters results by operating system. - `const HTTPLocationHTTPMethodGetParamsOSWindows HTTPLocationHTTPMethodGetParamsOS = "WINDOWS"` - `const HTTPLocationHTTPMethodGetParamsOSMacosx HTTPLocationHTTPMethodGetParamsOS = "MACOSX"` - `const HTTPLocationHTTPMethodGetParamsOSIos HTTPLocationHTTPMethodGetParamsOS = "IOS"` - `const HTTPLocationHTTPMethodGetParamsOSAndroid HTTPLocationHTTPMethodGetParamsOS = "ANDROID"` - `const HTTPLocationHTTPMethodGetParamsOSChromeos HTTPLocationHTTPMethodGetParamsOS = "CHROMEOS"` - `const HTTPLocationHTTPMethodGetParamsOSLinux HTTPLocationHTTPMethodGetParamsOS = "LINUX"` - `const HTTPLocationHTTPMethodGetParamsOSSmartTv HTTPLocationHTTPMethodGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPLocationHTTPMethodGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationHTTPMethodGetParamsTLSVersionTlSv1_0 HTTPLocationHTTPMethodGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationHTTPMethodGetParamsTLSVersionTlSv1_1 HTTPLocationHTTPMethodGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationHTTPMethodGetParamsTLSVersionTlSv1_2 HTTPLocationHTTPMethodGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationHTTPMethodGetParamsTLSVersionTlSv1_3 HTTPLocationHTTPMethodGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationHTTPMethodGetParamsTLSVersionTlSvQuic HTTPLocationHTTPMethodGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationHTTPMethodGetResponse struct{…}` - `Meta HTTPLocationHTTPMethodGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationHTTPMethodGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationHTTPMethodGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationHTTPMethodGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationPercentage HTTPLocationHTTPMethodGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationMin0Max HTTPLocationHTTPMethodGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationMinMax HTTPLocationHTTPMethodGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationRawValues HTTPLocationHTTPMethodGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationPercentageChange HTTPLocationHTTPMethodGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationRollingAverage HTTPLocationHTTPMethodGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationOverlappedPercentage HTTPLocationHTTPMethodGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationHTTPMethodGetResponseMetaNormalizationRatio HTTPLocationHTTPMethodGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationHTTPMethodGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationHTTPMethodGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) httpMethod, err := client.Radar.HTTP.Locations.HTTPMethod.Get( context.TODO(), radar.HTTPLocationHTTPMethodGetParamsHTTPVersionHttPv1, radar.HTTPLocationHTTPMethodGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", httpMethod.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # IP Version ## Get top locations by HTTP requests for an IP version `client.Radar.HTTP.Locations.IPVersion.Get(ctx, ipVersion, query) (*HTTPLocationIPVersionGetResponse, error)` **get** `/radar/http/top/locations/ip_version/{ip_version}` Retrieves the top locations, by HTTP requests, of the requested IP version. ### Parameters - `ipVersion HTTPLocationIPVersionGetParamsIPVersion` IP version. - `const HTTPLocationIPVersionGetParamsIPVersionIPv4 HTTPLocationIPVersionGetParamsIPVersion = "IPv4"` - `const HTTPLocationIPVersionGetParamsIPVersionIPv6 HTTPLocationIPVersionGetParamsIPVersion = "IPv6"` - `query HTTPLocationIPVersionGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationIPVersionGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationIPVersionGetParamsBotClassLikelyAutomated HTTPLocationIPVersionGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationIPVersionGetParamsBotClassLikelyHuman HTTPLocationIPVersionGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPLocationIPVersionGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationIPVersionGetParamsBrowserFamilyChrome HTTPLocationIPVersionGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationIPVersionGetParamsBrowserFamilyEdge HTTPLocationIPVersionGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationIPVersionGetParamsBrowserFamilyFirefox HTTPLocationIPVersionGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationIPVersionGetParamsBrowserFamilySafari HTTPLocationIPVersionGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationIPVersionGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationIPVersionGetParamsDeviceTypeDesktop HTTPLocationIPVersionGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationIPVersionGetParamsDeviceTypeMobile HTTPLocationIPVersionGetParamsDeviceType = "MOBILE"` - `const HTTPLocationIPVersionGetParamsDeviceTypeOther HTTPLocationIPVersionGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationIPVersionGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationIPVersionGetParamsFormatJson HTTPLocationIPVersionGetParamsFormat = "JSON"` - `const HTTPLocationIPVersionGetParamsFormatCsv HTTPLocationIPVersionGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationIPVersionGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationIPVersionGetParamsHTTPProtocolHTTP HTTPLocationIPVersionGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationIPVersionGetParamsHTTPProtocolHTTPS HTTPLocationIPVersionGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPLocationIPVersionGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationIPVersionGetParamsHTTPVersionHttPv1 HTTPLocationIPVersionGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationIPVersionGetParamsHTTPVersionHttPv2 HTTPLocationIPVersionGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationIPVersionGetParamsHTTPVersionHttPv3 HTTPLocationIPVersionGetParamsHTTPVersion = "HTTPv3"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationIPVersionGetParamsOS]` Filters results by operating system. - `const HTTPLocationIPVersionGetParamsOSWindows HTTPLocationIPVersionGetParamsOS = "WINDOWS"` - `const HTTPLocationIPVersionGetParamsOSMacosx HTTPLocationIPVersionGetParamsOS = "MACOSX"` - `const HTTPLocationIPVersionGetParamsOSIos HTTPLocationIPVersionGetParamsOS = "IOS"` - `const HTTPLocationIPVersionGetParamsOSAndroid HTTPLocationIPVersionGetParamsOS = "ANDROID"` - `const HTTPLocationIPVersionGetParamsOSChromeos HTTPLocationIPVersionGetParamsOS = "CHROMEOS"` - `const HTTPLocationIPVersionGetParamsOSLinux HTTPLocationIPVersionGetParamsOS = "LINUX"` - `const HTTPLocationIPVersionGetParamsOSSmartTv HTTPLocationIPVersionGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPLocationIPVersionGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationIPVersionGetParamsTLSVersionTlSv1_0 HTTPLocationIPVersionGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationIPVersionGetParamsTLSVersionTlSv1_1 HTTPLocationIPVersionGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationIPVersionGetParamsTLSVersionTlSv1_2 HTTPLocationIPVersionGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationIPVersionGetParamsTLSVersionTlSv1_3 HTTPLocationIPVersionGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationIPVersionGetParamsTLSVersionTlSvQuic HTTPLocationIPVersionGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationIPVersionGetResponse struct{…}` - `Meta HTTPLocationIPVersionGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationIPVersionGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationIPVersionGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationIPVersionGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationIPVersionGetResponseMetaNormalizationPercentage HTTPLocationIPVersionGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationIPVersionGetResponseMetaNormalizationMin0Max HTTPLocationIPVersionGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationIPVersionGetResponseMetaNormalizationMinMax HTTPLocationIPVersionGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationIPVersionGetResponseMetaNormalizationRawValues HTTPLocationIPVersionGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationIPVersionGetResponseMetaNormalizationPercentageChange HTTPLocationIPVersionGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationIPVersionGetResponseMetaNormalizationRollingAverage HTTPLocationIPVersionGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationIPVersionGetResponseMetaNormalizationOverlappedPercentage HTTPLocationIPVersionGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationIPVersionGetResponseMetaNormalizationRatio HTTPLocationIPVersionGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationIPVersionGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationIPVersionGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) ipVersion, err := client.Radar.HTTP.Locations.IPVersion.Get( context.TODO(), radar.HTTPLocationIPVersionGetParamsIPVersionIPv4, radar.HTTPLocationIPVersionGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", ipVersion.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # OS ## Get top locations by HTTP requests for an OS `client.Radar.HTTP.Locations.OS.Get(ctx, os, query) (*HTTPLocationOSGetResponse, error)` **get** `/radar/http/top/locations/os/{os}` Retrieves the top locations, by HTTP requests, of the requested operating system. ### Parameters - `os HTTPLocationOSGetParamsOS` Operating system. - `const HTTPLocationOSGetParamsOSWindows HTTPLocationOSGetParamsOS = "WINDOWS"` - `const HTTPLocationOSGetParamsOSMacosx HTTPLocationOSGetParamsOS = "MACOSX"` - `const HTTPLocationOSGetParamsOSIos HTTPLocationOSGetParamsOS = "IOS"` - `const HTTPLocationOSGetParamsOSAndroid HTTPLocationOSGetParamsOS = "ANDROID"` - `const HTTPLocationOSGetParamsOSChromeos HTTPLocationOSGetParamsOS = "CHROMEOS"` - `const HTTPLocationOSGetParamsOSLinux HTTPLocationOSGetParamsOS = "LINUX"` - `const HTTPLocationOSGetParamsOSSmartTv HTTPLocationOSGetParamsOS = "SMART_TV"` - `query HTTPLocationOSGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationOSGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationOSGetParamsBotClassLikelyAutomated HTTPLocationOSGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationOSGetParamsBotClassLikelyHuman HTTPLocationOSGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPLocationOSGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationOSGetParamsBrowserFamilyChrome HTTPLocationOSGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationOSGetParamsBrowserFamilyEdge HTTPLocationOSGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationOSGetParamsBrowserFamilyFirefox HTTPLocationOSGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationOSGetParamsBrowserFamilySafari HTTPLocationOSGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationOSGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationOSGetParamsDeviceTypeDesktop HTTPLocationOSGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationOSGetParamsDeviceTypeMobile HTTPLocationOSGetParamsDeviceType = "MOBILE"` - `const HTTPLocationOSGetParamsDeviceTypeOther HTTPLocationOSGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationOSGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationOSGetParamsFormatJson HTTPLocationOSGetParamsFormat = "JSON"` - `const HTTPLocationOSGetParamsFormatCsv HTTPLocationOSGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationOSGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationOSGetParamsHTTPProtocolHTTP HTTPLocationOSGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationOSGetParamsHTTPProtocolHTTPS HTTPLocationOSGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPLocationOSGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationOSGetParamsHTTPVersionHttPv1 HTTPLocationOSGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationOSGetParamsHTTPVersionHttPv2 HTTPLocationOSGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationOSGetParamsHTTPVersionHttPv3 HTTPLocationOSGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPLocationOSGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationOSGetParamsIPVersionIPv4 HTTPLocationOSGetParamsIPVersion = "IPv4"` - `const HTTPLocationOSGetParamsIPVersionIPv6 HTTPLocationOSGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `TLSVersion param.Field[[]HTTPLocationOSGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationOSGetParamsTLSVersionTlSv1_0 HTTPLocationOSGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationOSGetParamsTLSVersionTlSv1_1 HTTPLocationOSGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationOSGetParamsTLSVersionTlSv1_2 HTTPLocationOSGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationOSGetParamsTLSVersionTlSv1_3 HTTPLocationOSGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationOSGetParamsTLSVersionTlSvQuic HTTPLocationOSGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationOSGetResponse struct{…}` - `Meta HTTPLocationOSGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationOSGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationOSGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationOSGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationOSGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationOSGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationOSGetResponseMetaNormalizationPercentage HTTPLocationOSGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationOSGetResponseMetaNormalizationMin0Max HTTPLocationOSGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationOSGetResponseMetaNormalizationMinMax HTTPLocationOSGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationOSGetResponseMetaNormalizationRawValues HTTPLocationOSGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationOSGetResponseMetaNormalizationPercentageChange HTTPLocationOSGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationOSGetResponseMetaNormalizationRollingAverage HTTPLocationOSGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationOSGetResponseMetaNormalizationOverlappedPercentage HTTPLocationOSGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationOSGetResponseMetaNormalizationRatio HTTPLocationOSGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationOSGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationOSGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) os, err := client.Radar.HTTP.Locations.OS.Get( context.TODO(), radar.HTTPLocationOSGetParamsOSWindows, radar.HTTPLocationOSGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", os.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # TLS Version ## Get top locations by HTTP requests for a TLS version `client.Radar.HTTP.Locations.TLSVersion.Get(ctx, tlsVersion, query) (*HTTPLocationTLSVersionGetResponse, error)` **get** `/radar/http/top/locations/tls_version/{tls_version}` Retrieves the top locations, by HTTP requests, of the requested TLS protocol version. ### Parameters - `tlsVersion HTTPLocationTLSVersionGetParamsTLSVersion` TLS version. - `const HTTPLocationTLSVersionGetParamsTLSVersionTlSv1_0 HTTPLocationTLSVersionGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationTLSVersionGetParamsTLSVersionTlSv1_1 HTTPLocationTLSVersionGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationTLSVersionGetParamsTLSVersionTlSv1_2 HTTPLocationTLSVersionGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationTLSVersionGetParamsTLSVersionTlSv1_3 HTTPLocationTLSVersionGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationTLSVersionGetParamsTLSVersionTlSvQuic HTTPLocationTLSVersionGetParamsTLSVersion = "TLSvQUIC"` - `query HTTPLocationTLSVersionGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationTLSVersionGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationTLSVersionGetParamsBotClassLikelyAutomated HTTPLocationTLSVersionGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationTLSVersionGetParamsBotClassLikelyHuman HTTPLocationTLSVersionGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPLocationTLSVersionGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPLocationTLSVersionGetParamsBrowserFamilyChrome HTTPLocationTLSVersionGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationTLSVersionGetParamsBrowserFamilyEdge HTTPLocationTLSVersionGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationTLSVersionGetParamsBrowserFamilyFirefox HTTPLocationTLSVersionGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationTLSVersionGetParamsBrowserFamilySafari HTTPLocationTLSVersionGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationTLSVersionGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationTLSVersionGetParamsDeviceTypeDesktop HTTPLocationTLSVersionGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationTLSVersionGetParamsDeviceTypeMobile HTTPLocationTLSVersionGetParamsDeviceType = "MOBILE"` - `const HTTPLocationTLSVersionGetParamsDeviceTypeOther HTTPLocationTLSVersionGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationTLSVersionGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationTLSVersionGetParamsFormatJson HTTPLocationTLSVersionGetParamsFormat = "JSON"` - `const HTTPLocationTLSVersionGetParamsFormatCsv HTTPLocationTLSVersionGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationTLSVersionGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationTLSVersionGetParamsHTTPProtocolHTTP HTTPLocationTLSVersionGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationTLSVersionGetParamsHTTPProtocolHTTPS HTTPLocationTLSVersionGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPLocationTLSVersionGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationTLSVersionGetParamsHTTPVersionHttPv1 HTTPLocationTLSVersionGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationTLSVersionGetParamsHTTPVersionHttPv2 HTTPLocationTLSVersionGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationTLSVersionGetParamsHTTPVersionHttPv3 HTTPLocationTLSVersionGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPLocationTLSVersionGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationTLSVersionGetParamsIPVersionIPv4 HTTPLocationTLSVersionGetParamsIPVersion = "IPv4"` - `const HTTPLocationTLSVersionGetParamsIPVersionIPv6 HTTPLocationTLSVersionGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationTLSVersionGetParamsOS]` Filters results by operating system. - `const HTTPLocationTLSVersionGetParamsOSWindows HTTPLocationTLSVersionGetParamsOS = "WINDOWS"` - `const HTTPLocationTLSVersionGetParamsOSMacosx HTTPLocationTLSVersionGetParamsOS = "MACOSX"` - `const HTTPLocationTLSVersionGetParamsOSIos HTTPLocationTLSVersionGetParamsOS = "IOS"` - `const HTTPLocationTLSVersionGetParamsOSAndroid HTTPLocationTLSVersionGetParamsOS = "ANDROID"` - `const HTTPLocationTLSVersionGetParamsOSChromeos HTTPLocationTLSVersionGetParamsOS = "CHROMEOS"` - `const HTTPLocationTLSVersionGetParamsOSLinux HTTPLocationTLSVersionGetParamsOS = "LINUX"` - `const HTTPLocationTLSVersionGetParamsOSSmartTv HTTPLocationTLSVersionGetParamsOS = "SMART_TV"` ### Returns - `type HTTPLocationTLSVersionGetResponse struct{…}` - `Meta HTTPLocationTLSVersionGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationTLSVersionGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationTLSVersionGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationTLSVersionGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationTLSVersionGetResponseMetaNormalizationPercentage HTTPLocationTLSVersionGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationTLSVersionGetResponseMetaNormalizationMin0Max HTTPLocationTLSVersionGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationTLSVersionGetResponseMetaNormalizationMinMax HTTPLocationTLSVersionGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationTLSVersionGetResponseMetaNormalizationRawValues HTTPLocationTLSVersionGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationTLSVersionGetResponseMetaNormalizationPercentageChange HTTPLocationTLSVersionGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationTLSVersionGetResponseMetaNormalizationRollingAverage HTTPLocationTLSVersionGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationTLSVersionGetResponseMetaNormalizationOverlappedPercentage HTTPLocationTLSVersionGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationTLSVersionGetResponseMetaNormalizationRatio HTTPLocationTLSVersionGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationTLSVersionGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationTLSVersionGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) tlsVersion, err := client.Radar.HTTP.Locations.TLSVersion.Get( context.TODO(), radar.HTTPLocationTLSVersionGetParamsTLSVersionTlSv1_0, radar.HTTPLocationTLSVersionGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", tlsVersion.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # Browser Family ## Get top locations by HTTP requests for a browser family `client.Radar.HTTP.Locations.BrowserFamily.Get(ctx, browserFamily, query) (*HTTPLocationBrowserFamilyGetResponse, error)` **get** `/radar/http/top/locations/browser_family/{browser_family}` Retrieves the top locations, by HTTP requests, of the requested browser family. ### Parameters - `browserFamily HTTPLocationBrowserFamilyGetParamsBrowserFamily` Browser family. - `const HTTPLocationBrowserFamilyGetParamsBrowserFamilyChrome HTTPLocationBrowserFamilyGetParamsBrowserFamily = "CHROME"` - `const HTTPLocationBrowserFamilyGetParamsBrowserFamilyEdge HTTPLocationBrowserFamilyGetParamsBrowserFamily = "EDGE"` - `const HTTPLocationBrowserFamilyGetParamsBrowserFamilyFirefox HTTPLocationBrowserFamilyGetParamsBrowserFamily = "FIREFOX"` - `const HTTPLocationBrowserFamilyGetParamsBrowserFamilySafari HTTPLocationBrowserFamilyGetParamsBrowserFamily = "SAFARI"` - `query HTTPLocationBrowserFamilyGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPLocationBrowserFamilyGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPLocationBrowserFamilyGetParamsBotClassLikelyAutomated HTTPLocationBrowserFamilyGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPLocationBrowserFamilyGetParamsBotClassLikelyHuman HTTPLocationBrowserFamilyGetParamsBotClass = "LIKELY_HUMAN"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPLocationBrowserFamilyGetParamsDeviceType]` Filters results by device type. - `const HTTPLocationBrowserFamilyGetParamsDeviceTypeDesktop HTTPLocationBrowserFamilyGetParamsDeviceType = "DESKTOP"` - `const HTTPLocationBrowserFamilyGetParamsDeviceTypeMobile HTTPLocationBrowserFamilyGetParamsDeviceType = "MOBILE"` - `const HTTPLocationBrowserFamilyGetParamsDeviceTypeOther HTTPLocationBrowserFamilyGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPLocationBrowserFamilyGetParamsFormat]` Format in which results will be returned. - `const HTTPLocationBrowserFamilyGetParamsFormatJson HTTPLocationBrowserFamilyGetParamsFormat = "JSON"` - `const HTTPLocationBrowserFamilyGetParamsFormatCsv HTTPLocationBrowserFamilyGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPLocationBrowserFamilyGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPLocationBrowserFamilyGetParamsHTTPProtocolHTTP HTTPLocationBrowserFamilyGetParamsHTTPProtocol = "HTTP"` - `const HTTPLocationBrowserFamilyGetParamsHTTPProtocolHTTPS HTTPLocationBrowserFamilyGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPLocationBrowserFamilyGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPLocationBrowserFamilyGetParamsHTTPVersionHttPv1 HTTPLocationBrowserFamilyGetParamsHTTPVersion = "HTTPv1"` - `const HTTPLocationBrowserFamilyGetParamsHTTPVersionHttPv2 HTTPLocationBrowserFamilyGetParamsHTTPVersion = "HTTPv2"` - `const HTTPLocationBrowserFamilyGetParamsHTTPVersionHttPv3 HTTPLocationBrowserFamilyGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPLocationBrowserFamilyGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPLocationBrowserFamilyGetParamsIPVersionIPv4 HTTPLocationBrowserFamilyGetParamsIPVersion = "IPv4"` - `const HTTPLocationBrowserFamilyGetParamsIPVersionIPv6 HTTPLocationBrowserFamilyGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPLocationBrowserFamilyGetParamsOS]` Filters results by operating system. - `const HTTPLocationBrowserFamilyGetParamsOSWindows HTTPLocationBrowserFamilyGetParamsOS = "WINDOWS"` - `const HTTPLocationBrowserFamilyGetParamsOSMacosx HTTPLocationBrowserFamilyGetParamsOS = "MACOSX"` - `const HTTPLocationBrowserFamilyGetParamsOSIos HTTPLocationBrowserFamilyGetParamsOS = "IOS"` - `const HTTPLocationBrowserFamilyGetParamsOSAndroid HTTPLocationBrowserFamilyGetParamsOS = "ANDROID"` - `const HTTPLocationBrowserFamilyGetParamsOSChromeos HTTPLocationBrowserFamilyGetParamsOS = "CHROMEOS"` - `const HTTPLocationBrowserFamilyGetParamsOSLinux HTTPLocationBrowserFamilyGetParamsOS = "LINUX"` - `const HTTPLocationBrowserFamilyGetParamsOSSmartTv HTTPLocationBrowserFamilyGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPLocationBrowserFamilyGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPLocationBrowserFamilyGetParamsTLSVersionTlSv1_0 HTTPLocationBrowserFamilyGetParamsTLSVersion = "TLSv1_0"` - `const HTTPLocationBrowserFamilyGetParamsTLSVersionTlSv1_1 HTTPLocationBrowserFamilyGetParamsTLSVersion = "TLSv1_1"` - `const HTTPLocationBrowserFamilyGetParamsTLSVersionTlSv1_2 HTTPLocationBrowserFamilyGetParamsTLSVersion = "TLSv1_2"` - `const HTTPLocationBrowserFamilyGetParamsTLSVersionTlSv1_3 HTTPLocationBrowserFamilyGetParamsTLSVersion = "TLSv1_3"` - `const HTTPLocationBrowserFamilyGetParamsTLSVersionTlSvQuic HTTPLocationBrowserFamilyGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPLocationBrowserFamilyGetResponse struct{…}` - `Meta HTTPLocationBrowserFamilyGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfo` - `Annotations []HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPLocationBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPLocationBrowserFamilyGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPLocationBrowserFamilyGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationPercentage HTTPLocationBrowserFamilyGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationMin0Max HTTPLocationBrowserFamilyGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationMinMax HTTPLocationBrowserFamilyGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationRawValues HTTPLocationBrowserFamilyGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationPercentageChange HTTPLocationBrowserFamilyGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationRollingAverage HTTPLocationBrowserFamilyGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationOverlappedPercentage HTTPLocationBrowserFamilyGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPLocationBrowserFamilyGetResponseMetaNormalizationRatio HTTPLocationBrowserFamilyGetResponseMetaNormalization = "RATIO"` - `Units []HTTPLocationBrowserFamilyGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPLocationBrowserFamilyGetResponseTop0` - `ClientCountryAlpha2 string` - `ClientCountryName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) browserFamily, err := client.Radar.HTTP.Locations.BrowserFamily.Get( context.TODO(), radar.HTTPLocationBrowserFamilyGetParamsBrowserFamilyChrome, radar.HTTPLocationBrowserFamilyGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", browserFamily.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientCountryAlpha2": "PT", "clientCountryName": "Portugal", "value": "10" } ] }, "success": true } ``` # Ases ## Get top ASes by HTTP requests `client.Radar.HTTP.Ases.Get(ctx, query) (*HTTPAseGetResponse, error)` **get** `/radar/http/top/ases` Retrieves the top autonomous systems by HTTP requests. ### Parameters - `query HTTPAseGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseGetParamsBotClassLikelyAutomated HTTPAseGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseGetParamsBotClassLikelyHuman HTTPAseGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPAseGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseGetParamsBrowserFamilyChrome HTTPAseGetParamsBrowserFamily = "CHROME"` - `const HTTPAseGetParamsBrowserFamilyEdge HTTPAseGetParamsBrowserFamily = "EDGE"` - `const HTTPAseGetParamsBrowserFamilyFirefox HTTPAseGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseGetParamsBrowserFamilySafari HTTPAseGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseGetParamsDeviceType]` Filters results by device type. - `const HTTPAseGetParamsDeviceTypeDesktop HTTPAseGetParamsDeviceType = "DESKTOP"` - `const HTTPAseGetParamsDeviceTypeMobile HTTPAseGetParamsDeviceType = "MOBILE"` - `const HTTPAseGetParamsDeviceTypeOther HTTPAseGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseGetParamsFormat]` Format in which results will be returned. - `const HTTPAseGetParamsFormatJson HTTPAseGetParamsFormat = "JSON"` - `const HTTPAseGetParamsFormatCsv HTTPAseGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseGetParamsHTTPProtocolHTTP HTTPAseGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseGetParamsHTTPProtocolHTTPS HTTPAseGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPAseGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseGetParamsHTTPVersionHttPv1 HTTPAseGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseGetParamsHTTPVersionHttPv2 HTTPAseGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseGetParamsHTTPVersionHttPv3 HTTPAseGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPAseGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseGetParamsIPVersionIPv4 HTTPAseGetParamsIPVersion = "IPv4"` - `const HTTPAseGetParamsIPVersionIPv6 HTTPAseGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseGetParamsOS]` Filters results by operating system. - `const HTTPAseGetParamsOSWindows HTTPAseGetParamsOS = "WINDOWS"` - `const HTTPAseGetParamsOSMacosx HTTPAseGetParamsOS = "MACOSX"` - `const HTTPAseGetParamsOSIos HTTPAseGetParamsOS = "IOS"` - `const HTTPAseGetParamsOSAndroid HTTPAseGetParamsOS = "ANDROID"` - `const HTTPAseGetParamsOSChromeos HTTPAseGetParamsOS = "CHROMEOS"` - `const HTTPAseGetParamsOSLinux HTTPAseGetParamsOS = "LINUX"` - `const HTTPAseGetParamsOSSmartTv HTTPAseGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPAseGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseGetParamsTLSVersionTlSv1_0 HTTPAseGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseGetParamsTLSVersionTlSv1_1 HTTPAseGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseGetParamsTLSVersionTlSv1_2 HTTPAseGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseGetParamsTLSVersionTlSv1_3 HTTPAseGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseGetParamsTLSVersionTlSvQuic HTTPAseGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseGetResponse struct{…}` - `Meta HTTPAseGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseGetResponseMetaNormalizationPercentage HTTPAseGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseGetResponseMetaNormalizationMin0Max HTTPAseGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseGetResponseMetaNormalizationMinMax HTTPAseGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseGetResponseMetaNormalizationRawValues HTTPAseGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseGetResponseMetaNormalizationPercentageChange HTTPAseGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseGetResponseMetaNormalizationRollingAverage HTTPAseGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseGetResponseMetaNormalizationOverlappedPercentage HTTPAseGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseGetResponseMetaNormalizationRatio HTTPAseGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) ase, err := client.Radar.HTTP.Ases.Get(context.TODO(), radar.HTTPAseGetParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", ase.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # Bot Class ## Get top ASes by HTTP requests for a bot class `client.Radar.HTTP.Ases.BotClass.Get(ctx, botClass, query) (*HTTPAseBotClassGetResponse, error)` **get** `/radar/http/top/ases/bot_class/{bot_class}` Retrieves the top autonomous systems, by HTTP requests, of the requested bot class. ### Parameters - `botClass HTTPAseBotClassGetParamsBotClass` Bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseBotClassGetParamsBotClassLikelyAutomated HTTPAseBotClassGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseBotClassGetParamsBotClassLikelyHuman HTTPAseBotClassGetParamsBotClass = "LIKELY_HUMAN"` - `query HTTPAseBotClassGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BrowserFamily param.Field[[]HTTPAseBotClassGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseBotClassGetParamsBrowserFamilyChrome HTTPAseBotClassGetParamsBrowserFamily = "CHROME"` - `const HTTPAseBotClassGetParamsBrowserFamilyEdge HTTPAseBotClassGetParamsBrowserFamily = "EDGE"` - `const HTTPAseBotClassGetParamsBrowserFamilyFirefox HTTPAseBotClassGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseBotClassGetParamsBrowserFamilySafari HTTPAseBotClassGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseBotClassGetParamsDeviceType]` Filters results by device type. - `const HTTPAseBotClassGetParamsDeviceTypeDesktop HTTPAseBotClassGetParamsDeviceType = "DESKTOP"` - `const HTTPAseBotClassGetParamsDeviceTypeMobile HTTPAseBotClassGetParamsDeviceType = "MOBILE"` - `const HTTPAseBotClassGetParamsDeviceTypeOther HTTPAseBotClassGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseBotClassGetParamsFormat]` Format in which results will be returned. - `const HTTPAseBotClassGetParamsFormatJson HTTPAseBotClassGetParamsFormat = "JSON"` - `const HTTPAseBotClassGetParamsFormatCsv HTTPAseBotClassGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseBotClassGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseBotClassGetParamsHTTPProtocolHTTP HTTPAseBotClassGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseBotClassGetParamsHTTPProtocolHTTPS HTTPAseBotClassGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPAseBotClassGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseBotClassGetParamsHTTPVersionHttPv1 HTTPAseBotClassGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseBotClassGetParamsHTTPVersionHttPv2 HTTPAseBotClassGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseBotClassGetParamsHTTPVersionHttPv3 HTTPAseBotClassGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPAseBotClassGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseBotClassGetParamsIPVersionIPv4 HTTPAseBotClassGetParamsIPVersion = "IPv4"` - `const HTTPAseBotClassGetParamsIPVersionIPv6 HTTPAseBotClassGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseBotClassGetParamsOS]` Filters results by operating system. - `const HTTPAseBotClassGetParamsOSWindows HTTPAseBotClassGetParamsOS = "WINDOWS"` - `const HTTPAseBotClassGetParamsOSMacosx HTTPAseBotClassGetParamsOS = "MACOSX"` - `const HTTPAseBotClassGetParamsOSIos HTTPAseBotClassGetParamsOS = "IOS"` - `const HTTPAseBotClassGetParamsOSAndroid HTTPAseBotClassGetParamsOS = "ANDROID"` - `const HTTPAseBotClassGetParamsOSChromeos HTTPAseBotClassGetParamsOS = "CHROMEOS"` - `const HTTPAseBotClassGetParamsOSLinux HTTPAseBotClassGetParamsOS = "LINUX"` - `const HTTPAseBotClassGetParamsOSSmartTv HTTPAseBotClassGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPAseBotClassGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseBotClassGetParamsTLSVersionTlSv1_0 HTTPAseBotClassGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseBotClassGetParamsTLSVersionTlSv1_1 HTTPAseBotClassGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseBotClassGetParamsTLSVersionTlSv1_2 HTTPAseBotClassGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseBotClassGetParamsTLSVersionTlSv1_3 HTTPAseBotClassGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseBotClassGetParamsTLSVersionTlSvQuic HTTPAseBotClassGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseBotClassGetResponse struct{…}` - `Meta HTTPAseBotClassGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseBotClassGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseBotClassGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseBotClassGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseBotClassGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseBotClassGetResponseMetaNormalizationPercentage HTTPAseBotClassGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseBotClassGetResponseMetaNormalizationMin0Max HTTPAseBotClassGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseBotClassGetResponseMetaNormalizationMinMax HTTPAseBotClassGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseBotClassGetResponseMetaNormalizationRawValues HTTPAseBotClassGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseBotClassGetResponseMetaNormalizationPercentageChange HTTPAseBotClassGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseBotClassGetResponseMetaNormalizationRollingAverage HTTPAseBotClassGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseBotClassGetResponseMetaNormalizationOverlappedPercentage HTTPAseBotClassGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseBotClassGetResponseMetaNormalizationRatio HTTPAseBotClassGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseBotClassGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseBotClassGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) botClass, err := client.Radar.HTTP.Ases.BotClass.Get( context.TODO(), radar.HTTPAseBotClassGetParamsBotClassLikelyAutomated, radar.HTTPAseBotClassGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", botClass.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # Device Type ## Get top ASes by HTTP requests for a device type `client.Radar.HTTP.Ases.DeviceType.Get(ctx, deviceType, query) (*HTTPAseDeviceTypeGetResponse, error)` **get** `/radar/http/top/ases/device_type/{device_type}` Retrieves the top autonomous systems, by HTTP requests, of the requested device type. ### Parameters - `deviceType HTTPAseDeviceTypeGetParamsDeviceType` Device type. - `const HTTPAseDeviceTypeGetParamsDeviceTypeDesktop HTTPAseDeviceTypeGetParamsDeviceType = "DESKTOP"` - `const HTTPAseDeviceTypeGetParamsDeviceTypeMobile HTTPAseDeviceTypeGetParamsDeviceType = "MOBILE"` - `const HTTPAseDeviceTypeGetParamsDeviceTypeOther HTTPAseDeviceTypeGetParamsDeviceType = "OTHER"` - `query HTTPAseDeviceTypeGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseDeviceTypeGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseDeviceTypeGetParamsBotClassLikelyAutomated HTTPAseDeviceTypeGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseDeviceTypeGetParamsBotClassLikelyHuman HTTPAseDeviceTypeGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPAseDeviceTypeGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseDeviceTypeGetParamsBrowserFamilyChrome HTTPAseDeviceTypeGetParamsBrowserFamily = "CHROME"` - `const HTTPAseDeviceTypeGetParamsBrowserFamilyEdge HTTPAseDeviceTypeGetParamsBrowserFamily = "EDGE"` - `const HTTPAseDeviceTypeGetParamsBrowserFamilyFirefox HTTPAseDeviceTypeGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseDeviceTypeGetParamsBrowserFamilySafari HTTPAseDeviceTypeGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `Format param.Field[HTTPAseDeviceTypeGetParamsFormat]` Format in which results will be returned. - `const HTTPAseDeviceTypeGetParamsFormatJson HTTPAseDeviceTypeGetParamsFormat = "JSON"` - `const HTTPAseDeviceTypeGetParamsFormatCsv HTTPAseDeviceTypeGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseDeviceTypeGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseDeviceTypeGetParamsHTTPProtocolHTTP HTTPAseDeviceTypeGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseDeviceTypeGetParamsHTTPProtocolHTTPS HTTPAseDeviceTypeGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPAseDeviceTypeGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseDeviceTypeGetParamsHTTPVersionHttPv1 HTTPAseDeviceTypeGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseDeviceTypeGetParamsHTTPVersionHttPv2 HTTPAseDeviceTypeGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseDeviceTypeGetParamsHTTPVersionHttPv3 HTTPAseDeviceTypeGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPAseDeviceTypeGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseDeviceTypeGetParamsIPVersionIPv4 HTTPAseDeviceTypeGetParamsIPVersion = "IPv4"` - `const HTTPAseDeviceTypeGetParamsIPVersionIPv6 HTTPAseDeviceTypeGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseDeviceTypeGetParamsOS]` Filters results by operating system. - `const HTTPAseDeviceTypeGetParamsOSWindows HTTPAseDeviceTypeGetParamsOS = "WINDOWS"` - `const HTTPAseDeviceTypeGetParamsOSMacosx HTTPAseDeviceTypeGetParamsOS = "MACOSX"` - `const HTTPAseDeviceTypeGetParamsOSIos HTTPAseDeviceTypeGetParamsOS = "IOS"` - `const HTTPAseDeviceTypeGetParamsOSAndroid HTTPAseDeviceTypeGetParamsOS = "ANDROID"` - `const HTTPAseDeviceTypeGetParamsOSChromeos HTTPAseDeviceTypeGetParamsOS = "CHROMEOS"` - `const HTTPAseDeviceTypeGetParamsOSLinux HTTPAseDeviceTypeGetParamsOS = "LINUX"` - `const HTTPAseDeviceTypeGetParamsOSSmartTv HTTPAseDeviceTypeGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPAseDeviceTypeGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseDeviceTypeGetParamsTLSVersionTlSv1_0 HTTPAseDeviceTypeGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseDeviceTypeGetParamsTLSVersionTlSv1_1 HTTPAseDeviceTypeGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseDeviceTypeGetParamsTLSVersionTlSv1_2 HTTPAseDeviceTypeGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseDeviceTypeGetParamsTLSVersionTlSv1_3 HTTPAseDeviceTypeGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseDeviceTypeGetParamsTLSVersionTlSvQuic HTTPAseDeviceTypeGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseDeviceTypeGetResponse struct{…}` - `Meta HTTPAseDeviceTypeGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseDeviceTypeGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseDeviceTypeGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseDeviceTypeGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseDeviceTypeGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseDeviceTypeGetResponseMetaNormalizationPercentage HTTPAseDeviceTypeGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseDeviceTypeGetResponseMetaNormalizationMin0Max HTTPAseDeviceTypeGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseDeviceTypeGetResponseMetaNormalizationMinMax HTTPAseDeviceTypeGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseDeviceTypeGetResponseMetaNormalizationRawValues HTTPAseDeviceTypeGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseDeviceTypeGetResponseMetaNormalizationPercentageChange HTTPAseDeviceTypeGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseDeviceTypeGetResponseMetaNormalizationRollingAverage HTTPAseDeviceTypeGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseDeviceTypeGetResponseMetaNormalizationOverlappedPercentage HTTPAseDeviceTypeGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseDeviceTypeGetResponseMetaNormalizationRatio HTTPAseDeviceTypeGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseDeviceTypeGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseDeviceTypeGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) deviceType, err := client.Radar.HTTP.Ases.DeviceType.Get( context.TODO(), radar.HTTPAseDeviceTypeGetParamsDeviceTypeDesktop, radar.HTTPAseDeviceTypeGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", deviceType.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # HTTP Protocol ## Get top ASes by HTTP requests for an HTTP protocol `client.Radar.HTTP.Ases.HTTPProtocol.Get(ctx, httpProtocol, query) (*HTTPAseHTTPProtocolGetResponse, error)` **get** `/radar/http/top/ases/http_protocol/{http_protocol}` Retrieves the top autonomous systems, by HTTP requests, of the requested HTTP protocol. ### Parameters - `httpProtocol HTTPAseHTTPProtocolGetParamsHTTPProtocol` HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseHTTPProtocolGetParamsHTTPProtocolHTTP HTTPAseHTTPProtocolGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseHTTPProtocolGetParamsHTTPProtocolHTTPS HTTPAseHTTPProtocolGetParamsHTTPProtocol = "HTTPS"` - `query HTTPAseHTTPProtocolGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseHTTPProtocolGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseHTTPProtocolGetParamsBotClassLikelyAutomated HTTPAseHTTPProtocolGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseHTTPProtocolGetParamsBotClassLikelyHuman HTTPAseHTTPProtocolGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPAseHTTPProtocolGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseHTTPProtocolGetParamsBrowserFamilyChrome HTTPAseHTTPProtocolGetParamsBrowserFamily = "CHROME"` - `const HTTPAseHTTPProtocolGetParamsBrowserFamilyEdge HTTPAseHTTPProtocolGetParamsBrowserFamily = "EDGE"` - `const HTTPAseHTTPProtocolGetParamsBrowserFamilyFirefox HTTPAseHTTPProtocolGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseHTTPProtocolGetParamsBrowserFamilySafari HTTPAseHTTPProtocolGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseHTTPProtocolGetParamsDeviceType]` Filters results by device type. - `const HTTPAseHTTPProtocolGetParamsDeviceTypeDesktop HTTPAseHTTPProtocolGetParamsDeviceType = "DESKTOP"` - `const HTTPAseHTTPProtocolGetParamsDeviceTypeMobile HTTPAseHTTPProtocolGetParamsDeviceType = "MOBILE"` - `const HTTPAseHTTPProtocolGetParamsDeviceTypeOther HTTPAseHTTPProtocolGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseHTTPProtocolGetParamsFormat]` Format in which results will be returned. - `const HTTPAseHTTPProtocolGetParamsFormatJson HTTPAseHTTPProtocolGetParamsFormat = "JSON"` - `const HTTPAseHTTPProtocolGetParamsFormatCsv HTTPAseHTTPProtocolGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPVersion param.Field[[]HTTPAseHTTPProtocolGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseHTTPProtocolGetParamsHTTPVersionHttPv1 HTTPAseHTTPProtocolGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseHTTPProtocolGetParamsHTTPVersionHttPv2 HTTPAseHTTPProtocolGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseHTTPProtocolGetParamsHTTPVersionHttPv3 HTTPAseHTTPProtocolGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPAseHTTPProtocolGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseHTTPProtocolGetParamsIPVersionIPv4 HTTPAseHTTPProtocolGetParamsIPVersion = "IPv4"` - `const HTTPAseHTTPProtocolGetParamsIPVersionIPv6 HTTPAseHTTPProtocolGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseHTTPProtocolGetParamsOS]` Filters results by operating system. - `const HTTPAseHTTPProtocolGetParamsOSWindows HTTPAseHTTPProtocolGetParamsOS = "WINDOWS"` - `const HTTPAseHTTPProtocolGetParamsOSMacosx HTTPAseHTTPProtocolGetParamsOS = "MACOSX"` - `const HTTPAseHTTPProtocolGetParamsOSIos HTTPAseHTTPProtocolGetParamsOS = "IOS"` - `const HTTPAseHTTPProtocolGetParamsOSAndroid HTTPAseHTTPProtocolGetParamsOS = "ANDROID"` - `const HTTPAseHTTPProtocolGetParamsOSChromeos HTTPAseHTTPProtocolGetParamsOS = "CHROMEOS"` - `const HTTPAseHTTPProtocolGetParamsOSLinux HTTPAseHTTPProtocolGetParamsOS = "LINUX"` - `const HTTPAseHTTPProtocolGetParamsOSSmartTv HTTPAseHTTPProtocolGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPAseHTTPProtocolGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseHTTPProtocolGetParamsTLSVersionTlSv1_0 HTTPAseHTTPProtocolGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseHTTPProtocolGetParamsTLSVersionTlSv1_1 HTTPAseHTTPProtocolGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseHTTPProtocolGetParamsTLSVersionTlSv1_2 HTTPAseHTTPProtocolGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseHTTPProtocolGetParamsTLSVersionTlSv1_3 HTTPAseHTTPProtocolGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseHTTPProtocolGetParamsTLSVersionTlSvQuic HTTPAseHTTPProtocolGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseHTTPProtocolGetResponse struct{…}` - `Meta HTTPAseHTTPProtocolGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseHTTPProtocolGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseHTTPProtocolGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseHTTPProtocolGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseHTTPProtocolGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationPercentage HTTPAseHTTPProtocolGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationMin0Max HTTPAseHTTPProtocolGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationMinMax HTTPAseHTTPProtocolGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationRawValues HTTPAseHTTPProtocolGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationPercentageChange HTTPAseHTTPProtocolGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationRollingAverage HTTPAseHTTPProtocolGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationOverlappedPercentage HTTPAseHTTPProtocolGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseHTTPProtocolGetResponseMetaNormalizationRatio HTTPAseHTTPProtocolGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseHTTPProtocolGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseHTTPProtocolGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) httpProtocol, err := client.Radar.HTTP.Ases.HTTPProtocol.Get( context.TODO(), radar.HTTPAseHTTPProtocolGetParamsHTTPProtocolHTTP, radar.HTTPAseHTTPProtocolGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", httpProtocol.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # HTTP Method ## Get top ASes by HTTP requests for an HTTP version `client.Radar.HTTP.Ases.HTTPMethod.Get(ctx, httpVersion, query) (*HTTPAseHTTPMethodGetResponse, error)` **get** `/radar/http/top/ases/http_version/{http_version}` Retrieves the top autonomous systems, by HTTP requests, of the requested HTTP version. ### Parameters - `httpVersion HTTPAseHTTPMethodGetParamsHTTPVersion` HTTP version. - `const HTTPAseHTTPMethodGetParamsHTTPVersionHttPv1 HTTPAseHTTPMethodGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseHTTPMethodGetParamsHTTPVersionHttPv2 HTTPAseHTTPMethodGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseHTTPMethodGetParamsHTTPVersionHttPv3 HTTPAseHTTPMethodGetParamsHTTPVersion = "HTTPv3"` - `query HTTPAseHTTPMethodGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseHTTPMethodGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseHTTPMethodGetParamsBotClassLikelyAutomated HTTPAseHTTPMethodGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseHTTPMethodGetParamsBotClassLikelyHuman HTTPAseHTTPMethodGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPAseHTTPMethodGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseHTTPMethodGetParamsBrowserFamilyChrome HTTPAseHTTPMethodGetParamsBrowserFamily = "CHROME"` - `const HTTPAseHTTPMethodGetParamsBrowserFamilyEdge HTTPAseHTTPMethodGetParamsBrowserFamily = "EDGE"` - `const HTTPAseHTTPMethodGetParamsBrowserFamilyFirefox HTTPAseHTTPMethodGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseHTTPMethodGetParamsBrowserFamilySafari HTTPAseHTTPMethodGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseHTTPMethodGetParamsDeviceType]` Filters results by device type. - `const HTTPAseHTTPMethodGetParamsDeviceTypeDesktop HTTPAseHTTPMethodGetParamsDeviceType = "DESKTOP"` - `const HTTPAseHTTPMethodGetParamsDeviceTypeMobile HTTPAseHTTPMethodGetParamsDeviceType = "MOBILE"` - `const HTTPAseHTTPMethodGetParamsDeviceTypeOther HTTPAseHTTPMethodGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseHTTPMethodGetParamsFormat]` Format in which results will be returned. - `const HTTPAseHTTPMethodGetParamsFormatJson HTTPAseHTTPMethodGetParamsFormat = "JSON"` - `const HTTPAseHTTPMethodGetParamsFormatCsv HTTPAseHTTPMethodGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseHTTPMethodGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseHTTPMethodGetParamsHTTPProtocolHTTP HTTPAseHTTPMethodGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseHTTPMethodGetParamsHTTPProtocolHTTPS HTTPAseHTTPMethodGetParamsHTTPProtocol = "HTTPS"` - `IPVersion param.Field[[]HTTPAseHTTPMethodGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseHTTPMethodGetParamsIPVersionIPv4 HTTPAseHTTPMethodGetParamsIPVersion = "IPv4"` - `const HTTPAseHTTPMethodGetParamsIPVersionIPv6 HTTPAseHTTPMethodGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseHTTPMethodGetParamsOS]` Filters results by operating system. - `const HTTPAseHTTPMethodGetParamsOSWindows HTTPAseHTTPMethodGetParamsOS = "WINDOWS"` - `const HTTPAseHTTPMethodGetParamsOSMacosx HTTPAseHTTPMethodGetParamsOS = "MACOSX"` - `const HTTPAseHTTPMethodGetParamsOSIos HTTPAseHTTPMethodGetParamsOS = "IOS"` - `const HTTPAseHTTPMethodGetParamsOSAndroid HTTPAseHTTPMethodGetParamsOS = "ANDROID"` - `const HTTPAseHTTPMethodGetParamsOSChromeos HTTPAseHTTPMethodGetParamsOS = "CHROMEOS"` - `const HTTPAseHTTPMethodGetParamsOSLinux HTTPAseHTTPMethodGetParamsOS = "LINUX"` - `const HTTPAseHTTPMethodGetParamsOSSmartTv HTTPAseHTTPMethodGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPAseHTTPMethodGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseHTTPMethodGetParamsTLSVersionTlSv1_0 HTTPAseHTTPMethodGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseHTTPMethodGetParamsTLSVersionTlSv1_1 HTTPAseHTTPMethodGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseHTTPMethodGetParamsTLSVersionTlSv1_2 HTTPAseHTTPMethodGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseHTTPMethodGetParamsTLSVersionTlSv1_3 HTTPAseHTTPMethodGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseHTTPMethodGetParamsTLSVersionTlSvQuic HTTPAseHTTPMethodGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseHTTPMethodGetResponse struct{…}` - `Meta HTTPAseHTTPMethodGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseHTTPMethodGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseHTTPMethodGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseHTTPMethodGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseHTTPMethodGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseHTTPMethodGetResponseMetaNormalizationPercentage HTTPAseHTTPMethodGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseHTTPMethodGetResponseMetaNormalizationMin0Max HTTPAseHTTPMethodGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseHTTPMethodGetResponseMetaNormalizationMinMax HTTPAseHTTPMethodGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseHTTPMethodGetResponseMetaNormalizationRawValues HTTPAseHTTPMethodGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseHTTPMethodGetResponseMetaNormalizationPercentageChange HTTPAseHTTPMethodGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseHTTPMethodGetResponseMetaNormalizationRollingAverage HTTPAseHTTPMethodGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseHTTPMethodGetResponseMetaNormalizationOverlappedPercentage HTTPAseHTTPMethodGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseHTTPMethodGetResponseMetaNormalizationRatio HTTPAseHTTPMethodGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseHTTPMethodGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseHTTPMethodGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) httpMethod, err := client.Radar.HTTP.Ases.HTTPMethod.Get( context.TODO(), radar.HTTPAseHTTPMethodGetParamsHTTPVersionHttPv1, radar.HTTPAseHTTPMethodGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", httpMethod.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # IP Version ## Get top ASes by HTTP requests for an IP version `client.Radar.HTTP.Ases.IPVersion.Get(ctx, ipVersion, query) (*HTTPAseIPVersionGetResponse, error)` **get** `/radar/http/top/ases/ip_version/{ip_version}` Retrieves the top autonomous systems, by HTTP requests, of the requested IP version. ### Parameters - `ipVersion HTTPAseIPVersionGetParamsIPVersion` IP version. - `const HTTPAseIPVersionGetParamsIPVersionIPv4 HTTPAseIPVersionGetParamsIPVersion = "IPv4"` - `const HTTPAseIPVersionGetParamsIPVersionIPv6 HTTPAseIPVersionGetParamsIPVersion = "IPv6"` - `query HTTPAseIPVersionGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseIPVersionGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseIPVersionGetParamsBotClassLikelyAutomated HTTPAseIPVersionGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseIPVersionGetParamsBotClassLikelyHuman HTTPAseIPVersionGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPAseIPVersionGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseIPVersionGetParamsBrowserFamilyChrome HTTPAseIPVersionGetParamsBrowserFamily = "CHROME"` - `const HTTPAseIPVersionGetParamsBrowserFamilyEdge HTTPAseIPVersionGetParamsBrowserFamily = "EDGE"` - `const HTTPAseIPVersionGetParamsBrowserFamilyFirefox HTTPAseIPVersionGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseIPVersionGetParamsBrowserFamilySafari HTTPAseIPVersionGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseIPVersionGetParamsDeviceType]` Filters results by device type. - `const HTTPAseIPVersionGetParamsDeviceTypeDesktop HTTPAseIPVersionGetParamsDeviceType = "DESKTOP"` - `const HTTPAseIPVersionGetParamsDeviceTypeMobile HTTPAseIPVersionGetParamsDeviceType = "MOBILE"` - `const HTTPAseIPVersionGetParamsDeviceTypeOther HTTPAseIPVersionGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseIPVersionGetParamsFormat]` Format in which results will be returned. - `const HTTPAseIPVersionGetParamsFormatJson HTTPAseIPVersionGetParamsFormat = "JSON"` - `const HTTPAseIPVersionGetParamsFormatCsv HTTPAseIPVersionGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseIPVersionGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseIPVersionGetParamsHTTPProtocolHTTP HTTPAseIPVersionGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseIPVersionGetParamsHTTPProtocolHTTPS HTTPAseIPVersionGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPAseIPVersionGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseIPVersionGetParamsHTTPVersionHttPv1 HTTPAseIPVersionGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseIPVersionGetParamsHTTPVersionHttPv2 HTTPAseIPVersionGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseIPVersionGetParamsHTTPVersionHttPv3 HTTPAseIPVersionGetParamsHTTPVersion = "HTTPv3"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseIPVersionGetParamsOS]` Filters results by operating system. - `const HTTPAseIPVersionGetParamsOSWindows HTTPAseIPVersionGetParamsOS = "WINDOWS"` - `const HTTPAseIPVersionGetParamsOSMacosx HTTPAseIPVersionGetParamsOS = "MACOSX"` - `const HTTPAseIPVersionGetParamsOSIos HTTPAseIPVersionGetParamsOS = "IOS"` - `const HTTPAseIPVersionGetParamsOSAndroid HTTPAseIPVersionGetParamsOS = "ANDROID"` - `const HTTPAseIPVersionGetParamsOSChromeos HTTPAseIPVersionGetParamsOS = "CHROMEOS"` - `const HTTPAseIPVersionGetParamsOSLinux HTTPAseIPVersionGetParamsOS = "LINUX"` - `const HTTPAseIPVersionGetParamsOSSmartTv HTTPAseIPVersionGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPAseIPVersionGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseIPVersionGetParamsTLSVersionTlSv1_0 HTTPAseIPVersionGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseIPVersionGetParamsTLSVersionTlSv1_1 HTTPAseIPVersionGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseIPVersionGetParamsTLSVersionTlSv1_2 HTTPAseIPVersionGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseIPVersionGetParamsTLSVersionTlSv1_3 HTTPAseIPVersionGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseIPVersionGetParamsTLSVersionTlSvQuic HTTPAseIPVersionGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseIPVersionGetResponse struct{…}` - `Meta HTTPAseIPVersionGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseIPVersionGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseIPVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseIPVersionGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseIPVersionGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseIPVersionGetResponseMetaNormalizationPercentage HTTPAseIPVersionGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseIPVersionGetResponseMetaNormalizationMin0Max HTTPAseIPVersionGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseIPVersionGetResponseMetaNormalizationMinMax HTTPAseIPVersionGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseIPVersionGetResponseMetaNormalizationRawValues HTTPAseIPVersionGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseIPVersionGetResponseMetaNormalizationPercentageChange HTTPAseIPVersionGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseIPVersionGetResponseMetaNormalizationRollingAverage HTTPAseIPVersionGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseIPVersionGetResponseMetaNormalizationOverlappedPercentage HTTPAseIPVersionGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseIPVersionGetResponseMetaNormalizationRatio HTTPAseIPVersionGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseIPVersionGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseIPVersionGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) ipVersion, err := client.Radar.HTTP.Ases.IPVersion.Get( context.TODO(), radar.HTTPAseIPVersionGetParamsIPVersionIPv4, radar.HTTPAseIPVersionGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", ipVersion.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # OS ## Get top ASes by HTTP requests for an OS `client.Radar.HTTP.Ases.OS.Get(ctx, os, query) (*HTTPAseOSGetResponse, error)` **get** `/radar/http/top/ases/os/{os}` Retrieves the top autonomous systems, by HTTP requests, of the requested operating system. ### Parameters - `os HTTPAseOSGetParamsOS` Operating system. - `const HTTPAseOSGetParamsOSWindows HTTPAseOSGetParamsOS = "WINDOWS"` - `const HTTPAseOSGetParamsOSMacosx HTTPAseOSGetParamsOS = "MACOSX"` - `const HTTPAseOSGetParamsOSIos HTTPAseOSGetParamsOS = "IOS"` - `const HTTPAseOSGetParamsOSAndroid HTTPAseOSGetParamsOS = "ANDROID"` - `const HTTPAseOSGetParamsOSChromeos HTTPAseOSGetParamsOS = "CHROMEOS"` - `const HTTPAseOSGetParamsOSLinux HTTPAseOSGetParamsOS = "LINUX"` - `const HTTPAseOSGetParamsOSSmartTv HTTPAseOSGetParamsOS = "SMART_TV"` - `query HTTPAseOSGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseOSGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseOSGetParamsBotClassLikelyAutomated HTTPAseOSGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseOSGetParamsBotClassLikelyHuman HTTPAseOSGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPAseOSGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseOSGetParamsBrowserFamilyChrome HTTPAseOSGetParamsBrowserFamily = "CHROME"` - `const HTTPAseOSGetParamsBrowserFamilyEdge HTTPAseOSGetParamsBrowserFamily = "EDGE"` - `const HTTPAseOSGetParamsBrowserFamilyFirefox HTTPAseOSGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseOSGetParamsBrowserFamilySafari HTTPAseOSGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseOSGetParamsDeviceType]` Filters results by device type. - `const HTTPAseOSGetParamsDeviceTypeDesktop HTTPAseOSGetParamsDeviceType = "DESKTOP"` - `const HTTPAseOSGetParamsDeviceTypeMobile HTTPAseOSGetParamsDeviceType = "MOBILE"` - `const HTTPAseOSGetParamsDeviceTypeOther HTTPAseOSGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseOSGetParamsFormat]` Format in which results will be returned. - `const HTTPAseOSGetParamsFormatJson HTTPAseOSGetParamsFormat = "JSON"` - `const HTTPAseOSGetParamsFormatCsv HTTPAseOSGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseOSGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseOSGetParamsHTTPProtocolHTTP HTTPAseOSGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseOSGetParamsHTTPProtocolHTTPS HTTPAseOSGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPAseOSGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseOSGetParamsHTTPVersionHttPv1 HTTPAseOSGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseOSGetParamsHTTPVersionHttPv2 HTTPAseOSGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseOSGetParamsHTTPVersionHttPv3 HTTPAseOSGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPAseOSGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseOSGetParamsIPVersionIPv4 HTTPAseOSGetParamsIPVersion = "IPv4"` - `const HTTPAseOSGetParamsIPVersionIPv6 HTTPAseOSGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `TLSVersion param.Field[[]HTTPAseOSGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseOSGetParamsTLSVersionTlSv1_0 HTTPAseOSGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseOSGetParamsTLSVersionTlSv1_1 HTTPAseOSGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseOSGetParamsTLSVersionTlSv1_2 HTTPAseOSGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseOSGetParamsTLSVersionTlSv1_3 HTTPAseOSGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseOSGetParamsTLSVersionTlSvQuic HTTPAseOSGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseOSGetResponse struct{…}` - `Meta HTTPAseOSGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseOSGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseOSGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseOSGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseOSGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseOSGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseOSGetResponseMetaNormalizationPercentage HTTPAseOSGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseOSGetResponseMetaNormalizationMin0Max HTTPAseOSGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseOSGetResponseMetaNormalizationMinMax HTTPAseOSGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseOSGetResponseMetaNormalizationRawValues HTTPAseOSGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseOSGetResponseMetaNormalizationPercentageChange HTTPAseOSGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseOSGetResponseMetaNormalizationRollingAverage HTTPAseOSGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseOSGetResponseMetaNormalizationOverlappedPercentage HTTPAseOSGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseOSGetResponseMetaNormalizationRatio HTTPAseOSGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseOSGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseOSGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) os, err := client.Radar.HTTP.Ases.OS.Get( context.TODO(), radar.HTTPAseOSGetParamsOSWindows, radar.HTTPAseOSGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", os.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # TLS Version ## Get top ASes by HTTP requests for a TLS version `client.Radar.HTTP.Ases.TLSVersion.Get(ctx, tlsVersion, query) (*HTTPAseTLSVersionGetResponse, error)` **get** `/radar/http/top/ases/tls_version/{tls_version}` Retrieves the top autonomous systems, by HTTP requests, of the requested TLS protocol version. ### Parameters - `tlsVersion HTTPAseTLSVersionGetParamsTLSVersion` TLS version. - `const HTTPAseTLSVersionGetParamsTLSVersionTlSv1_0 HTTPAseTLSVersionGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseTLSVersionGetParamsTLSVersionTlSv1_1 HTTPAseTLSVersionGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseTLSVersionGetParamsTLSVersionTlSv1_2 HTTPAseTLSVersionGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseTLSVersionGetParamsTLSVersionTlSv1_3 HTTPAseTLSVersionGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseTLSVersionGetParamsTLSVersionTlSvQuic HTTPAseTLSVersionGetParamsTLSVersion = "TLSvQUIC"` - `query HTTPAseTLSVersionGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseTLSVersionGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseTLSVersionGetParamsBotClassLikelyAutomated HTTPAseTLSVersionGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseTLSVersionGetParamsBotClassLikelyHuman HTTPAseTLSVersionGetParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPAseTLSVersionGetParamsBrowserFamily]` Filters results by browser family. - `const HTTPAseTLSVersionGetParamsBrowserFamilyChrome HTTPAseTLSVersionGetParamsBrowserFamily = "CHROME"` - `const HTTPAseTLSVersionGetParamsBrowserFamilyEdge HTTPAseTLSVersionGetParamsBrowserFamily = "EDGE"` - `const HTTPAseTLSVersionGetParamsBrowserFamilyFirefox HTTPAseTLSVersionGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseTLSVersionGetParamsBrowserFamilySafari HTTPAseTLSVersionGetParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseTLSVersionGetParamsDeviceType]` Filters results by device type. - `const HTTPAseTLSVersionGetParamsDeviceTypeDesktop HTTPAseTLSVersionGetParamsDeviceType = "DESKTOP"` - `const HTTPAseTLSVersionGetParamsDeviceTypeMobile HTTPAseTLSVersionGetParamsDeviceType = "MOBILE"` - `const HTTPAseTLSVersionGetParamsDeviceTypeOther HTTPAseTLSVersionGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseTLSVersionGetParamsFormat]` Format in which results will be returned. - `const HTTPAseTLSVersionGetParamsFormatJson HTTPAseTLSVersionGetParamsFormat = "JSON"` - `const HTTPAseTLSVersionGetParamsFormatCsv HTTPAseTLSVersionGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseTLSVersionGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseTLSVersionGetParamsHTTPProtocolHTTP HTTPAseTLSVersionGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseTLSVersionGetParamsHTTPProtocolHTTPS HTTPAseTLSVersionGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPAseTLSVersionGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseTLSVersionGetParamsHTTPVersionHttPv1 HTTPAseTLSVersionGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseTLSVersionGetParamsHTTPVersionHttPv2 HTTPAseTLSVersionGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseTLSVersionGetParamsHTTPVersionHttPv3 HTTPAseTLSVersionGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPAseTLSVersionGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseTLSVersionGetParamsIPVersionIPv4 HTTPAseTLSVersionGetParamsIPVersion = "IPv4"` - `const HTTPAseTLSVersionGetParamsIPVersionIPv6 HTTPAseTLSVersionGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseTLSVersionGetParamsOS]` Filters results by operating system. - `const HTTPAseTLSVersionGetParamsOSWindows HTTPAseTLSVersionGetParamsOS = "WINDOWS"` - `const HTTPAseTLSVersionGetParamsOSMacosx HTTPAseTLSVersionGetParamsOS = "MACOSX"` - `const HTTPAseTLSVersionGetParamsOSIos HTTPAseTLSVersionGetParamsOS = "IOS"` - `const HTTPAseTLSVersionGetParamsOSAndroid HTTPAseTLSVersionGetParamsOS = "ANDROID"` - `const HTTPAseTLSVersionGetParamsOSChromeos HTTPAseTLSVersionGetParamsOS = "CHROMEOS"` - `const HTTPAseTLSVersionGetParamsOSLinux HTTPAseTLSVersionGetParamsOS = "LINUX"` - `const HTTPAseTLSVersionGetParamsOSSmartTv HTTPAseTLSVersionGetParamsOS = "SMART_TV"` ### Returns - `type HTTPAseTLSVersionGetResponse struct{…}` - `Meta HTTPAseTLSVersionGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseTLSVersionGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseTLSVersionGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseTLSVersionGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseTLSVersionGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseTLSVersionGetResponseMetaNormalizationPercentage HTTPAseTLSVersionGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseTLSVersionGetResponseMetaNormalizationMin0Max HTTPAseTLSVersionGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseTLSVersionGetResponseMetaNormalizationMinMax HTTPAseTLSVersionGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseTLSVersionGetResponseMetaNormalizationRawValues HTTPAseTLSVersionGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseTLSVersionGetResponseMetaNormalizationPercentageChange HTTPAseTLSVersionGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseTLSVersionGetResponseMetaNormalizationRollingAverage HTTPAseTLSVersionGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseTLSVersionGetResponseMetaNormalizationOverlappedPercentage HTTPAseTLSVersionGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseTLSVersionGetResponseMetaNormalizationRatio HTTPAseTLSVersionGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseTLSVersionGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseTLSVersionGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) tlsVersion, err := client.Radar.HTTP.Ases.TLSVersion.Get( context.TODO(), radar.HTTPAseTLSVersionGetParamsTLSVersionTlSv1_0, radar.HTTPAseTLSVersionGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", tlsVersion.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # Browser Family ## Get top ASes by HTTP requests for a browser family `client.Radar.HTTP.Ases.BrowserFamily.Get(ctx, browserFamily, query) (*HTTPAseBrowserFamilyGetResponse, error)` **get** `/radar/http/top/ases/browser_family/{browser_family}` Retrieves the top autonomous systems, by HTTP requests, of the requested browser family. ### Parameters - `browserFamily HTTPAseBrowserFamilyGetParamsBrowserFamily` Browser family. - `const HTTPAseBrowserFamilyGetParamsBrowserFamilyChrome HTTPAseBrowserFamilyGetParamsBrowserFamily = "CHROME"` - `const HTTPAseBrowserFamilyGetParamsBrowserFamilyEdge HTTPAseBrowserFamilyGetParamsBrowserFamily = "EDGE"` - `const HTTPAseBrowserFamilyGetParamsBrowserFamilyFirefox HTTPAseBrowserFamilyGetParamsBrowserFamily = "FIREFOX"` - `const HTTPAseBrowserFamilyGetParamsBrowserFamilySafari HTTPAseBrowserFamilyGetParamsBrowserFamily = "SAFARI"` - `query HTTPAseBrowserFamilyGetParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPAseBrowserFamilyGetParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPAseBrowserFamilyGetParamsBotClassLikelyAutomated HTTPAseBrowserFamilyGetParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPAseBrowserFamilyGetParamsBotClassLikelyHuman HTTPAseBrowserFamilyGetParamsBotClass = "LIKELY_HUMAN"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPAseBrowserFamilyGetParamsDeviceType]` Filters results by device type. - `const HTTPAseBrowserFamilyGetParamsDeviceTypeDesktop HTTPAseBrowserFamilyGetParamsDeviceType = "DESKTOP"` - `const HTTPAseBrowserFamilyGetParamsDeviceTypeMobile HTTPAseBrowserFamilyGetParamsDeviceType = "MOBILE"` - `const HTTPAseBrowserFamilyGetParamsDeviceTypeOther HTTPAseBrowserFamilyGetParamsDeviceType = "OTHER"` - `Format param.Field[HTTPAseBrowserFamilyGetParamsFormat]` Format in which results will be returned. - `const HTTPAseBrowserFamilyGetParamsFormatJson HTTPAseBrowserFamilyGetParamsFormat = "JSON"` - `const HTTPAseBrowserFamilyGetParamsFormatCsv HTTPAseBrowserFamilyGetParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPAseBrowserFamilyGetParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPAseBrowserFamilyGetParamsHTTPProtocolHTTP HTTPAseBrowserFamilyGetParamsHTTPProtocol = "HTTP"` - `const HTTPAseBrowserFamilyGetParamsHTTPProtocolHTTPS HTTPAseBrowserFamilyGetParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPAseBrowserFamilyGetParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPAseBrowserFamilyGetParamsHTTPVersionHttPv1 HTTPAseBrowserFamilyGetParamsHTTPVersion = "HTTPv1"` - `const HTTPAseBrowserFamilyGetParamsHTTPVersionHttPv2 HTTPAseBrowserFamilyGetParamsHTTPVersion = "HTTPv2"` - `const HTTPAseBrowserFamilyGetParamsHTTPVersionHttPv3 HTTPAseBrowserFamilyGetParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPAseBrowserFamilyGetParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPAseBrowserFamilyGetParamsIPVersionIPv4 HTTPAseBrowserFamilyGetParamsIPVersion = "IPv4"` - `const HTTPAseBrowserFamilyGetParamsIPVersionIPv6 HTTPAseBrowserFamilyGetParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPAseBrowserFamilyGetParamsOS]` Filters results by operating system. - `const HTTPAseBrowserFamilyGetParamsOSWindows HTTPAseBrowserFamilyGetParamsOS = "WINDOWS"` - `const HTTPAseBrowserFamilyGetParamsOSMacosx HTTPAseBrowserFamilyGetParamsOS = "MACOSX"` - `const HTTPAseBrowserFamilyGetParamsOSIos HTTPAseBrowserFamilyGetParamsOS = "IOS"` - `const HTTPAseBrowserFamilyGetParamsOSAndroid HTTPAseBrowserFamilyGetParamsOS = "ANDROID"` - `const HTTPAseBrowserFamilyGetParamsOSChromeos HTTPAseBrowserFamilyGetParamsOS = "CHROMEOS"` - `const HTTPAseBrowserFamilyGetParamsOSLinux HTTPAseBrowserFamilyGetParamsOS = "LINUX"` - `const HTTPAseBrowserFamilyGetParamsOSSmartTv HTTPAseBrowserFamilyGetParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPAseBrowserFamilyGetParamsTLSVersion]` Filters results by TLS version. - `const HTTPAseBrowserFamilyGetParamsTLSVersionTlSv1_0 HTTPAseBrowserFamilyGetParamsTLSVersion = "TLSv1_0"` - `const HTTPAseBrowserFamilyGetParamsTLSVersionTlSv1_1 HTTPAseBrowserFamilyGetParamsTLSVersion = "TLSv1_1"` - `const HTTPAseBrowserFamilyGetParamsTLSVersionTlSv1_2 HTTPAseBrowserFamilyGetParamsTLSVersion = "TLSv1_2"` - `const HTTPAseBrowserFamilyGetParamsTLSVersionTlSv1_3 HTTPAseBrowserFamilyGetParamsTLSVersion = "TLSv1_3"` - `const HTTPAseBrowserFamilyGetParamsTLSVersionTlSvQuic HTTPAseBrowserFamilyGetParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPAseBrowserFamilyGetResponse struct{…}` - `Meta HTTPAseBrowserFamilyGetResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPAseBrowserFamilyGetResponseMetaConfidenceInfo` - `Annotations []HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPAseBrowserFamilyGetResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPAseBrowserFamilyGetResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPAseBrowserFamilyGetResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationPercentage HTTPAseBrowserFamilyGetResponseMetaNormalization = "PERCENTAGE"` - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationMin0Max HTTPAseBrowserFamilyGetResponseMetaNormalization = "MIN0_MAX"` - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationMinMax HTTPAseBrowserFamilyGetResponseMetaNormalization = "MIN_MAX"` - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationRawValues HTTPAseBrowserFamilyGetResponseMetaNormalization = "RAW_VALUES"` - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationPercentageChange HTTPAseBrowserFamilyGetResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationRollingAverage HTTPAseBrowserFamilyGetResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationOverlappedPercentage HTTPAseBrowserFamilyGetResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPAseBrowserFamilyGetResponseMetaNormalizationRatio HTTPAseBrowserFamilyGetResponseMetaNormalization = "RATIO"` - `Units []HTTPAseBrowserFamilyGetResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPAseBrowserFamilyGetResponseTop0` - `ClientASN int64` - `ClientAsName string` - `Value string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) browserFamily, err := client.Radar.HTTP.Ases.BrowserFamily.Get( context.TODO(), radar.HTTPAseBrowserFamilyGetParamsBrowserFamilyChrome, radar.HTTPAseBrowserFamilyGetParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", browserFamily.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "clientASN": 3243, "clientASName": "MEO", "value": "10" } ] }, "success": true } ``` # Summary ## Get HTTP requests by bot class summary `client.Radar.HTTP.Summary.BotClass(ctx, query) (*HTTPSummaryBotClassResponse, error)` **get** `/radar/http/summary/bot_class` Retrieves the distribution of bot-generated HTTP requests to genuine human traffic, as classified by Cloudflare. Visit https://developers.cloudflare.com/radar/concepts/bot-classes/ for more information. ### Parameters - `query HTTPSummaryBotClassParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BrowserFamily param.Field[[]HTTPSummaryBotClassParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryBotClassParamsBrowserFamilyChrome HTTPSummaryBotClassParamsBrowserFamily = "CHROME"` - `const HTTPSummaryBotClassParamsBrowserFamilyEdge HTTPSummaryBotClassParamsBrowserFamily = "EDGE"` - `const HTTPSummaryBotClassParamsBrowserFamilyFirefox HTTPSummaryBotClassParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryBotClassParamsBrowserFamilySafari HTTPSummaryBotClassParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryBotClassParamsDeviceType]` Filters results by device type. - `const HTTPSummaryBotClassParamsDeviceTypeDesktop HTTPSummaryBotClassParamsDeviceType = "DESKTOP"` - `const HTTPSummaryBotClassParamsDeviceTypeMobile HTTPSummaryBotClassParamsDeviceType = "MOBILE"` - `const HTTPSummaryBotClassParamsDeviceTypeOther HTTPSummaryBotClassParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryBotClassParamsFormat]` Format in which results will be returned. - `const HTTPSummaryBotClassParamsFormatJson HTTPSummaryBotClassParamsFormat = "JSON"` - `const HTTPSummaryBotClassParamsFormatCsv HTTPSummaryBotClassParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryBotClassParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryBotClassParamsHTTPProtocolHTTP HTTPSummaryBotClassParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryBotClassParamsHTTPProtocolHTTPS HTTPSummaryBotClassParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPSummaryBotClassParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryBotClassParamsHTTPVersionHttPv1 HTTPSummaryBotClassParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryBotClassParamsHTTPVersionHttPv2 HTTPSummaryBotClassParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryBotClassParamsHTTPVersionHttPv3 HTTPSummaryBotClassParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPSummaryBotClassParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryBotClassParamsIPVersionIPv4 HTTPSummaryBotClassParamsIPVersion = "IPv4"` - `const HTTPSummaryBotClassParamsIPVersionIPv6 HTTPSummaryBotClassParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryBotClassParamsOS]` Filters results by operating system. - `const HTTPSummaryBotClassParamsOSWindows HTTPSummaryBotClassParamsOS = "WINDOWS"` - `const HTTPSummaryBotClassParamsOSMacosx HTTPSummaryBotClassParamsOS = "MACOSX"` - `const HTTPSummaryBotClassParamsOSIos HTTPSummaryBotClassParamsOS = "IOS"` - `const HTTPSummaryBotClassParamsOSAndroid HTTPSummaryBotClassParamsOS = "ANDROID"` - `const HTTPSummaryBotClassParamsOSChromeos HTTPSummaryBotClassParamsOS = "CHROMEOS"` - `const HTTPSummaryBotClassParamsOSLinux HTTPSummaryBotClassParamsOS = "LINUX"` - `const HTTPSummaryBotClassParamsOSSmartTv HTTPSummaryBotClassParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPSummaryBotClassParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryBotClassParamsTLSVersionTlSv1_0 HTTPSummaryBotClassParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryBotClassParamsTLSVersionTlSv1_1 HTTPSummaryBotClassParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryBotClassParamsTLSVersionTlSv1_2 HTTPSummaryBotClassParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryBotClassParamsTLSVersionTlSv1_3 HTTPSummaryBotClassParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryBotClassParamsTLSVersionTlSvQuic HTTPSummaryBotClassParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryBotClassResponse struct{…}` - `Meta HTTPSummaryBotClassResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryBotClassResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryBotClassResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryBotClassResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryBotClassResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryBotClassResponseMetaNormalizationPercentage HTTPSummaryBotClassResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryBotClassResponseMetaNormalizationMin0Max HTTPSummaryBotClassResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryBotClassResponseMetaNormalizationMinMax HTTPSummaryBotClassResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryBotClassResponseMetaNormalizationRawValues HTTPSummaryBotClassResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryBotClassResponseMetaNormalizationPercentageChange HTTPSummaryBotClassResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryBotClassResponseMetaNormalizationRollingAverage HTTPSummaryBotClassResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryBotClassResponseMetaNormalizationOverlappedPercentage HTTPSummaryBotClassResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryBotClassResponseMetaNormalizationRatio HTTPSummaryBotClassResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryBotClassResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryBotClassResponseSummary0` - `Bot string` A numeric string. - `Human string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.BotClass(context.TODO(), radar.HTTPSummaryBotClassParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "bot": "10", "human": "10" } }, "success": true } ``` ## Get HTTP requests by device type summary `client.Radar.HTTP.Summary.DeviceType(ctx, query) (*HTTPSummaryDeviceTypeResponse, error)` **get** `/radar/http/summary/device_type` Retrieves the distribution of HTTP requests generated by mobile, desktop, and other types of devices. ### Parameters - `query HTTPSummaryDeviceTypeParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryDeviceTypeParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryDeviceTypeParamsBotClassLikelyAutomated HTTPSummaryDeviceTypeParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryDeviceTypeParamsBotClassLikelyHuman HTTPSummaryDeviceTypeParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPSummaryDeviceTypeParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryDeviceTypeParamsBrowserFamilyChrome HTTPSummaryDeviceTypeParamsBrowserFamily = "CHROME"` - `const HTTPSummaryDeviceTypeParamsBrowserFamilyEdge HTTPSummaryDeviceTypeParamsBrowserFamily = "EDGE"` - `const HTTPSummaryDeviceTypeParamsBrowserFamilyFirefox HTTPSummaryDeviceTypeParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryDeviceTypeParamsBrowserFamilySafari HTTPSummaryDeviceTypeParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `Format param.Field[HTTPSummaryDeviceTypeParamsFormat]` Format in which results will be returned. - `const HTTPSummaryDeviceTypeParamsFormatJson HTTPSummaryDeviceTypeParamsFormat = "JSON"` - `const HTTPSummaryDeviceTypeParamsFormatCsv HTTPSummaryDeviceTypeParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryDeviceTypeParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryDeviceTypeParamsHTTPProtocolHTTP HTTPSummaryDeviceTypeParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryDeviceTypeParamsHTTPProtocolHTTPS HTTPSummaryDeviceTypeParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPSummaryDeviceTypeParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryDeviceTypeParamsHTTPVersionHttPv1 HTTPSummaryDeviceTypeParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryDeviceTypeParamsHTTPVersionHttPv2 HTTPSummaryDeviceTypeParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryDeviceTypeParamsHTTPVersionHttPv3 HTTPSummaryDeviceTypeParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPSummaryDeviceTypeParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryDeviceTypeParamsIPVersionIPv4 HTTPSummaryDeviceTypeParamsIPVersion = "IPv4"` - `const HTTPSummaryDeviceTypeParamsIPVersionIPv6 HTTPSummaryDeviceTypeParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryDeviceTypeParamsOS]` Filters results by operating system. - `const HTTPSummaryDeviceTypeParamsOSWindows HTTPSummaryDeviceTypeParamsOS = "WINDOWS"` - `const HTTPSummaryDeviceTypeParamsOSMacosx HTTPSummaryDeviceTypeParamsOS = "MACOSX"` - `const HTTPSummaryDeviceTypeParamsOSIos HTTPSummaryDeviceTypeParamsOS = "IOS"` - `const HTTPSummaryDeviceTypeParamsOSAndroid HTTPSummaryDeviceTypeParamsOS = "ANDROID"` - `const HTTPSummaryDeviceTypeParamsOSChromeos HTTPSummaryDeviceTypeParamsOS = "CHROMEOS"` - `const HTTPSummaryDeviceTypeParamsOSLinux HTTPSummaryDeviceTypeParamsOS = "LINUX"` - `const HTTPSummaryDeviceTypeParamsOSSmartTv HTTPSummaryDeviceTypeParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPSummaryDeviceTypeParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryDeviceTypeParamsTLSVersionTlSv1_0 HTTPSummaryDeviceTypeParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryDeviceTypeParamsTLSVersionTlSv1_1 HTTPSummaryDeviceTypeParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryDeviceTypeParamsTLSVersionTlSv1_2 HTTPSummaryDeviceTypeParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryDeviceTypeParamsTLSVersionTlSv1_3 HTTPSummaryDeviceTypeParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryDeviceTypeParamsTLSVersionTlSvQuic HTTPSummaryDeviceTypeParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryDeviceTypeResponse struct{…}` - `Meta HTTPSummaryDeviceTypeResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryDeviceTypeResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryDeviceTypeResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryDeviceTypeResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryDeviceTypeResponseMetaNormalizationPercentage HTTPSummaryDeviceTypeResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryDeviceTypeResponseMetaNormalizationMin0Max HTTPSummaryDeviceTypeResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryDeviceTypeResponseMetaNormalizationMinMax HTTPSummaryDeviceTypeResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryDeviceTypeResponseMetaNormalizationRawValues HTTPSummaryDeviceTypeResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryDeviceTypeResponseMetaNormalizationPercentageChange HTTPSummaryDeviceTypeResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryDeviceTypeResponseMetaNormalizationRollingAverage HTTPSummaryDeviceTypeResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryDeviceTypeResponseMetaNormalizationOverlappedPercentage HTTPSummaryDeviceTypeResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryDeviceTypeResponseMetaNormalizationRatio HTTPSummaryDeviceTypeResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryDeviceTypeResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryDeviceTypeResponseSummary0` - `Desktop string` A numeric string. - `Mobile string` A numeric string. - `Other string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.DeviceType(context.TODO(), radar.HTTPSummaryDeviceTypeParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "desktop": "10", "mobile": "10", "other": "10" } }, "success": true } ``` ## Get HTTP requests by HTTP/HTTPS summary `client.Radar.HTTP.Summary.HTTPProtocol(ctx, query) (*HTTPSummaryHTTPProtocolResponse, error)` **get** `/radar/http/summary/http_protocol` Retrieves the distribution of HTTP requests by HTTP protocol (HTTP vs. HTTPS). ### Parameters - `query HTTPSummaryHTTPProtocolParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryHTTPProtocolParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryHTTPProtocolParamsBotClassLikelyAutomated HTTPSummaryHTTPProtocolParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryHTTPProtocolParamsBotClassLikelyHuman HTTPSummaryHTTPProtocolParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPSummaryHTTPProtocolParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryHTTPProtocolParamsBrowserFamilyChrome HTTPSummaryHTTPProtocolParamsBrowserFamily = "CHROME"` - `const HTTPSummaryHTTPProtocolParamsBrowserFamilyEdge HTTPSummaryHTTPProtocolParamsBrowserFamily = "EDGE"` - `const HTTPSummaryHTTPProtocolParamsBrowserFamilyFirefox HTTPSummaryHTTPProtocolParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryHTTPProtocolParamsBrowserFamilySafari HTTPSummaryHTTPProtocolParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryHTTPProtocolParamsDeviceType]` Filters results by device type. - `const HTTPSummaryHTTPProtocolParamsDeviceTypeDesktop HTTPSummaryHTTPProtocolParamsDeviceType = "DESKTOP"` - `const HTTPSummaryHTTPProtocolParamsDeviceTypeMobile HTTPSummaryHTTPProtocolParamsDeviceType = "MOBILE"` - `const HTTPSummaryHTTPProtocolParamsDeviceTypeOther HTTPSummaryHTTPProtocolParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryHTTPProtocolParamsFormat]` Format in which results will be returned. - `const HTTPSummaryHTTPProtocolParamsFormatJson HTTPSummaryHTTPProtocolParamsFormat = "JSON"` - `const HTTPSummaryHTTPProtocolParamsFormatCsv HTTPSummaryHTTPProtocolParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPVersion param.Field[[]HTTPSummaryHTTPProtocolParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryHTTPProtocolParamsHTTPVersionHttPv1 HTTPSummaryHTTPProtocolParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryHTTPProtocolParamsHTTPVersionHttPv2 HTTPSummaryHTTPProtocolParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryHTTPProtocolParamsHTTPVersionHttPv3 HTTPSummaryHTTPProtocolParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPSummaryHTTPProtocolParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryHTTPProtocolParamsIPVersionIPv4 HTTPSummaryHTTPProtocolParamsIPVersion = "IPv4"` - `const HTTPSummaryHTTPProtocolParamsIPVersionIPv6 HTTPSummaryHTTPProtocolParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryHTTPProtocolParamsOS]` Filters results by operating system. - `const HTTPSummaryHTTPProtocolParamsOSWindows HTTPSummaryHTTPProtocolParamsOS = "WINDOWS"` - `const HTTPSummaryHTTPProtocolParamsOSMacosx HTTPSummaryHTTPProtocolParamsOS = "MACOSX"` - `const HTTPSummaryHTTPProtocolParamsOSIos HTTPSummaryHTTPProtocolParamsOS = "IOS"` - `const HTTPSummaryHTTPProtocolParamsOSAndroid HTTPSummaryHTTPProtocolParamsOS = "ANDROID"` - `const HTTPSummaryHTTPProtocolParamsOSChromeos HTTPSummaryHTTPProtocolParamsOS = "CHROMEOS"` - `const HTTPSummaryHTTPProtocolParamsOSLinux HTTPSummaryHTTPProtocolParamsOS = "LINUX"` - `const HTTPSummaryHTTPProtocolParamsOSSmartTv HTTPSummaryHTTPProtocolParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPSummaryHTTPProtocolParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryHTTPProtocolParamsTLSVersionTlSv1_0 HTTPSummaryHTTPProtocolParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryHTTPProtocolParamsTLSVersionTlSv1_1 HTTPSummaryHTTPProtocolParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryHTTPProtocolParamsTLSVersionTlSv1_2 HTTPSummaryHTTPProtocolParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryHTTPProtocolParamsTLSVersionTlSv1_3 HTTPSummaryHTTPProtocolParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryHTTPProtocolParamsTLSVersionTlSvQuic HTTPSummaryHTTPProtocolParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryHTTPProtocolResponse struct{…}` - `Meta HTTPSummaryHTTPProtocolResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryHTTPProtocolResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryHTTPProtocolResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryHTTPProtocolResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationPercentage HTTPSummaryHTTPProtocolResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationMin0Max HTTPSummaryHTTPProtocolResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationMinMax HTTPSummaryHTTPProtocolResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationRawValues HTTPSummaryHTTPProtocolResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationPercentageChange HTTPSummaryHTTPProtocolResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationRollingAverage HTTPSummaryHTTPProtocolResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationOverlappedPercentage HTTPSummaryHTTPProtocolResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryHTTPProtocolResponseMetaNormalizationRatio HTTPSummaryHTTPProtocolResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryHTTPProtocolResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryHTTPProtocolResponseSummary0` - `HTTP string` A numeric string. - `HTTPS string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.HTTPProtocol(context.TODO(), radar.HTTPSummaryHTTPProtocolParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "http": "10", "https": "10" } }, "success": true } ``` ## Get HTTP requests by HTTP version summary `client.Radar.HTTP.Summary.HTTPVersion(ctx, query) (*HTTPSummaryHTTPVersionResponse, error)` **get** `/radar/http/summary/http_version` Retrieves the distribution of HTTP requests by HTTP version. ### Parameters - `query HTTPSummaryHTTPVersionParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryHTTPVersionParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryHTTPVersionParamsBotClassLikelyAutomated HTTPSummaryHTTPVersionParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryHTTPVersionParamsBotClassLikelyHuman HTTPSummaryHTTPVersionParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPSummaryHTTPVersionParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryHTTPVersionParamsBrowserFamilyChrome HTTPSummaryHTTPVersionParamsBrowserFamily = "CHROME"` - `const HTTPSummaryHTTPVersionParamsBrowserFamilyEdge HTTPSummaryHTTPVersionParamsBrowserFamily = "EDGE"` - `const HTTPSummaryHTTPVersionParamsBrowserFamilyFirefox HTTPSummaryHTTPVersionParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryHTTPVersionParamsBrowserFamilySafari HTTPSummaryHTTPVersionParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryHTTPVersionParamsDeviceType]` Filters results by device type. - `const HTTPSummaryHTTPVersionParamsDeviceTypeDesktop HTTPSummaryHTTPVersionParamsDeviceType = "DESKTOP"` - `const HTTPSummaryHTTPVersionParamsDeviceTypeMobile HTTPSummaryHTTPVersionParamsDeviceType = "MOBILE"` - `const HTTPSummaryHTTPVersionParamsDeviceTypeOther HTTPSummaryHTTPVersionParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryHTTPVersionParamsFormat]` Format in which results will be returned. - `const HTTPSummaryHTTPVersionParamsFormatJson HTTPSummaryHTTPVersionParamsFormat = "JSON"` - `const HTTPSummaryHTTPVersionParamsFormatCsv HTTPSummaryHTTPVersionParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryHTTPVersionParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryHTTPVersionParamsHTTPProtocolHTTP HTTPSummaryHTTPVersionParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryHTTPVersionParamsHTTPProtocolHTTPS HTTPSummaryHTTPVersionParamsHTTPProtocol = "HTTPS"` - `IPVersion param.Field[[]HTTPSummaryHTTPVersionParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryHTTPVersionParamsIPVersionIPv4 HTTPSummaryHTTPVersionParamsIPVersion = "IPv4"` - `const HTTPSummaryHTTPVersionParamsIPVersionIPv6 HTTPSummaryHTTPVersionParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryHTTPVersionParamsOS]` Filters results by operating system. - `const HTTPSummaryHTTPVersionParamsOSWindows HTTPSummaryHTTPVersionParamsOS = "WINDOWS"` - `const HTTPSummaryHTTPVersionParamsOSMacosx HTTPSummaryHTTPVersionParamsOS = "MACOSX"` - `const HTTPSummaryHTTPVersionParamsOSIos HTTPSummaryHTTPVersionParamsOS = "IOS"` - `const HTTPSummaryHTTPVersionParamsOSAndroid HTTPSummaryHTTPVersionParamsOS = "ANDROID"` - `const HTTPSummaryHTTPVersionParamsOSChromeos HTTPSummaryHTTPVersionParamsOS = "CHROMEOS"` - `const HTTPSummaryHTTPVersionParamsOSLinux HTTPSummaryHTTPVersionParamsOS = "LINUX"` - `const HTTPSummaryHTTPVersionParamsOSSmartTv HTTPSummaryHTTPVersionParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPSummaryHTTPVersionParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryHTTPVersionParamsTLSVersionTlSv1_0 HTTPSummaryHTTPVersionParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryHTTPVersionParamsTLSVersionTlSv1_1 HTTPSummaryHTTPVersionParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryHTTPVersionParamsTLSVersionTlSv1_2 HTTPSummaryHTTPVersionParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryHTTPVersionParamsTLSVersionTlSv1_3 HTTPSummaryHTTPVersionParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryHTTPVersionParamsTLSVersionTlSvQuic HTTPSummaryHTTPVersionParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryHTTPVersionResponse struct{…}` - `Meta HTTPSummaryHTTPVersionResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryHTTPVersionResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryHTTPVersionResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryHTTPVersionResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryHTTPVersionResponseMetaNormalizationPercentage HTTPSummaryHTTPVersionResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryHTTPVersionResponseMetaNormalizationMin0Max HTTPSummaryHTTPVersionResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryHTTPVersionResponseMetaNormalizationMinMax HTTPSummaryHTTPVersionResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryHTTPVersionResponseMetaNormalizationRawValues HTTPSummaryHTTPVersionResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryHTTPVersionResponseMetaNormalizationPercentageChange HTTPSummaryHTTPVersionResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryHTTPVersionResponseMetaNormalizationRollingAverage HTTPSummaryHTTPVersionResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryHTTPVersionResponseMetaNormalizationOverlappedPercentage HTTPSummaryHTTPVersionResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryHTTPVersionResponseMetaNormalizationRatio HTTPSummaryHTTPVersionResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryHTTPVersionResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryHTTPVersionResponseSummary0` - `HTTP1X string` A numeric string. - `HTTP2 string` A numeric string. - `HTTP3 string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.HTTPVersion(context.TODO(), radar.HTTPSummaryHTTPVersionParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "HTTP/1.x": "10", "HTTP/2": "10", "HTTP/3": "10" } }, "success": true } ``` ## Get HTTP requests by IP version summary `client.Radar.HTTP.Summary.IPVersion(ctx, query) (*HTTPSummaryIPVersionResponse, error)` **get** `/radar/http/summary/ip_version` Retrieves the distribution of HTTP requests by IP version. ### Parameters - `query HTTPSummaryIPVersionParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryIPVersionParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryIPVersionParamsBotClassLikelyAutomated HTTPSummaryIPVersionParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryIPVersionParamsBotClassLikelyHuman HTTPSummaryIPVersionParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPSummaryIPVersionParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryIPVersionParamsBrowserFamilyChrome HTTPSummaryIPVersionParamsBrowserFamily = "CHROME"` - `const HTTPSummaryIPVersionParamsBrowserFamilyEdge HTTPSummaryIPVersionParamsBrowserFamily = "EDGE"` - `const HTTPSummaryIPVersionParamsBrowserFamilyFirefox HTTPSummaryIPVersionParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryIPVersionParamsBrowserFamilySafari HTTPSummaryIPVersionParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryIPVersionParamsDeviceType]` Filters results by device type. - `const HTTPSummaryIPVersionParamsDeviceTypeDesktop HTTPSummaryIPVersionParamsDeviceType = "DESKTOP"` - `const HTTPSummaryIPVersionParamsDeviceTypeMobile HTTPSummaryIPVersionParamsDeviceType = "MOBILE"` - `const HTTPSummaryIPVersionParamsDeviceTypeOther HTTPSummaryIPVersionParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryIPVersionParamsFormat]` Format in which results will be returned. - `const HTTPSummaryIPVersionParamsFormatJson HTTPSummaryIPVersionParamsFormat = "JSON"` - `const HTTPSummaryIPVersionParamsFormatCsv HTTPSummaryIPVersionParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryIPVersionParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryIPVersionParamsHTTPProtocolHTTP HTTPSummaryIPVersionParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryIPVersionParamsHTTPProtocolHTTPS HTTPSummaryIPVersionParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPSummaryIPVersionParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryIPVersionParamsHTTPVersionHttPv1 HTTPSummaryIPVersionParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryIPVersionParamsHTTPVersionHttPv2 HTTPSummaryIPVersionParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryIPVersionParamsHTTPVersionHttPv3 HTTPSummaryIPVersionParamsHTTPVersion = "HTTPv3"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryIPVersionParamsOS]` Filters results by operating system. - `const HTTPSummaryIPVersionParamsOSWindows HTTPSummaryIPVersionParamsOS = "WINDOWS"` - `const HTTPSummaryIPVersionParamsOSMacosx HTTPSummaryIPVersionParamsOS = "MACOSX"` - `const HTTPSummaryIPVersionParamsOSIos HTTPSummaryIPVersionParamsOS = "IOS"` - `const HTTPSummaryIPVersionParamsOSAndroid HTTPSummaryIPVersionParamsOS = "ANDROID"` - `const HTTPSummaryIPVersionParamsOSChromeos HTTPSummaryIPVersionParamsOS = "CHROMEOS"` - `const HTTPSummaryIPVersionParamsOSLinux HTTPSummaryIPVersionParamsOS = "LINUX"` - `const HTTPSummaryIPVersionParamsOSSmartTv HTTPSummaryIPVersionParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPSummaryIPVersionParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryIPVersionParamsTLSVersionTlSv1_0 HTTPSummaryIPVersionParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryIPVersionParamsTLSVersionTlSv1_1 HTTPSummaryIPVersionParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryIPVersionParamsTLSVersionTlSv1_2 HTTPSummaryIPVersionParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryIPVersionParamsTLSVersionTlSv1_3 HTTPSummaryIPVersionParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryIPVersionParamsTLSVersionTlSvQuic HTTPSummaryIPVersionParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryIPVersionResponse struct{…}` - `Meta HTTPSummaryIPVersionResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryIPVersionResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryIPVersionResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryIPVersionResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryIPVersionResponseMetaNormalizationPercentage HTTPSummaryIPVersionResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryIPVersionResponseMetaNormalizationMin0Max HTTPSummaryIPVersionResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryIPVersionResponseMetaNormalizationMinMax HTTPSummaryIPVersionResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryIPVersionResponseMetaNormalizationRawValues HTTPSummaryIPVersionResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryIPVersionResponseMetaNormalizationPercentageChange HTTPSummaryIPVersionResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryIPVersionResponseMetaNormalizationRollingAverage HTTPSummaryIPVersionResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryIPVersionResponseMetaNormalizationOverlappedPercentage HTTPSummaryIPVersionResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryIPVersionResponseMetaNormalizationRatio HTTPSummaryIPVersionResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryIPVersionResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryIPVersionResponseSummary0` - `IPv4 string` A numeric string. - `IPv6 string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.IPVersion(context.TODO(), radar.HTTPSummaryIPVersionParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "IPv4": "10", "IPv6": "10" } }, "success": true } ``` ## Get HTTP requests by OS summary `client.Radar.HTTP.Summary.OS(ctx, query) (*HTTPSummaryOSResponse, error)` **get** `/radar/http/summary/os` Retrieves the distribution of HTTP requests by operating system (Windows, macOS, Android, iOS, and others). ### Parameters - `query HTTPSummaryOSParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryOSParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryOSParamsBotClassLikelyAutomated HTTPSummaryOSParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryOSParamsBotClassLikelyHuman HTTPSummaryOSParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPSummaryOSParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryOSParamsBrowserFamilyChrome HTTPSummaryOSParamsBrowserFamily = "CHROME"` - `const HTTPSummaryOSParamsBrowserFamilyEdge HTTPSummaryOSParamsBrowserFamily = "EDGE"` - `const HTTPSummaryOSParamsBrowserFamilyFirefox HTTPSummaryOSParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryOSParamsBrowserFamilySafari HTTPSummaryOSParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryOSParamsDeviceType]` Filters results by device type. - `const HTTPSummaryOSParamsDeviceTypeDesktop HTTPSummaryOSParamsDeviceType = "DESKTOP"` - `const HTTPSummaryOSParamsDeviceTypeMobile HTTPSummaryOSParamsDeviceType = "MOBILE"` - `const HTTPSummaryOSParamsDeviceTypeOther HTTPSummaryOSParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryOSParamsFormat]` Format in which results will be returned. - `const HTTPSummaryOSParamsFormatJson HTTPSummaryOSParamsFormat = "JSON"` - `const HTTPSummaryOSParamsFormatCsv HTTPSummaryOSParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryOSParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryOSParamsHTTPProtocolHTTP HTTPSummaryOSParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryOSParamsHTTPProtocolHTTPS HTTPSummaryOSParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPSummaryOSParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryOSParamsHTTPVersionHttPv1 HTTPSummaryOSParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryOSParamsHTTPVersionHttPv2 HTTPSummaryOSParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryOSParamsHTTPVersionHttPv3 HTTPSummaryOSParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPSummaryOSParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryOSParamsIPVersionIPv4 HTTPSummaryOSParamsIPVersion = "IPv4"` - `const HTTPSummaryOSParamsIPVersionIPv6 HTTPSummaryOSParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `TLSVersion param.Field[[]HTTPSummaryOSParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryOSParamsTLSVersionTlSv1_0 HTTPSummaryOSParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryOSParamsTLSVersionTlSv1_1 HTTPSummaryOSParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryOSParamsTLSVersionTlSv1_2 HTTPSummaryOSParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryOSParamsTLSVersionTlSv1_3 HTTPSummaryOSParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryOSParamsTLSVersionTlSvQuic HTTPSummaryOSParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryOSResponse struct{…}` - `Meta HTTPSummaryOSResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryOSResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryOSResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryOSResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryOSResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryOSResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryOSResponseMetaNormalizationPercentage HTTPSummaryOSResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryOSResponseMetaNormalizationMin0Max HTTPSummaryOSResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryOSResponseMetaNormalizationMinMax HTTPSummaryOSResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryOSResponseMetaNormalizationRawValues HTTPSummaryOSResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryOSResponseMetaNormalizationPercentageChange HTTPSummaryOSResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryOSResponseMetaNormalizationRollingAverage HTTPSummaryOSResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryOSResponseMetaNormalizationOverlappedPercentage HTTPSummaryOSResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryOSResponseMetaNormalizationRatio HTTPSummaryOSResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryOSResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryOSResponseSummary0` - `Android string` A numeric string. - `Ios string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.OS(context.TODO(), radar.HTTPSummaryOSParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "ANDROID": "10", "IOS": "10" } }, "success": true } ``` ## Get HTTP requests by TLS version summary `client.Radar.HTTP.Summary.TLSVersion(ctx, query) (*HTTPSummaryTLSVersionResponse, error)` **get** `/radar/http/summary/tls_version` Retrieves the distribution of HTTP requests by TLS version. ### Parameters - `query HTTPSummaryTLSVersionParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryTLSVersionParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryTLSVersionParamsBotClassLikelyAutomated HTTPSummaryTLSVersionParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryTLSVersionParamsBotClassLikelyHuman HTTPSummaryTLSVersionParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPSummaryTLSVersionParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryTLSVersionParamsBrowserFamilyChrome HTTPSummaryTLSVersionParamsBrowserFamily = "CHROME"` - `const HTTPSummaryTLSVersionParamsBrowserFamilyEdge HTTPSummaryTLSVersionParamsBrowserFamily = "EDGE"` - `const HTTPSummaryTLSVersionParamsBrowserFamilyFirefox HTTPSummaryTLSVersionParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryTLSVersionParamsBrowserFamilySafari HTTPSummaryTLSVersionParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryTLSVersionParamsDeviceType]` Filters results by device type. - `const HTTPSummaryTLSVersionParamsDeviceTypeDesktop HTTPSummaryTLSVersionParamsDeviceType = "DESKTOP"` - `const HTTPSummaryTLSVersionParamsDeviceTypeMobile HTTPSummaryTLSVersionParamsDeviceType = "MOBILE"` - `const HTTPSummaryTLSVersionParamsDeviceTypeOther HTTPSummaryTLSVersionParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryTLSVersionParamsFormat]` Format in which results will be returned. - `const HTTPSummaryTLSVersionParamsFormatJson HTTPSummaryTLSVersionParamsFormat = "JSON"` - `const HTTPSummaryTLSVersionParamsFormatCsv HTTPSummaryTLSVersionParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryTLSVersionParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryTLSVersionParamsHTTPProtocolHTTP HTTPSummaryTLSVersionParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryTLSVersionParamsHTTPProtocolHTTPS HTTPSummaryTLSVersionParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPSummaryTLSVersionParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryTLSVersionParamsHTTPVersionHttPv1 HTTPSummaryTLSVersionParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryTLSVersionParamsHTTPVersionHttPv2 HTTPSummaryTLSVersionParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryTLSVersionParamsHTTPVersionHttPv3 HTTPSummaryTLSVersionParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPSummaryTLSVersionParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryTLSVersionParamsIPVersionIPv4 HTTPSummaryTLSVersionParamsIPVersion = "IPv4"` - `const HTTPSummaryTLSVersionParamsIPVersionIPv6 HTTPSummaryTLSVersionParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryTLSVersionParamsOS]` Filters results by operating system. - `const HTTPSummaryTLSVersionParamsOSWindows HTTPSummaryTLSVersionParamsOS = "WINDOWS"` - `const HTTPSummaryTLSVersionParamsOSMacosx HTTPSummaryTLSVersionParamsOS = "MACOSX"` - `const HTTPSummaryTLSVersionParamsOSIos HTTPSummaryTLSVersionParamsOS = "IOS"` - `const HTTPSummaryTLSVersionParamsOSAndroid HTTPSummaryTLSVersionParamsOS = "ANDROID"` - `const HTTPSummaryTLSVersionParamsOSChromeos HTTPSummaryTLSVersionParamsOS = "CHROMEOS"` - `const HTTPSummaryTLSVersionParamsOSLinux HTTPSummaryTLSVersionParamsOS = "LINUX"` - `const HTTPSummaryTLSVersionParamsOSSmartTv HTTPSummaryTLSVersionParamsOS = "SMART_TV"` ### Returns - `type HTTPSummaryTLSVersionResponse struct{…}` - `Meta HTTPSummaryTLSVersionResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryTLSVersionResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryTLSVersionResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryTLSVersionResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryTLSVersionResponseMetaNormalizationPercentage HTTPSummaryTLSVersionResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryTLSVersionResponseMetaNormalizationMin0Max HTTPSummaryTLSVersionResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryTLSVersionResponseMetaNormalizationMinMax HTTPSummaryTLSVersionResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryTLSVersionResponseMetaNormalizationRawValues HTTPSummaryTLSVersionResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryTLSVersionResponseMetaNormalizationPercentageChange HTTPSummaryTLSVersionResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryTLSVersionResponseMetaNormalizationRollingAverage HTTPSummaryTLSVersionResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryTLSVersionResponseMetaNormalizationOverlappedPercentage HTTPSummaryTLSVersionResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryTLSVersionResponseMetaNormalizationRatio HTTPSummaryTLSVersionResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryTLSVersionResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryTLSVersionResponseSummary0` - `TLS1_0 string` A numeric string. - `TLS1_1 string` A numeric string. - `TLS1_2 string` A numeric string. - `TLS1_3 string` A numeric string. - `TLSQuic string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.TLSVersion(context.TODO(), radar.HTTPSummaryTLSVersionParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "TLS 1.0": "10", "TLS 1.1": "10", "TLS 1.2": "10", "TLS 1.3": "10", "TLS QUIC": "10" } }, "success": true } ``` ## Get HTTP requests by post-quantum support summary `client.Radar.HTTP.Summary.PostQuantum(ctx, query) (*HTTPSummaryPostQuantumResponse, error)` **get** `/radar/http/summary/post_quantum` Retrieves the distribution of HTTP requests by post-quantum support. ### Parameters - `query HTTPSummaryPostQuantumParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPSummaryPostQuantumParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPSummaryPostQuantumParamsBotClassLikelyAutomated HTTPSummaryPostQuantumParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPSummaryPostQuantumParamsBotClassLikelyHuman HTTPSummaryPostQuantumParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPSummaryPostQuantumParamsBrowserFamily]` Filters results by browser family. - `const HTTPSummaryPostQuantumParamsBrowserFamilyChrome HTTPSummaryPostQuantumParamsBrowserFamily = "CHROME"` - `const HTTPSummaryPostQuantumParamsBrowserFamilyEdge HTTPSummaryPostQuantumParamsBrowserFamily = "EDGE"` - `const HTTPSummaryPostQuantumParamsBrowserFamilyFirefox HTTPSummaryPostQuantumParamsBrowserFamily = "FIREFOX"` - `const HTTPSummaryPostQuantumParamsBrowserFamilySafari HTTPSummaryPostQuantumParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPSummaryPostQuantumParamsDeviceType]` Filters results by device type. - `const HTTPSummaryPostQuantumParamsDeviceTypeDesktop HTTPSummaryPostQuantumParamsDeviceType = "DESKTOP"` - `const HTTPSummaryPostQuantumParamsDeviceTypeMobile HTTPSummaryPostQuantumParamsDeviceType = "MOBILE"` - `const HTTPSummaryPostQuantumParamsDeviceTypeOther HTTPSummaryPostQuantumParamsDeviceType = "OTHER"` - `Format param.Field[HTTPSummaryPostQuantumParamsFormat]` Format in which results will be returned. - `const HTTPSummaryPostQuantumParamsFormatJson HTTPSummaryPostQuantumParamsFormat = "JSON"` - `const HTTPSummaryPostQuantumParamsFormatCsv HTTPSummaryPostQuantumParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPSummaryPostQuantumParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPSummaryPostQuantumParamsHTTPProtocolHTTP HTTPSummaryPostQuantumParamsHTTPProtocol = "HTTP"` - `const HTTPSummaryPostQuantumParamsHTTPProtocolHTTPS HTTPSummaryPostQuantumParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPSummaryPostQuantumParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPSummaryPostQuantumParamsHTTPVersionHttPv1 HTTPSummaryPostQuantumParamsHTTPVersion = "HTTPv1"` - `const HTTPSummaryPostQuantumParamsHTTPVersionHttPv2 HTTPSummaryPostQuantumParamsHTTPVersion = "HTTPv2"` - `const HTTPSummaryPostQuantumParamsHTTPVersionHttPv3 HTTPSummaryPostQuantumParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPSummaryPostQuantumParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPSummaryPostQuantumParamsIPVersionIPv4 HTTPSummaryPostQuantumParamsIPVersion = "IPv4"` - `const HTTPSummaryPostQuantumParamsIPVersionIPv6 HTTPSummaryPostQuantumParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPSummaryPostQuantumParamsOS]` Filters results by operating system. - `const HTTPSummaryPostQuantumParamsOSWindows HTTPSummaryPostQuantumParamsOS = "WINDOWS"` - `const HTTPSummaryPostQuantumParamsOSMacosx HTTPSummaryPostQuantumParamsOS = "MACOSX"` - `const HTTPSummaryPostQuantumParamsOSIos HTTPSummaryPostQuantumParamsOS = "IOS"` - `const HTTPSummaryPostQuantumParamsOSAndroid HTTPSummaryPostQuantumParamsOS = "ANDROID"` - `const HTTPSummaryPostQuantumParamsOSChromeos HTTPSummaryPostQuantumParamsOS = "CHROMEOS"` - `const HTTPSummaryPostQuantumParamsOSLinux HTTPSummaryPostQuantumParamsOS = "LINUX"` - `const HTTPSummaryPostQuantumParamsOSSmartTv HTTPSummaryPostQuantumParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPSummaryPostQuantumParamsTLSVersion]` Filters results by TLS version. - `const HTTPSummaryPostQuantumParamsTLSVersionTlSv1_0 HTTPSummaryPostQuantumParamsTLSVersion = "TLSv1_0"` - `const HTTPSummaryPostQuantumParamsTLSVersionTlSv1_1 HTTPSummaryPostQuantumParamsTLSVersion = "TLSv1_1"` - `const HTTPSummaryPostQuantumParamsTLSVersionTlSv1_2 HTTPSummaryPostQuantumParamsTLSVersion = "TLSv1_2"` - `const HTTPSummaryPostQuantumParamsTLSVersionTlSv1_3 HTTPSummaryPostQuantumParamsTLSVersion = "TLSv1_3"` - `const HTTPSummaryPostQuantumParamsTLSVersionTlSvQuic HTTPSummaryPostQuantumParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPSummaryPostQuantumResponse struct{…}` - `Meta HTTPSummaryPostQuantumResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPSummaryPostQuantumResponseMetaConfidenceInfo` - `Annotations []HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPSummaryPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPSummaryPostQuantumResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPSummaryPostQuantumResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPSummaryPostQuantumResponseMetaNormalizationPercentage HTTPSummaryPostQuantumResponseMetaNormalization = "PERCENTAGE"` - `const HTTPSummaryPostQuantumResponseMetaNormalizationMin0Max HTTPSummaryPostQuantumResponseMetaNormalization = "MIN0_MAX"` - `const HTTPSummaryPostQuantumResponseMetaNormalizationMinMax HTTPSummaryPostQuantumResponseMetaNormalization = "MIN_MAX"` - `const HTTPSummaryPostQuantumResponseMetaNormalizationRawValues HTTPSummaryPostQuantumResponseMetaNormalization = "RAW_VALUES"` - `const HTTPSummaryPostQuantumResponseMetaNormalizationPercentageChange HTTPSummaryPostQuantumResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPSummaryPostQuantumResponseMetaNormalizationRollingAverage HTTPSummaryPostQuantumResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPSummaryPostQuantumResponseMetaNormalizationOverlappedPercentage HTTPSummaryPostQuantumResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPSummaryPostQuantumResponseMetaNormalizationRatio HTTPSummaryPostQuantumResponseMetaNormalization = "RATIO"` - `Units []HTTPSummaryPostQuantumResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Summary0 HTTPSummaryPostQuantumResponseSummary0` - `NotSupported string` A numeric string. - `Supported string` A numeric string. ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Summary.PostQuantum(context.TODO(), radar.HTTPSummaryPostQuantumParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "summary_0": { "NOT_SUPPORTED": "10", "SUPPORTED": "10" } }, "success": true } ``` # Timeseries Groups ## Get HTTP requests by TLS version time series `client.Radar.HTTP.TimeseriesGroups.TLSVersion(ctx, query) (*HTTPTimeseriesGroupTLSVersionResponse, error)` **get** `/radar/http/timeseries_groups/tls_version` Retrieves the distribution of HTTP requests by TLS version over time. ### Parameters - `query HTTPTimeseriesGroupTLSVersionParams` - `AggInterval param.Field[HTTPTimeseriesGroupTLSVersionParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupTLSVersionParamsAggInterval15m HTTPTimeseriesGroupTLSVersionParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupTLSVersionParamsAggInterval1h HTTPTimeseriesGroupTLSVersionParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupTLSVersionParamsAggInterval1d HTTPTimeseriesGroupTLSVersionParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupTLSVersionParamsAggInterval1w HTTPTimeseriesGroupTLSVersionParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupTLSVersionParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupTLSVersionParamsBotClassLikelyAutomated HTTPTimeseriesGroupTLSVersionParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupTLSVersionParamsBotClassLikelyHuman HTTPTimeseriesGroupTLSVersionParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupTLSVersionParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupTLSVersionParamsBrowserFamilyChrome HTTPTimeseriesGroupTLSVersionParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupTLSVersionParamsBrowserFamilyEdge HTTPTimeseriesGroupTLSVersionParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupTLSVersionParamsBrowserFamilyFirefox HTTPTimeseriesGroupTLSVersionParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupTLSVersionParamsBrowserFamilySafari HTTPTimeseriesGroupTLSVersionParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupTLSVersionParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupTLSVersionParamsDeviceTypeDesktop HTTPTimeseriesGroupTLSVersionParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupTLSVersionParamsDeviceTypeMobile HTTPTimeseriesGroupTLSVersionParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupTLSVersionParamsDeviceTypeOther HTTPTimeseriesGroupTLSVersionParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupTLSVersionParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupTLSVersionParamsFormatJson HTTPTimeseriesGroupTLSVersionParamsFormat = "JSON"` - `const HTTPTimeseriesGroupTLSVersionParamsFormatCsv HTTPTimeseriesGroupTLSVersionParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupTLSVersionParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupTLSVersionParamsHTTPProtocolHTTP HTTPTimeseriesGroupTLSVersionParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupTLSVersionParamsHTTPProtocolHTTPS HTTPTimeseriesGroupTLSVersionParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupTLSVersionParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupTLSVersionParamsHTTPVersionHttPv1 HTTPTimeseriesGroupTLSVersionParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupTLSVersionParamsHTTPVersionHttPv2 HTTPTimeseriesGroupTLSVersionParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupTLSVersionParamsHTTPVersionHttPv3 HTTPTimeseriesGroupTLSVersionParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupTLSVersionParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupTLSVersionParamsIPVersionIPv4 HTTPTimeseriesGroupTLSVersionParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupTLSVersionParamsIPVersionIPv6 HTTPTimeseriesGroupTLSVersionParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupTLSVersionParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupTLSVersionParamsOSWindows HTTPTimeseriesGroupTLSVersionParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupTLSVersionParamsOSMacosx HTTPTimeseriesGroupTLSVersionParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupTLSVersionParamsOSIos HTTPTimeseriesGroupTLSVersionParamsOS = "IOS"` - `const HTTPTimeseriesGroupTLSVersionParamsOSAndroid HTTPTimeseriesGroupTLSVersionParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupTLSVersionParamsOSChromeos HTTPTimeseriesGroupTLSVersionParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupTLSVersionParamsOSLinux HTTPTimeseriesGroupTLSVersionParamsOS = "LINUX"` - `const HTTPTimeseriesGroupTLSVersionParamsOSSmartTv HTTPTimeseriesGroupTLSVersionParamsOS = "SMART_TV"` ### Returns - `type HTTPTimeseriesGroupTLSVersionResponse struct{…}` - `Meta HTTPTimeseriesGroupTLSVersionResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupTLSVersionResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupTLSVersionResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupTLSVersionResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaAggIntervalOneHour HTTPTimeseriesGroupTLSVersionResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaAggIntervalOneDay HTTPTimeseriesGroupTLSVersionResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupTLSVersionResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupTLSVersionResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupTLSVersionResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupTLSVersionResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupTLSVersionResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationPercentage HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationMin0Max HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationMinMax HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationRawValues HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupTLSVersionResponseMetaNormalizationRatio HTTPTimeseriesGroupTLSVersionResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupTLSVersionResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupTLSVersionResponseSerie0` - `Timestamps []Time` - `TLS1_0 []string` - `TLS1_1 []string` - `TLS1_2 []string` - `TLS1_3 []string` - `TLSQuic []string` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.TLSVersion(context.TODO(), radar.HTTPTimeseriesGroupTLSVersionParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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": [ "2019-12-27T18:11:19.117Z" ], "TLS 1.0": [ "10" ], "TLS 1.1": [ "10" ], "TLS 1.2": [ "10" ], "TLS 1.3": [ "10" ], "TLS QUIC": [ "10" ] } }, "success": true } ``` ## Get HTTP requests by bot class time series `client.Radar.HTTP.TimeseriesGroups.BotClass(ctx, query) (*HTTPTimeseriesGroupBotClassResponse, error)` **get** `/radar/http/timeseries_groups/bot_class` Retrieves the distribution of HTTP requests classified as automated or human over time. Visit https://developers.cloudflare.com/radar/concepts/bot-classes/ for more information. ### Parameters - `query HTTPTimeseriesGroupBotClassParams` - `AggInterval param.Field[HTTPTimeseriesGroupBotClassParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupBotClassParamsAggInterval15m HTTPTimeseriesGroupBotClassParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupBotClassParamsAggInterval1h HTTPTimeseriesGroupBotClassParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupBotClassParamsAggInterval1d HTTPTimeseriesGroupBotClassParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupBotClassParamsAggInterval1w HTTPTimeseriesGroupBotClassParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BrowserFamily param.Field[[]HTTPTimeseriesGroupBotClassParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupBotClassParamsBrowserFamilyChrome HTTPTimeseriesGroupBotClassParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupBotClassParamsBrowserFamilyEdge HTTPTimeseriesGroupBotClassParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupBotClassParamsBrowserFamilyFirefox HTTPTimeseriesGroupBotClassParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupBotClassParamsBrowserFamilySafari HTTPTimeseriesGroupBotClassParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupBotClassParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupBotClassParamsDeviceTypeDesktop HTTPTimeseriesGroupBotClassParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupBotClassParamsDeviceTypeMobile HTTPTimeseriesGroupBotClassParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupBotClassParamsDeviceTypeOther HTTPTimeseriesGroupBotClassParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupBotClassParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupBotClassParamsFormatJson HTTPTimeseriesGroupBotClassParamsFormat = "JSON"` - `const HTTPTimeseriesGroupBotClassParamsFormatCsv HTTPTimeseriesGroupBotClassParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupBotClassParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupBotClassParamsHTTPProtocolHTTP HTTPTimeseriesGroupBotClassParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupBotClassParamsHTTPProtocolHTTPS HTTPTimeseriesGroupBotClassParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupBotClassParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupBotClassParamsHTTPVersionHttPv1 HTTPTimeseriesGroupBotClassParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupBotClassParamsHTTPVersionHttPv2 HTTPTimeseriesGroupBotClassParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupBotClassParamsHTTPVersionHttPv3 HTTPTimeseriesGroupBotClassParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupBotClassParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupBotClassParamsIPVersionIPv4 HTTPTimeseriesGroupBotClassParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupBotClassParamsIPVersionIPv6 HTTPTimeseriesGroupBotClassParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupBotClassParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupBotClassParamsOSWindows HTTPTimeseriesGroupBotClassParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupBotClassParamsOSMacosx HTTPTimeseriesGroupBotClassParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupBotClassParamsOSIos HTTPTimeseriesGroupBotClassParamsOS = "IOS"` - `const HTTPTimeseriesGroupBotClassParamsOSAndroid HTTPTimeseriesGroupBotClassParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupBotClassParamsOSChromeos HTTPTimeseriesGroupBotClassParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupBotClassParamsOSLinux HTTPTimeseriesGroupBotClassParamsOS = "LINUX"` - `const HTTPTimeseriesGroupBotClassParamsOSSmartTv HTTPTimeseriesGroupBotClassParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupBotClassParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupBotClassParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupBotClassParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupBotClassParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupBotClassParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupBotClassParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupBotClassParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupBotClassParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupBotClassParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupBotClassParamsTLSVersionTlSvQuic HTTPTimeseriesGroupBotClassParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupBotClassResponse struct{…}` - `Meta HTTPTimeseriesGroupBotClassResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupBotClassResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupBotClassResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupBotClassResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupBotClassResponseMetaAggIntervalOneHour HTTPTimeseriesGroupBotClassResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupBotClassResponseMetaAggIntervalOneDay HTTPTimeseriesGroupBotClassResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupBotClassResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupBotClassResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupBotClassResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupBotClassResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupBotClassResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupBotClassResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupBotClassResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationPercentage HTTPTimeseriesGroupBotClassResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationMin0Max HTTPTimeseriesGroupBotClassResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationMinMax HTTPTimeseriesGroupBotClassResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationRawValues HTTPTimeseriesGroupBotClassResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupBotClassResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupBotClassResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupBotClassResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupBotClassResponseMetaNormalizationRatio HTTPTimeseriesGroupBotClassResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupBotClassResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupBotClassResponseSerie0` - `Bot []string` - `Human []string` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.BotClass(context.TODO(), radar.HTTPTimeseriesGroupBotClassParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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": { "bot": [ "10" ], "human": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by user agent time series `client.Radar.HTTP.TimeseriesGroups.Browser(ctx, query) (*HTTPTimeseriesGroupBrowserResponse, error)` **get** `/radar/http/timeseries_groups/browser` Retrieves the distribution of HTTP requests by user agent over time. ### Parameters - `query HTTPTimeseriesGroupBrowserParams` - `AggInterval param.Field[HTTPTimeseriesGroupBrowserParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupBrowserParamsAggInterval15m HTTPTimeseriesGroupBrowserParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupBrowserParamsAggInterval1h HTTPTimeseriesGroupBrowserParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupBrowserParamsAggInterval1d HTTPTimeseriesGroupBrowserParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupBrowserParamsAggInterval1w HTTPTimeseriesGroupBrowserParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupBrowserParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupBrowserParamsBotClassLikelyAutomated HTTPTimeseriesGroupBrowserParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupBrowserParamsBotClassLikelyHuman HTTPTimeseriesGroupBrowserParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupBrowserParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupBrowserParamsBrowserFamilyChrome HTTPTimeseriesGroupBrowserParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupBrowserParamsBrowserFamilyEdge HTTPTimeseriesGroupBrowserParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupBrowserParamsBrowserFamilyFirefox HTTPTimeseriesGroupBrowserParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupBrowserParamsBrowserFamilySafari HTTPTimeseriesGroupBrowserParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupBrowserParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupBrowserParamsDeviceTypeDesktop HTTPTimeseriesGroupBrowserParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupBrowserParamsDeviceTypeMobile HTTPTimeseriesGroupBrowserParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupBrowserParamsDeviceTypeOther HTTPTimeseriesGroupBrowserParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupBrowserParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupBrowserParamsFormatJson HTTPTimeseriesGroupBrowserParamsFormat = "JSON"` - `const HTTPTimeseriesGroupBrowserParamsFormatCsv HTTPTimeseriesGroupBrowserParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupBrowserParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupBrowserParamsHTTPProtocolHTTP HTTPTimeseriesGroupBrowserParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupBrowserParamsHTTPProtocolHTTPS HTTPTimeseriesGroupBrowserParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupBrowserParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupBrowserParamsHTTPVersionHttPv1 HTTPTimeseriesGroupBrowserParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupBrowserParamsHTTPVersionHttPv2 HTTPTimeseriesGroupBrowserParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupBrowserParamsHTTPVersionHttPv3 HTTPTimeseriesGroupBrowserParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupBrowserParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupBrowserParamsIPVersionIPv4 HTTPTimeseriesGroupBrowserParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupBrowserParamsIPVersionIPv6 HTTPTimeseriesGroupBrowserParamsIPVersion = "IPv6"` - `LimitPerGroup param.Field[int64]` 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. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupBrowserParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupBrowserParamsOSWindows HTTPTimeseriesGroupBrowserParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupBrowserParamsOSMacosx HTTPTimeseriesGroupBrowserParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupBrowserParamsOSIos HTTPTimeseriesGroupBrowserParamsOS = "IOS"` - `const HTTPTimeseriesGroupBrowserParamsOSAndroid HTTPTimeseriesGroupBrowserParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupBrowserParamsOSChromeos HTTPTimeseriesGroupBrowserParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupBrowserParamsOSLinux HTTPTimeseriesGroupBrowserParamsOS = "LINUX"` - `const HTTPTimeseriesGroupBrowserParamsOSSmartTv HTTPTimeseriesGroupBrowserParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupBrowserParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupBrowserParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupBrowserParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupBrowserParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupBrowserParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupBrowserParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupBrowserParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupBrowserParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupBrowserParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupBrowserParamsTLSVersionTlSvQuic HTTPTimeseriesGroupBrowserParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupBrowserResponse struct{…}` - `Meta HTTPTimeseriesGroupBrowserResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupBrowserResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupBrowserResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupBrowserResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupBrowserResponseMetaAggIntervalOneHour HTTPTimeseriesGroupBrowserResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupBrowserResponseMetaAggIntervalOneDay HTTPTimeseriesGroupBrowserResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupBrowserResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupBrowserResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupBrowserResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupBrowserResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupBrowserResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupBrowserResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupBrowserResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationPercentage HTTPTimeseriesGroupBrowserResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationMin0Max HTTPTimeseriesGroupBrowserResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationMinMax HTTPTimeseriesGroupBrowserResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationRawValues HTTPTimeseriesGroupBrowserResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupBrowserResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupBrowserResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupBrowserResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupBrowserResponseMetaNormalizationRatio HTTPTimeseriesGroupBrowserResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupBrowserResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupBrowserResponseSerie0` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.Browser(context.TODO(), radar.HTTPTimeseriesGroupBrowserParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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 } ``` ## Get HTTP requests by user agent family time series `client.Radar.HTTP.TimeseriesGroups.BrowserFamily(ctx, query) (*HTTPTimeseriesGroupBrowserFamilyResponse, error)` **get** `/radar/http/timeseries_groups/browser_family` Retrieves the distribution of HTTP requests by user agent family over time. ### Parameters - `query HTTPTimeseriesGroupBrowserFamilyParams` - `AggInterval param.Field[HTTPTimeseriesGroupBrowserFamilyParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupBrowserFamilyParamsAggInterval15m HTTPTimeseriesGroupBrowserFamilyParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupBrowserFamilyParamsAggInterval1h HTTPTimeseriesGroupBrowserFamilyParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupBrowserFamilyParamsAggInterval1d HTTPTimeseriesGroupBrowserFamilyParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupBrowserFamilyParamsAggInterval1w HTTPTimeseriesGroupBrowserFamilyParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupBrowserFamilyParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupBrowserFamilyParamsBotClassLikelyAutomated HTTPTimeseriesGroupBrowserFamilyParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupBrowserFamilyParamsBotClassLikelyHuman HTTPTimeseriesGroupBrowserFamilyParamsBotClass = "LIKELY_HUMAN"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupBrowserFamilyParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupBrowserFamilyParamsDeviceTypeDesktop HTTPTimeseriesGroupBrowserFamilyParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupBrowserFamilyParamsDeviceTypeMobile HTTPTimeseriesGroupBrowserFamilyParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupBrowserFamilyParamsDeviceTypeOther HTTPTimeseriesGroupBrowserFamilyParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupBrowserFamilyParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupBrowserFamilyParamsFormatJson HTTPTimeseriesGroupBrowserFamilyParamsFormat = "JSON"` - `const HTTPTimeseriesGroupBrowserFamilyParamsFormatCsv HTTPTimeseriesGroupBrowserFamilyParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupBrowserFamilyParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupBrowserFamilyParamsHTTPProtocolHTTP HTTPTimeseriesGroupBrowserFamilyParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupBrowserFamilyParamsHTTPProtocolHTTPS HTTPTimeseriesGroupBrowserFamilyParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupBrowserFamilyParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupBrowserFamilyParamsHTTPVersionHttPv1 HTTPTimeseriesGroupBrowserFamilyParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupBrowserFamilyParamsHTTPVersionHttPv2 HTTPTimeseriesGroupBrowserFamilyParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupBrowserFamilyParamsHTTPVersionHttPv3 HTTPTimeseriesGroupBrowserFamilyParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupBrowserFamilyParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupBrowserFamilyParamsIPVersionIPv4 HTTPTimeseriesGroupBrowserFamilyParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupBrowserFamilyParamsIPVersionIPv6 HTTPTimeseriesGroupBrowserFamilyParamsIPVersion = "IPv6"` - `LimitPerGroup param.Field[int64]` 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. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupBrowserFamilyParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupBrowserFamilyParamsOSWindows HTTPTimeseriesGroupBrowserFamilyParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupBrowserFamilyParamsOSMacosx HTTPTimeseriesGroupBrowserFamilyParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupBrowserFamilyParamsOSIos HTTPTimeseriesGroupBrowserFamilyParamsOS = "IOS"` - `const HTTPTimeseriesGroupBrowserFamilyParamsOSAndroid HTTPTimeseriesGroupBrowserFamilyParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupBrowserFamilyParamsOSChromeos HTTPTimeseriesGroupBrowserFamilyParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupBrowserFamilyParamsOSLinux HTTPTimeseriesGroupBrowserFamilyParamsOS = "LINUX"` - `const HTTPTimeseriesGroupBrowserFamilyParamsOSSmartTv HTTPTimeseriesGroupBrowserFamilyParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupBrowserFamilyParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupBrowserFamilyParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupBrowserFamilyParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupBrowserFamilyParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupBrowserFamilyParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupBrowserFamilyParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupBrowserFamilyParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupBrowserFamilyParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupBrowserFamilyParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupBrowserFamilyParamsTLSVersionTlSvQuic HTTPTimeseriesGroupBrowserFamilyParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupBrowserFamilyResponse struct{…}` - `Meta HTTPTimeseriesGroupBrowserFamilyResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupBrowserFamilyResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupBrowserFamilyResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaAggIntervalOneHour HTTPTimeseriesGroupBrowserFamilyResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaAggIntervalOneDay HTTPTimeseriesGroupBrowserFamilyResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupBrowserFamilyResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupBrowserFamilyResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupBrowserFamilyResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationPercentage HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationMin0Max HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationMinMax HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationRawValues HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalizationRatio HTTPTimeseriesGroupBrowserFamilyResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupBrowserFamilyResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupBrowserFamilyResponseSerie0` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.BrowserFamily(context.TODO(), radar.HTTPTimeseriesGroupBrowserFamilyParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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 } ``` ## Get HTTP requests by device type time series `client.Radar.HTTP.TimeseriesGroups.DeviceType(ctx, query) (*HTTPTimeseriesGroupDeviceTypeResponse, error)` **get** `/radar/http/timeseries_groups/device_type` Retrieves the distribution of HTTP requests by device type over time. ### Parameters - `query HTTPTimeseriesGroupDeviceTypeParams` - `AggInterval param.Field[HTTPTimeseriesGroupDeviceTypeParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupDeviceTypeParamsAggInterval15m HTTPTimeseriesGroupDeviceTypeParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupDeviceTypeParamsAggInterval1h HTTPTimeseriesGroupDeviceTypeParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupDeviceTypeParamsAggInterval1d HTTPTimeseriesGroupDeviceTypeParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupDeviceTypeParamsAggInterval1w HTTPTimeseriesGroupDeviceTypeParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupDeviceTypeParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupDeviceTypeParamsBotClassLikelyAutomated HTTPTimeseriesGroupDeviceTypeParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupDeviceTypeParamsBotClassLikelyHuman HTTPTimeseriesGroupDeviceTypeParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupDeviceTypeParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupDeviceTypeParamsBrowserFamilyChrome HTTPTimeseriesGroupDeviceTypeParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupDeviceTypeParamsBrowserFamilyEdge HTTPTimeseriesGroupDeviceTypeParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupDeviceTypeParamsBrowserFamilyFirefox HTTPTimeseriesGroupDeviceTypeParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupDeviceTypeParamsBrowserFamilySafari HTTPTimeseriesGroupDeviceTypeParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `Format param.Field[HTTPTimeseriesGroupDeviceTypeParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupDeviceTypeParamsFormatJson HTTPTimeseriesGroupDeviceTypeParamsFormat = "JSON"` - `const HTTPTimeseriesGroupDeviceTypeParamsFormatCsv HTTPTimeseriesGroupDeviceTypeParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupDeviceTypeParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupDeviceTypeParamsHTTPProtocolHTTP HTTPTimeseriesGroupDeviceTypeParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupDeviceTypeParamsHTTPProtocolHTTPS HTTPTimeseriesGroupDeviceTypeParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupDeviceTypeParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupDeviceTypeParamsHTTPVersionHttPv1 HTTPTimeseriesGroupDeviceTypeParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupDeviceTypeParamsHTTPVersionHttPv2 HTTPTimeseriesGroupDeviceTypeParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupDeviceTypeParamsHTTPVersionHttPv3 HTTPTimeseriesGroupDeviceTypeParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupDeviceTypeParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupDeviceTypeParamsIPVersionIPv4 HTTPTimeseriesGroupDeviceTypeParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupDeviceTypeParamsIPVersionIPv6 HTTPTimeseriesGroupDeviceTypeParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupDeviceTypeParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupDeviceTypeParamsOSWindows HTTPTimeseriesGroupDeviceTypeParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupDeviceTypeParamsOSMacosx HTTPTimeseriesGroupDeviceTypeParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupDeviceTypeParamsOSIos HTTPTimeseriesGroupDeviceTypeParamsOS = "IOS"` - `const HTTPTimeseriesGroupDeviceTypeParamsOSAndroid HTTPTimeseriesGroupDeviceTypeParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupDeviceTypeParamsOSChromeos HTTPTimeseriesGroupDeviceTypeParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupDeviceTypeParamsOSLinux HTTPTimeseriesGroupDeviceTypeParamsOS = "LINUX"` - `const HTTPTimeseriesGroupDeviceTypeParamsOSSmartTv HTTPTimeseriesGroupDeviceTypeParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupDeviceTypeParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupDeviceTypeParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupDeviceTypeParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupDeviceTypeParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupDeviceTypeParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupDeviceTypeParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupDeviceTypeParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupDeviceTypeParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupDeviceTypeParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupDeviceTypeParamsTLSVersionTlSvQuic HTTPTimeseriesGroupDeviceTypeParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupDeviceTypeResponse struct{…}` - `Meta HTTPTimeseriesGroupDeviceTypeResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupDeviceTypeResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupDeviceTypeResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupDeviceTypeResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaAggIntervalOneHour HTTPTimeseriesGroupDeviceTypeResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaAggIntervalOneDay HTTPTimeseriesGroupDeviceTypeResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupDeviceTypeResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupDeviceTypeResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupDeviceTypeResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupDeviceTypeResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationPercentage HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationMin0Max HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationMinMax HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationRawValues HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupDeviceTypeResponseMetaNormalizationRatio HTTPTimeseriesGroupDeviceTypeResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupDeviceTypeResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupDeviceTypeResponseSerie0` - `Desktop []string` - `Mobile []string` - `Other []string` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.DeviceType(context.TODO(), radar.HTTPTimeseriesGroupDeviceTypeParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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": { "desktop": [ "10" ], "mobile": [ "10" ], "other": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by HTTP/HTTPS time series `client.Radar.HTTP.TimeseriesGroups.HTTPProtocol(ctx, query) (*HTTPTimeseriesGroupHTTPProtocolResponse, error)` **get** `/radar/http/timeseries_groups/http_protocol` Retrieves the distribution of HTTP requests by HTTP protocol (HTTP vs. HTTPS) over time. ### Parameters - `query HTTPTimeseriesGroupHTTPProtocolParams` - `AggInterval param.Field[HTTPTimeseriesGroupHTTPProtocolParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupHTTPProtocolParamsAggInterval15m HTTPTimeseriesGroupHTTPProtocolParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupHTTPProtocolParamsAggInterval1h HTTPTimeseriesGroupHTTPProtocolParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupHTTPProtocolParamsAggInterval1d HTTPTimeseriesGroupHTTPProtocolParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupHTTPProtocolParamsAggInterval1w HTTPTimeseriesGroupHTTPProtocolParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupHTTPProtocolParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupHTTPProtocolParamsBotClassLikelyAutomated HTTPTimeseriesGroupHTTPProtocolParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupHTTPProtocolParamsBotClassLikelyHuman HTTPTimeseriesGroupHTTPProtocolParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamilyChrome HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamilyEdge HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamilyFirefox HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamilySafari HTTPTimeseriesGroupHTTPProtocolParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupHTTPProtocolParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupHTTPProtocolParamsDeviceTypeDesktop HTTPTimeseriesGroupHTTPProtocolParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupHTTPProtocolParamsDeviceTypeMobile HTTPTimeseriesGroupHTTPProtocolParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupHTTPProtocolParamsDeviceTypeOther HTTPTimeseriesGroupHTTPProtocolParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupHTTPProtocolParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupHTTPProtocolParamsFormatJson HTTPTimeseriesGroupHTTPProtocolParamsFormat = "JSON"` - `const HTTPTimeseriesGroupHTTPProtocolParamsFormatCsv HTTPTimeseriesGroupHTTPProtocolParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPVersion param.Field[[]HTTPTimeseriesGroupHTTPProtocolParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupHTTPProtocolParamsHTTPVersionHttPv1 HTTPTimeseriesGroupHTTPProtocolParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupHTTPProtocolParamsHTTPVersionHttPv2 HTTPTimeseriesGroupHTTPProtocolParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupHTTPProtocolParamsHTTPVersionHttPv3 HTTPTimeseriesGroupHTTPProtocolParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupHTTPProtocolParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupHTTPProtocolParamsIPVersionIPv4 HTTPTimeseriesGroupHTTPProtocolParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupHTTPProtocolParamsIPVersionIPv6 HTTPTimeseriesGroupHTTPProtocolParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupHTTPProtocolParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupHTTPProtocolParamsOSWindows HTTPTimeseriesGroupHTTPProtocolParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupHTTPProtocolParamsOSMacosx HTTPTimeseriesGroupHTTPProtocolParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupHTTPProtocolParamsOSIos HTTPTimeseriesGroupHTTPProtocolParamsOS = "IOS"` - `const HTTPTimeseriesGroupHTTPProtocolParamsOSAndroid HTTPTimeseriesGroupHTTPProtocolParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupHTTPProtocolParamsOSChromeos HTTPTimeseriesGroupHTTPProtocolParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupHTTPProtocolParamsOSLinux HTTPTimeseriesGroupHTTPProtocolParamsOS = "LINUX"` - `const HTTPTimeseriesGroupHTTPProtocolParamsOSSmartTv HTTPTimeseriesGroupHTTPProtocolParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupHTTPProtocolParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupHTTPProtocolParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupHTTPProtocolParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupHTTPProtocolParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupHTTPProtocolParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupHTTPProtocolParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupHTTPProtocolParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupHTTPProtocolParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupHTTPProtocolParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupHTTPProtocolParamsTLSVersionTlSvQuic HTTPTimeseriesGroupHTTPProtocolParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupHTTPProtocolResponse struct{…}` - `Meta HTTPTimeseriesGroupHTTPProtocolResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupHTTPProtocolResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupHTTPProtocolResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaAggIntervalOneHour HTTPTimeseriesGroupHTTPProtocolResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaAggIntervalOneDay HTTPTimeseriesGroupHTTPProtocolResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupHTTPProtocolResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupHTTPProtocolResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupHTTPProtocolResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupHTTPProtocolResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationPercentage HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationMin0Max HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationMinMax HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationRawValues HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalizationRatio HTTPTimeseriesGroupHTTPProtocolResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupHTTPProtocolResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupHTTPProtocolResponseSerie0` - `HTTP []string` - `HTTPS []string` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.HTTPProtocol(context.TODO(), radar.HTTPTimeseriesGroupHTTPProtocolParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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": { "http": [ "10" ], "https": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by HTTP version time series `client.Radar.HTTP.TimeseriesGroups.HTTPVersion(ctx, query) (*HTTPTimeseriesGroupHTTPVersionResponse, error)` **get** `/radar/http/timeseries_groups/http_version` Retrieves the distribution of HTTP requests by HTTP version over time. ### Parameters - `query HTTPTimeseriesGroupHTTPVersionParams` - `AggInterval param.Field[HTTPTimeseriesGroupHTTPVersionParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupHTTPVersionParamsAggInterval15m HTTPTimeseriesGroupHTTPVersionParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupHTTPVersionParamsAggInterval1h HTTPTimeseriesGroupHTTPVersionParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupHTTPVersionParamsAggInterval1d HTTPTimeseriesGroupHTTPVersionParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupHTTPVersionParamsAggInterval1w HTTPTimeseriesGroupHTTPVersionParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupHTTPVersionParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupHTTPVersionParamsBotClassLikelyAutomated HTTPTimeseriesGroupHTTPVersionParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupHTTPVersionParamsBotClassLikelyHuman HTTPTimeseriesGroupHTTPVersionParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupHTTPVersionParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupHTTPVersionParamsBrowserFamilyChrome HTTPTimeseriesGroupHTTPVersionParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupHTTPVersionParamsBrowserFamilyEdge HTTPTimeseriesGroupHTTPVersionParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupHTTPVersionParamsBrowserFamilyFirefox HTTPTimeseriesGroupHTTPVersionParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupHTTPVersionParamsBrowserFamilySafari HTTPTimeseriesGroupHTTPVersionParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupHTTPVersionParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupHTTPVersionParamsDeviceTypeDesktop HTTPTimeseriesGroupHTTPVersionParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupHTTPVersionParamsDeviceTypeMobile HTTPTimeseriesGroupHTTPVersionParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupHTTPVersionParamsDeviceTypeOther HTTPTimeseriesGroupHTTPVersionParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupHTTPVersionParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupHTTPVersionParamsFormatJson HTTPTimeseriesGroupHTTPVersionParamsFormat = "JSON"` - `const HTTPTimeseriesGroupHTTPVersionParamsFormatCsv HTTPTimeseriesGroupHTTPVersionParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupHTTPVersionParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupHTTPVersionParamsHTTPProtocolHTTP HTTPTimeseriesGroupHTTPVersionParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupHTTPVersionParamsHTTPProtocolHTTPS HTTPTimeseriesGroupHTTPVersionParamsHTTPProtocol = "HTTPS"` - `IPVersion param.Field[[]HTTPTimeseriesGroupHTTPVersionParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupHTTPVersionParamsIPVersionIPv4 HTTPTimeseriesGroupHTTPVersionParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupHTTPVersionParamsIPVersionIPv6 HTTPTimeseriesGroupHTTPVersionParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupHTTPVersionParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupHTTPVersionParamsOSWindows HTTPTimeseriesGroupHTTPVersionParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupHTTPVersionParamsOSMacosx HTTPTimeseriesGroupHTTPVersionParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupHTTPVersionParamsOSIos HTTPTimeseriesGroupHTTPVersionParamsOS = "IOS"` - `const HTTPTimeseriesGroupHTTPVersionParamsOSAndroid HTTPTimeseriesGroupHTTPVersionParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupHTTPVersionParamsOSChromeos HTTPTimeseriesGroupHTTPVersionParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupHTTPVersionParamsOSLinux HTTPTimeseriesGroupHTTPVersionParamsOS = "LINUX"` - `const HTTPTimeseriesGroupHTTPVersionParamsOSSmartTv HTTPTimeseriesGroupHTTPVersionParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupHTTPVersionParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupHTTPVersionParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupHTTPVersionParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupHTTPVersionParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupHTTPVersionParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupHTTPVersionParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupHTTPVersionParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupHTTPVersionParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupHTTPVersionParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupHTTPVersionParamsTLSVersionTlSvQuic HTTPTimeseriesGroupHTTPVersionParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupHTTPVersionResponse struct{…}` - `Meta HTTPTimeseriesGroupHTTPVersionResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupHTTPVersionResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupHTTPVersionResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupHTTPVersionResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaAggIntervalOneHour HTTPTimeseriesGroupHTTPVersionResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaAggIntervalOneDay HTTPTimeseriesGroupHTTPVersionResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupHTTPVersionResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupHTTPVersionResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupHTTPVersionResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupHTTPVersionResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationPercentage HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationMin0Max HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationMinMax HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationRawValues HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupHTTPVersionResponseMetaNormalizationRatio HTTPTimeseriesGroupHTTPVersionResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupHTTPVersionResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupHTTPVersionResponseSerie0` - `HTTP1X []string` - `HTTP2 []string` - `HTTP3 []string` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.HTTPVersion(context.TODO(), radar.HTTPTimeseriesGroupHTTPVersionParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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": { "HTTP/1.x": [ "10" ], "HTTP/2": [ "10" ], "HTTP/3": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by IP version time series `client.Radar.HTTP.TimeseriesGroups.IPVersion(ctx, query) (*HTTPTimeseriesGroupIPVersionResponse, error)` **get** `/radar/http/timeseries_groups/ip_version` Retrieves the distribution of HTTP requests by IP version over time. ### Parameters - `query HTTPTimeseriesGroupIPVersionParams` - `AggInterval param.Field[HTTPTimeseriesGroupIPVersionParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupIPVersionParamsAggInterval15m HTTPTimeseriesGroupIPVersionParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupIPVersionParamsAggInterval1h HTTPTimeseriesGroupIPVersionParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupIPVersionParamsAggInterval1d HTTPTimeseriesGroupIPVersionParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupIPVersionParamsAggInterval1w HTTPTimeseriesGroupIPVersionParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupIPVersionParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupIPVersionParamsBotClassLikelyAutomated HTTPTimeseriesGroupIPVersionParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupIPVersionParamsBotClassLikelyHuman HTTPTimeseriesGroupIPVersionParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupIPVersionParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupIPVersionParamsBrowserFamilyChrome HTTPTimeseriesGroupIPVersionParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupIPVersionParamsBrowserFamilyEdge HTTPTimeseriesGroupIPVersionParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupIPVersionParamsBrowserFamilyFirefox HTTPTimeseriesGroupIPVersionParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupIPVersionParamsBrowserFamilySafari HTTPTimeseriesGroupIPVersionParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupIPVersionParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupIPVersionParamsDeviceTypeDesktop HTTPTimeseriesGroupIPVersionParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupIPVersionParamsDeviceTypeMobile HTTPTimeseriesGroupIPVersionParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupIPVersionParamsDeviceTypeOther HTTPTimeseriesGroupIPVersionParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupIPVersionParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupIPVersionParamsFormatJson HTTPTimeseriesGroupIPVersionParamsFormat = "JSON"` - `const HTTPTimeseriesGroupIPVersionParamsFormatCsv HTTPTimeseriesGroupIPVersionParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupIPVersionParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupIPVersionParamsHTTPProtocolHTTP HTTPTimeseriesGroupIPVersionParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupIPVersionParamsHTTPProtocolHTTPS HTTPTimeseriesGroupIPVersionParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupIPVersionParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupIPVersionParamsHTTPVersionHttPv1 HTTPTimeseriesGroupIPVersionParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupIPVersionParamsHTTPVersionHttPv2 HTTPTimeseriesGroupIPVersionParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupIPVersionParamsHTTPVersionHttPv3 HTTPTimeseriesGroupIPVersionParamsHTTPVersion = "HTTPv3"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupIPVersionParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupIPVersionParamsOSWindows HTTPTimeseriesGroupIPVersionParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupIPVersionParamsOSMacosx HTTPTimeseriesGroupIPVersionParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupIPVersionParamsOSIos HTTPTimeseriesGroupIPVersionParamsOS = "IOS"` - `const HTTPTimeseriesGroupIPVersionParamsOSAndroid HTTPTimeseriesGroupIPVersionParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupIPVersionParamsOSChromeos HTTPTimeseriesGroupIPVersionParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupIPVersionParamsOSLinux HTTPTimeseriesGroupIPVersionParamsOS = "LINUX"` - `const HTTPTimeseriesGroupIPVersionParamsOSSmartTv HTTPTimeseriesGroupIPVersionParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupIPVersionParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupIPVersionParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupIPVersionParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupIPVersionParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupIPVersionParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupIPVersionParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupIPVersionParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupIPVersionParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupIPVersionParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupIPVersionParamsTLSVersionTlSvQuic HTTPTimeseriesGroupIPVersionParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupIPVersionResponse struct{…}` - `Meta HTTPTimeseriesGroupIPVersionResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupIPVersionResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupIPVersionResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupIPVersionResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupIPVersionResponseMetaAggIntervalOneHour HTTPTimeseriesGroupIPVersionResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupIPVersionResponseMetaAggIntervalOneDay HTTPTimeseriesGroupIPVersionResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupIPVersionResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupIPVersionResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupIPVersionResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupIPVersionResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupIPVersionResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupIPVersionResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupIPVersionResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationPercentage HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationMin0Max HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationMinMax HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationRawValues HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupIPVersionResponseMetaNormalizationRatio HTTPTimeseriesGroupIPVersionResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupIPVersionResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupIPVersionResponseSerie0` - `IPv4 []string` - `IPv6 []string` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.IPVersion(context.TODO(), radar.HTTPTimeseriesGroupIPVersionParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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": { "IPv4": [ "10" ], "IPv6": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` ## Get HTTP requests by OS time series `client.Radar.HTTP.TimeseriesGroups.OS(ctx, query) (*HTTPTimeseriesGroupOSResponse, error)` **get** `/radar/http/timeseries_groups/os` Retrieves the distribution of HTTP requests by operating system over time. ### Parameters - `query HTTPTimeseriesGroupOSParams` - `AggInterval param.Field[HTTPTimeseriesGroupOSParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupOSParamsAggInterval15m HTTPTimeseriesGroupOSParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupOSParamsAggInterval1h HTTPTimeseriesGroupOSParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupOSParamsAggInterval1d HTTPTimeseriesGroupOSParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupOSParamsAggInterval1w HTTPTimeseriesGroupOSParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupOSParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupOSParamsBotClassLikelyAutomated HTTPTimeseriesGroupOSParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupOSParamsBotClassLikelyHuman HTTPTimeseriesGroupOSParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupOSParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupOSParamsBrowserFamilyChrome HTTPTimeseriesGroupOSParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupOSParamsBrowserFamilyEdge HTTPTimeseriesGroupOSParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupOSParamsBrowserFamilyFirefox HTTPTimeseriesGroupOSParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupOSParamsBrowserFamilySafari HTTPTimeseriesGroupOSParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupOSParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupOSParamsDeviceTypeDesktop HTTPTimeseriesGroupOSParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupOSParamsDeviceTypeMobile HTTPTimeseriesGroupOSParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupOSParamsDeviceTypeOther HTTPTimeseriesGroupOSParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupOSParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupOSParamsFormatJson HTTPTimeseriesGroupOSParamsFormat = "JSON"` - `const HTTPTimeseriesGroupOSParamsFormatCsv HTTPTimeseriesGroupOSParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupOSParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupOSParamsHTTPProtocolHTTP HTTPTimeseriesGroupOSParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupOSParamsHTTPProtocolHTTPS HTTPTimeseriesGroupOSParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupOSParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupOSParamsHTTPVersionHttPv1 HTTPTimeseriesGroupOSParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupOSParamsHTTPVersionHttPv2 HTTPTimeseriesGroupOSParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupOSParamsHTTPVersionHttPv3 HTTPTimeseriesGroupOSParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupOSParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupOSParamsIPVersionIPv4 HTTPTimeseriesGroupOSParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupOSParamsIPVersionIPv6 HTTPTimeseriesGroupOSParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `TLSVersion param.Field[[]HTTPTimeseriesGroupOSParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupOSParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupOSParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupOSParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupOSParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupOSParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupOSParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupOSParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupOSParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupOSParamsTLSVersionTlSvQuic HTTPTimeseriesGroupOSParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupOSResponse struct{…}` - `Meta HTTPTimeseriesGroupOSResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupOSResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupOSResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupOSResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupOSResponseMetaAggIntervalOneHour HTTPTimeseriesGroupOSResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupOSResponseMetaAggIntervalOneDay HTTPTimeseriesGroupOSResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupOSResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupOSResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupOSResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupOSResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupOSResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupOSResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupOSResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupOSResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupOSResponseMetaNormalizationPercentage HTTPTimeseriesGroupOSResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupOSResponseMetaNormalizationMin0Max HTTPTimeseriesGroupOSResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupOSResponseMetaNormalizationMinMax HTTPTimeseriesGroupOSResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupOSResponseMetaNormalizationRawValues HTTPTimeseriesGroupOSResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupOSResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupOSResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupOSResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupOSResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupOSResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupOSResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupOSResponseMetaNormalizationRatio HTTPTimeseriesGroupOSResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupOSResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupOSResponseSerie0` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.OS(context.TODO(), radar.HTTPTimeseriesGroupOSParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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 } ``` ## Get HTTP requests by post-quantum support time series `client.Radar.HTTP.TimeseriesGroups.PostQuantum(ctx, query) (*HTTPTimeseriesGroupPostQuantumResponse, error)` **get** `/radar/http/timeseries_groups/post_quantum` Retrieves the distribution of HTTP requests by post-quantum support over time. ### Parameters - `query HTTPTimeseriesGroupPostQuantumParams` - `AggInterval param.Field[HTTPTimeseriesGroupPostQuantumParamsAggInterval]` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupPostQuantumParamsAggInterval15m HTTPTimeseriesGroupPostQuantumParamsAggInterval = "15m"` - `const HTTPTimeseriesGroupPostQuantumParamsAggInterval1h HTTPTimeseriesGroupPostQuantumParamsAggInterval = "1h"` - `const HTTPTimeseriesGroupPostQuantumParamsAggInterval1d HTTPTimeseriesGroupPostQuantumParamsAggInterval = "1d"` - `const HTTPTimeseriesGroupPostQuantumParamsAggInterval1w HTTPTimeseriesGroupPostQuantumParamsAggInterval = "1w"` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTimeseriesGroupPostQuantumParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTimeseriesGroupPostQuantumParamsBotClassLikelyAutomated HTTPTimeseriesGroupPostQuantumParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTimeseriesGroupPostQuantumParamsBotClassLikelyHuman HTTPTimeseriesGroupPostQuantumParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTimeseriesGroupPostQuantumParamsBrowserFamily]` Filters results by browser family. - `const HTTPTimeseriesGroupPostQuantumParamsBrowserFamilyChrome HTTPTimeseriesGroupPostQuantumParamsBrowserFamily = "CHROME"` - `const HTTPTimeseriesGroupPostQuantumParamsBrowserFamilyEdge HTTPTimeseriesGroupPostQuantumParamsBrowserFamily = "EDGE"` - `const HTTPTimeseriesGroupPostQuantumParamsBrowserFamilyFirefox HTTPTimeseriesGroupPostQuantumParamsBrowserFamily = "FIREFOX"` - `const HTTPTimeseriesGroupPostQuantumParamsBrowserFamilySafari HTTPTimeseriesGroupPostQuantumParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTimeseriesGroupPostQuantumParamsDeviceType]` Filters results by device type. - `const HTTPTimeseriesGroupPostQuantumParamsDeviceTypeDesktop HTTPTimeseriesGroupPostQuantumParamsDeviceType = "DESKTOP"` - `const HTTPTimeseriesGroupPostQuantumParamsDeviceTypeMobile HTTPTimeseriesGroupPostQuantumParamsDeviceType = "MOBILE"` - `const HTTPTimeseriesGroupPostQuantumParamsDeviceTypeOther HTTPTimeseriesGroupPostQuantumParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTimeseriesGroupPostQuantumParamsFormat]` Format in which results will be returned. - `const HTTPTimeseriesGroupPostQuantumParamsFormatJson HTTPTimeseriesGroupPostQuantumParamsFormat = "JSON"` - `const HTTPTimeseriesGroupPostQuantumParamsFormatCsv HTTPTimeseriesGroupPostQuantumParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTimeseriesGroupPostQuantumParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTimeseriesGroupPostQuantumParamsHTTPProtocolHTTP HTTPTimeseriesGroupPostQuantumParamsHTTPProtocol = "HTTP"` - `const HTTPTimeseriesGroupPostQuantumParamsHTTPProtocolHTTPS HTTPTimeseriesGroupPostQuantumParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTimeseriesGroupPostQuantumParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTimeseriesGroupPostQuantumParamsHTTPVersionHttPv1 HTTPTimeseriesGroupPostQuantumParamsHTTPVersion = "HTTPv1"` - `const HTTPTimeseriesGroupPostQuantumParamsHTTPVersionHttPv2 HTTPTimeseriesGroupPostQuantumParamsHTTPVersion = "HTTPv2"` - `const HTTPTimeseriesGroupPostQuantumParamsHTTPVersionHttPv3 HTTPTimeseriesGroupPostQuantumParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTimeseriesGroupPostQuantumParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTimeseriesGroupPostQuantumParamsIPVersionIPv4 HTTPTimeseriesGroupPostQuantumParamsIPVersion = "IPv4"` - `const HTTPTimeseriesGroupPostQuantumParamsIPVersionIPv6 HTTPTimeseriesGroupPostQuantumParamsIPVersion = "IPv6"` - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTimeseriesGroupPostQuantumParamsOS]` Filters results by operating system. - `const HTTPTimeseriesGroupPostQuantumParamsOSWindows HTTPTimeseriesGroupPostQuantumParamsOS = "WINDOWS"` - `const HTTPTimeseriesGroupPostQuantumParamsOSMacosx HTTPTimeseriesGroupPostQuantumParamsOS = "MACOSX"` - `const HTTPTimeseriesGroupPostQuantumParamsOSIos HTTPTimeseriesGroupPostQuantumParamsOS = "IOS"` - `const HTTPTimeseriesGroupPostQuantumParamsOSAndroid HTTPTimeseriesGroupPostQuantumParamsOS = "ANDROID"` - `const HTTPTimeseriesGroupPostQuantumParamsOSChromeos HTTPTimeseriesGroupPostQuantumParamsOS = "CHROMEOS"` - `const HTTPTimeseriesGroupPostQuantumParamsOSLinux HTTPTimeseriesGroupPostQuantumParamsOS = "LINUX"` - `const HTTPTimeseriesGroupPostQuantumParamsOSSmartTv HTTPTimeseriesGroupPostQuantumParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTimeseriesGroupPostQuantumParamsTLSVersion]` Filters results by TLS version. - `const HTTPTimeseriesGroupPostQuantumParamsTLSVersionTlSv1_0 HTTPTimeseriesGroupPostQuantumParamsTLSVersion = "TLSv1_0"` - `const HTTPTimeseriesGroupPostQuantumParamsTLSVersionTlSv1_1 HTTPTimeseriesGroupPostQuantumParamsTLSVersion = "TLSv1_1"` - `const HTTPTimeseriesGroupPostQuantumParamsTLSVersionTlSv1_2 HTTPTimeseriesGroupPostQuantumParamsTLSVersion = "TLSv1_2"` - `const HTTPTimeseriesGroupPostQuantumParamsTLSVersionTlSv1_3 HTTPTimeseriesGroupPostQuantumParamsTLSVersion = "TLSv1_3"` - `const HTTPTimeseriesGroupPostQuantumParamsTLSVersionTlSvQuic HTTPTimeseriesGroupPostQuantumParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTimeseriesGroupPostQuantumResponse struct{…}` - `Meta HTTPTimeseriesGroupPostQuantumResponseMeta` Metadata for the results. - `AggInterval HTTPTimeseriesGroupPostQuantumResponseMetaAggInterval` Aggregation interval of the results (e.g., in 15 minutes or 1 hour intervals). Refer to [Aggregation intervals](https://developers.cloudflare.com/radar/concepts/aggregation-intervals/). - `const HTTPTimeseriesGroupPostQuantumResponseMetaAggIntervalFifteenMinutes HTTPTimeseriesGroupPostQuantumResponseMetaAggInterval = "FIFTEEN_MINUTES"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaAggIntervalOneHour HTTPTimeseriesGroupPostQuantumResponseMetaAggInterval = "ONE_HOUR"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaAggIntervalOneDay HTTPTimeseriesGroupPostQuantumResponseMetaAggInterval = "ONE_DAY"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaAggIntervalOneWeek HTTPTimeseriesGroupPostQuantumResponseMetaAggInterval = "ONE_WEEK"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaAggIntervalOneMonth HTTPTimeseriesGroupPostQuantumResponseMetaAggInterval = "ONE_MONTH"` - `ConfidenceInfo HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfo` - `Annotations []HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTimeseriesGroupPostQuantumResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTimeseriesGroupPostQuantumResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTimeseriesGroupPostQuantumResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationPercentage HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationMin0Max HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationMinMax HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "MIN_MAX"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationRawValues HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationPercentageChange HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationRollingAverage HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationOverlappedPercentage HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTimeseriesGroupPostQuantumResponseMetaNormalizationRatio HTTPTimeseriesGroupPostQuantumResponseMetaNormalization = "RATIO"` - `Units []HTTPTimeseriesGroupPostQuantumResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Serie0 HTTPTimeseriesGroupPostQuantumResponseSerie0` - `NotSupported []string` - `Supported []string` - `Timestamps []Time` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.TimeseriesGroups.PostQuantum(context.TODO(), radar.HTTPTimeseriesGroupPostQuantumParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "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": { "NOT_SUPPORTED": [ "10" ], "SUPPORTED": [ "10" ], "timestamps": [ "2019-12-27T18:11:19.117Z" ] } }, "success": true } ``` # Top ## Get top user agents by HTTP requests `client.Radar.HTTP.Top.Browser(ctx, query) (*HTTPTopBrowserResponse, error)` **get** `/radar/http/top/browser` Retrieves the top user agents by HTTP requests. ### Parameters - `query HTTPTopBrowserParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTopBrowserParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTopBrowserParamsBotClassLikelyAutomated HTTPTopBrowserParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTopBrowserParamsBotClassLikelyHuman HTTPTopBrowserParamsBotClass = "LIKELY_HUMAN"` - `BrowserFamily param.Field[[]HTTPTopBrowserParamsBrowserFamily]` Filters results by browser family. - `const HTTPTopBrowserParamsBrowserFamilyChrome HTTPTopBrowserParamsBrowserFamily = "CHROME"` - `const HTTPTopBrowserParamsBrowserFamilyEdge HTTPTopBrowserParamsBrowserFamily = "EDGE"` - `const HTTPTopBrowserParamsBrowserFamilyFirefox HTTPTopBrowserParamsBrowserFamily = "FIREFOX"` - `const HTTPTopBrowserParamsBrowserFamilySafari HTTPTopBrowserParamsBrowserFamily = "SAFARI"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTopBrowserParamsDeviceType]` Filters results by device type. - `const HTTPTopBrowserParamsDeviceTypeDesktop HTTPTopBrowserParamsDeviceType = "DESKTOP"` - `const HTTPTopBrowserParamsDeviceTypeMobile HTTPTopBrowserParamsDeviceType = "MOBILE"` - `const HTTPTopBrowserParamsDeviceTypeOther HTTPTopBrowserParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTopBrowserParamsFormat]` Format in which results will be returned. - `const HTTPTopBrowserParamsFormatJson HTTPTopBrowserParamsFormat = "JSON"` - `const HTTPTopBrowserParamsFormatCsv HTTPTopBrowserParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTopBrowserParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTopBrowserParamsHTTPProtocolHTTP HTTPTopBrowserParamsHTTPProtocol = "HTTP"` - `const HTTPTopBrowserParamsHTTPProtocolHTTPS HTTPTopBrowserParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTopBrowserParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTopBrowserParamsHTTPVersionHttPv1 HTTPTopBrowserParamsHTTPVersion = "HTTPv1"` - `const HTTPTopBrowserParamsHTTPVersionHttPv2 HTTPTopBrowserParamsHTTPVersion = "HTTPv2"` - `const HTTPTopBrowserParamsHTTPVersionHttPv3 HTTPTopBrowserParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTopBrowserParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTopBrowserParamsIPVersionIPv4 HTTPTopBrowserParamsIPVersion = "IPv4"` - `const HTTPTopBrowserParamsIPVersionIPv6 HTTPTopBrowserParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTopBrowserParamsOS]` Filters results by operating system. - `const HTTPTopBrowserParamsOSWindows HTTPTopBrowserParamsOS = "WINDOWS"` - `const HTTPTopBrowserParamsOSMacosx HTTPTopBrowserParamsOS = "MACOSX"` - `const HTTPTopBrowserParamsOSIos HTTPTopBrowserParamsOS = "IOS"` - `const HTTPTopBrowserParamsOSAndroid HTTPTopBrowserParamsOS = "ANDROID"` - `const HTTPTopBrowserParamsOSChromeos HTTPTopBrowserParamsOS = "CHROMEOS"` - `const HTTPTopBrowserParamsOSLinux HTTPTopBrowserParamsOS = "LINUX"` - `const HTTPTopBrowserParamsOSSmartTv HTTPTopBrowserParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTopBrowserParamsTLSVersion]` Filters results by TLS version. - `const HTTPTopBrowserParamsTLSVersionTlSv1_0 HTTPTopBrowserParamsTLSVersion = "TLSv1_0"` - `const HTTPTopBrowserParamsTLSVersionTlSv1_1 HTTPTopBrowserParamsTLSVersion = "TLSv1_1"` - `const HTTPTopBrowserParamsTLSVersionTlSv1_2 HTTPTopBrowserParamsTLSVersion = "TLSv1_2"` - `const HTTPTopBrowserParamsTLSVersionTlSv1_3 HTTPTopBrowserParamsTLSVersion = "TLSv1_3"` - `const HTTPTopBrowserParamsTLSVersionTlSvQuic HTTPTopBrowserParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTopBrowserResponse struct{…}` - `Meta HTTPTopBrowserResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPTopBrowserResponseMetaConfidenceInfo` - `Annotations []HTTPTopBrowserResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTopBrowserResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTopBrowserResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTopBrowserResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTopBrowserResponseMetaNormalizationPercentage HTTPTopBrowserResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTopBrowserResponseMetaNormalizationMin0Max HTTPTopBrowserResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTopBrowserResponseMetaNormalizationMinMax HTTPTopBrowserResponseMetaNormalization = "MIN_MAX"` - `const HTTPTopBrowserResponseMetaNormalizationRawValues HTTPTopBrowserResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTopBrowserResponseMetaNormalizationPercentageChange HTTPTopBrowserResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTopBrowserResponseMetaNormalizationRollingAverage HTTPTopBrowserResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTopBrowserResponseMetaNormalizationOverlappedPercentage HTTPTopBrowserResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTopBrowserResponseMetaNormalizationRatio HTTPTopBrowserResponseMetaNormalization = "RATIO"` - `Units []HTTPTopBrowserResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPTopBrowserResponseTop0` - `Name string` - `Value string` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Top.Browser(context.TODO(), radar.HTTPTopBrowserParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "name": "chrome", "value": "value" } ] }, "success": true } ``` ## Get top user agent families by HTTP requests `client.Radar.HTTP.Top.BrowserFamily(ctx, query) (*HTTPTopBrowserFamilyResponse, error)` **get** `/radar/http/top/browser_family` Retrieves the top user agents, aggregated in families, by HTTP requests. ### Parameters - `query HTTPTopBrowserFamilyParams` - `ASN param.Field[[]string]` Filters results by Autonomous System. Specify one or more Autonomous System Numbers (ASNs) as a comma-separated list. Prefix with `-` to exclude ASNs from results. For example, `-174, 3356` excludes results from AS174, but includes results from AS3356. - `BotClass param.Field[[]HTTPTopBrowserFamilyParamsBotClass]` Filters results by bot class. Refer to [Bot classes](https://developers.cloudflare.com/radar/concepts/bot-classes/). - `const HTTPTopBrowserFamilyParamsBotClassLikelyAutomated HTTPTopBrowserFamilyParamsBotClass = "LIKELY_AUTOMATED"` - `const HTTPTopBrowserFamilyParamsBotClassLikelyHuman HTTPTopBrowserFamilyParamsBotClass = "LIKELY_HUMAN"` - `Continent param.Field[[]string]` Filters results by continent. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude continents from results. For example, `-EU,NA` excludes results from EU, but includes results from NA. - `DateEnd param.Field[[]Time]` End of the date range (inclusive). - `DateRange param.Field[[]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 param.Field[[]Time]` Start of the date range. - `DeviceType param.Field[[]HTTPTopBrowserFamilyParamsDeviceType]` Filters results by device type. - `const HTTPTopBrowserFamilyParamsDeviceTypeDesktop HTTPTopBrowserFamilyParamsDeviceType = "DESKTOP"` - `const HTTPTopBrowserFamilyParamsDeviceTypeMobile HTTPTopBrowserFamilyParamsDeviceType = "MOBILE"` - `const HTTPTopBrowserFamilyParamsDeviceTypeOther HTTPTopBrowserFamilyParamsDeviceType = "OTHER"` - `Format param.Field[HTTPTopBrowserFamilyParamsFormat]` Format in which results will be returned. - `const HTTPTopBrowserFamilyParamsFormatJson HTTPTopBrowserFamilyParamsFormat = "JSON"` - `const HTTPTopBrowserFamilyParamsFormatCsv HTTPTopBrowserFamilyParamsFormat = "CSV"` - `GeoID param.Field[[]string]` Filters results by Geolocation. Specify a comma-separated list of GeoNames IDs. Prefix with `-` to exclude geoIds from results. For example, `-2267056,360689` excludes results from the 2267056 (Lisbon), but includes results from 5128638 (New York). - `HTTPProtocol param.Field[[]HTTPTopBrowserFamilyParamsHTTPProtocol]` Filters results by HTTP protocol (HTTP vs. HTTPS). - `const HTTPTopBrowserFamilyParamsHTTPProtocolHTTP HTTPTopBrowserFamilyParamsHTTPProtocol = "HTTP"` - `const HTTPTopBrowserFamilyParamsHTTPProtocolHTTPS HTTPTopBrowserFamilyParamsHTTPProtocol = "HTTPS"` - `HTTPVersion param.Field[[]HTTPTopBrowserFamilyParamsHTTPVersion]` Filters results by HTTP version. - `const HTTPTopBrowserFamilyParamsHTTPVersionHttPv1 HTTPTopBrowserFamilyParamsHTTPVersion = "HTTPv1"` - `const HTTPTopBrowserFamilyParamsHTTPVersionHttPv2 HTTPTopBrowserFamilyParamsHTTPVersion = "HTTPv2"` - `const HTTPTopBrowserFamilyParamsHTTPVersionHttPv3 HTTPTopBrowserFamilyParamsHTTPVersion = "HTTPv3"` - `IPVersion param.Field[[]HTTPTopBrowserFamilyParamsIPVersion]` Filters results by IP version (Ipv4 vs. IPv6). - `const HTTPTopBrowserFamilyParamsIPVersionIPv4 HTTPTopBrowserFamilyParamsIPVersion = "IPv4"` - `const HTTPTopBrowserFamilyParamsIPVersionIPv6 HTTPTopBrowserFamilyParamsIPVersion = "IPv6"` - `Limit param.Field[int64]` Limits the number of objects returned in the response. - `Location param.Field[[]string]` Filters results by location. Specify a comma-separated list of alpha-2 codes. Prefix with `-` to exclude locations from results. For example, `-US,PT` excludes results from the US, but includes results from PT. - `Name param.Field[[]string]` Array of names used to label the series in the response. - `OS param.Field[[]HTTPTopBrowserFamilyParamsOS]` Filters results by operating system. - `const HTTPTopBrowserFamilyParamsOSWindows HTTPTopBrowserFamilyParamsOS = "WINDOWS"` - `const HTTPTopBrowserFamilyParamsOSMacosx HTTPTopBrowserFamilyParamsOS = "MACOSX"` - `const HTTPTopBrowserFamilyParamsOSIos HTTPTopBrowserFamilyParamsOS = "IOS"` - `const HTTPTopBrowserFamilyParamsOSAndroid HTTPTopBrowserFamilyParamsOS = "ANDROID"` - `const HTTPTopBrowserFamilyParamsOSChromeos HTTPTopBrowserFamilyParamsOS = "CHROMEOS"` - `const HTTPTopBrowserFamilyParamsOSLinux HTTPTopBrowserFamilyParamsOS = "LINUX"` - `const HTTPTopBrowserFamilyParamsOSSmartTv HTTPTopBrowserFamilyParamsOS = "SMART_TV"` - `TLSVersion param.Field[[]HTTPTopBrowserFamilyParamsTLSVersion]` Filters results by TLS version. - `const HTTPTopBrowserFamilyParamsTLSVersionTlSv1_0 HTTPTopBrowserFamilyParamsTLSVersion = "TLSv1_0"` - `const HTTPTopBrowserFamilyParamsTLSVersionTlSv1_1 HTTPTopBrowserFamilyParamsTLSVersion = "TLSv1_1"` - `const HTTPTopBrowserFamilyParamsTLSVersionTlSv1_2 HTTPTopBrowserFamilyParamsTLSVersion = "TLSv1_2"` - `const HTTPTopBrowserFamilyParamsTLSVersionTlSv1_3 HTTPTopBrowserFamilyParamsTLSVersion = "TLSv1_3"` - `const HTTPTopBrowserFamilyParamsTLSVersionTlSvQuic HTTPTopBrowserFamilyParamsTLSVersion = "TLSvQUIC"` ### Returns - `type HTTPTopBrowserFamilyResponse struct{…}` - `Meta HTTPTopBrowserFamilyResponseMeta` Metadata for the results. - `ConfidenceInfo HTTPTopBrowserFamilyResponseMetaConfidenceInfo` - `Annotations []HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotation` - `DataSource HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource` Data source for annotations. - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceAll HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "ALL"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceAIBots HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "AI_BOTS"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceAIGateway HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "AI_GATEWAY"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceBGP HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "BGP"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceBots HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "BOTS"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceConnectionAnomaly HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "CONNECTION_ANOMALY"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceCT HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "CT"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDNS HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DNS"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDNSMagnitude HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_MAGNITUDE"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDNSAS112 HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DNS_AS112"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceDos HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "DOS"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceEmailRouting HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_ROUTING"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceEmailSecurity HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "EMAIL_SECURITY"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceFw HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "FW"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceFwPg HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "FW_PG"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTP HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTPControl HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CONTROL"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTPCrawlerReferer HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_CRAWLER_REFERER"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceHTTPOrigins HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "HTTP_ORIGINS"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceIQI HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "IQI"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceLeakedCredentials HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "LEAKED_CREDENTIALS"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceNet HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "NET"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceRobotsTXT HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "ROBOTS_TXT"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceSpeed HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "SPEED"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSourceWorkersAI HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsDataSource = "WORKERS_AI"` - `Description string` - `EndDate Time` - `EventType HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType` Event type for annotations. - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeEvent HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "EVENT"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeGeneral HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "GENERAL"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeOutage HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "OUTAGE"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypePartialProjection HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "PARTIAL_PROJECTION"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypePipeline HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "PIPELINE"` - `const HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventTypeTrafficAnomaly HTTPTopBrowserFamilyResponseMetaConfidenceInfoAnnotationsEventType = "TRAFFIC_ANOMALY"` - `IsInstantaneous bool` Whether event is a single point in time or a time range. - `LinkedURL string` - `StartDate Time` - `Level int64` Provides an indication of how much confidence Cloudflare has in the data. - `DateRange []HTTPTopBrowserFamilyResponseMetaDateRange` - `EndTime Time` Adjusted end of date range. - `StartTime Time` Adjusted start of date range. - `LastUpdated Time` Timestamp of the last dataset update. - `Normalization HTTPTopBrowserFamilyResponseMetaNormalization` Normalization method applied to the results. Refer to [Normalization methods](https://developers.cloudflare.com/radar/concepts/normalization/). - `const HTTPTopBrowserFamilyResponseMetaNormalizationPercentage HTTPTopBrowserFamilyResponseMetaNormalization = "PERCENTAGE"` - `const HTTPTopBrowserFamilyResponseMetaNormalizationMin0Max HTTPTopBrowserFamilyResponseMetaNormalization = "MIN0_MAX"` - `const HTTPTopBrowserFamilyResponseMetaNormalizationMinMax HTTPTopBrowserFamilyResponseMetaNormalization = "MIN_MAX"` - `const HTTPTopBrowserFamilyResponseMetaNormalizationRawValues HTTPTopBrowserFamilyResponseMetaNormalization = "RAW_VALUES"` - `const HTTPTopBrowserFamilyResponseMetaNormalizationPercentageChange HTTPTopBrowserFamilyResponseMetaNormalization = "PERCENTAGE_CHANGE"` - `const HTTPTopBrowserFamilyResponseMetaNormalizationRollingAverage HTTPTopBrowserFamilyResponseMetaNormalization = "ROLLING_AVERAGE"` - `const HTTPTopBrowserFamilyResponseMetaNormalizationOverlappedPercentage HTTPTopBrowserFamilyResponseMetaNormalization = "OVERLAPPED_PERCENTAGE"` - `const HTTPTopBrowserFamilyResponseMetaNormalizationRatio HTTPTopBrowserFamilyResponseMetaNormalization = "RATIO"` - `Units []HTTPTopBrowserFamilyResponseMetaUnit` Measurement units for the results. - `Name string` - `Value string` - `Top0 []HTTPTopBrowserFamilyResponseTop0` - `Name string` - `Value string` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/radar" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) response, err := client.Radar.HTTP.Top.BrowserFamily(context.TODO(), radar.HTTPTopBrowserFamilyParams{ }) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response.Meta) } ``` #### Response ```json { "result": { "meta": { "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" } ] }, "top_0": [ { "name": "chrome", "value": "value" } ] }, "success": true } ```