The following shows how to generate the security-analytics-roi-attack-timeseries report using either the Reporting API's Generate a report POST operation or the Get a cacheable report GET operation. Details about each report's supported products, metrics, filters, and available data intervals are also available dynamically by running the API's Get a report type operation, also shown below. See also other available reports.
Report definition
This report shows attack data across all your infrastructure security products, such as Edge DNS, Prolexic, App & API Protector.
Business object: accountId
Data available for: 90 days
Available metrics
| Metric | Description | |
|---|---|---|
| Data metrics | ||
aap | Number of attacks detected by App & API Protector. | |
all | Total number of attacks across all infrastructure security products. | |
edns | Number of attacks detected by Edge DNS. | |
prolexic | Number of Prolexic events. | |
timestampMs | Date and time when traffic was detected. |
Available filters
| Filter | Type | Description |
|---|---|---|
| Optional filters | ||
edns | String | Zone name. |
hostname | String | Hostname associated with your security configuration. |
policyDomainName | String | Unique name or tag used by administrators to refer to policies, rules, entitlements, or configurations. |
POST request
POST /reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions/1/report-data{?start,end}
Sample: /reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions/1/report-data?start=2026-02-01T00%3A00%3A00Z&end=2026-03-01T00%3A00%3A00Z
Query parameters
| Parameter | Type | Sample | Description |
|---|---|---|---|
| Required | |||
start | String | 2026-02-01T00:00:00Z | Specifies the start of the reported period as an ISO-8601 timestamp with optional time zone. The report includes data that matches the start value’s timestamp. |
end | String | 2026-03-01T00:00:00Z | Specifies the end of the reported period as an ISO-8601 timestamp with optional time zone. The report excludes any data that matches the end value’s timestamp. |
JSON request members
| Member | Type | Description |
|---|---|---|
objectIds | Array | Specifies the set of accountId values you want to report on. |
objectIds | Enumeration | As an alternative to an array of ID values, specify all as a string for unfiltered data. Either way, objectIds is required. |
metrics | Array | The set of desired metrics. If omitted, the report includes all available metrics. |
filters | Map of Arrays | Specifies a set of custom filters, with each filter's name keying an array with each filter's set of values. |
Request body:
{
"objectIds": [
"1111",
"1122",
"2222",
"2233"
],
"metrics": [
"aap",
"all",
"edns",
"prolexic",
"timestampMs"
],
"filters": {
"edns": [
"a11.example.net",
"a5.example.net"
],
"hostname": [
"m.example.com",
"blog.example.com"
],
"policyDomainName": [
"test_one",
"test_two"
]
}
}
GET request
GET /reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions/1/report-data{?start,end,objectIds,allObjectIds,metrics,filters}
Sample: /reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions/1/report-data?start=2026-02-01T00%3A00%3A00Z&end=2026-03-01T00%3A00%3A00Z&objectIds=1111,1122,2222,2233&metrics=aap%2Call&filters=edns%3Da11.example.net%2Cedns%3Da5.example.net%2Chostname%3Dimg.example.com%2Chostname%3Dblog.example.com
Query parameters
| Parameter | Type | Sample | Description |
|---|---|---|---|
| Required | |||
start | String | 2026-02-01T00:00:00Z | Specifies the start of the reported period as an ISO-8601 timestamp with optional time zone. The report includes data that matches the start value’s timestamp. |
end | String | 2026-03-01T00:00:00Z | Specifies the end of the reported period as an ISO-8601 timestamp with optional time zone. The report excludes any data that matches the end value’s timestamp. |
| Optional | |||
allObjectIds | Boolean | true | As an alternative to objectIds, enabling this generates a report that includes all IDs available for the accountId objectType. This parameter is ignored if the request also specifies a set of objectIds. |
objectIds | String | 1111,1122,2222,2233 | As an alternative to allObjectIds, specifies the set of unique IDs for the accountId objectType you want to report on, formatted as a comma-delimited list. |
metrics | String | aap,all | Specifies a comma-separated list of metrics to include in the report, otherwise all metrics if omitted. The set of available metrics depends on the type of report. URL-encode the entire value in the GET request. |
filters | String | edns=a11.example.net,edns=a5.example.net,hostname=img.example.com,hostname=blog.example.com | Specifies criteria to filter the report’s data. The set of available filters depends on the type of report. Separate each filter name and value with an equals (=) character, and separate various name/value pairs with commas (,). To specify more than one filter value, repeat the filter name. See the accompanying example for guidance. URL-encode the entire value in the GET request. |
JSON response
Status 200 application/json
Response body:
{
"metadata": {
"name": "security-analytics-roi-attack-timeseries",
"version": "1",
"outputType": "FLAT",
"start": "2026-02-01T00:00:00Z",
"end": "2026-03-01T00:00:00Z",
"availableDataEnds": null,
"suggestedRetryTime": null,
"rowCount": 4,
"filters": [
{
"name": "edns",
"values": [
"a11.example.net",
"a5.example.net"
]
},
{
"name": "hostname",
"values": [
"img.example.com",
"m.example.com"
]
},
{
"name": "policyDomainName",
"values": [
"test_one",
"test_two",
]
}
],
"columns": [
{
"name": "aap",
"label": "App & API Protector"
},
{
"name": "all",
"label": "All"
},
{
"name": "edns",
"label": "Edge DNS"
},
{
"name": "prolexic",
"label": "Prolexic"
},
{
"name": "timestampMs",
"label": "Timestamp"
}
],
"objectType": "accountId",
"objectIds": [
"1111",
"1122",
"2222",
"2233"
]
},
"data": [
{
"aap": "4391",
"all": "6625",
"edns": "2127",
"prolexic": "107",
"timestampMs": "1768089600000"
},
{
"aap": "54",
"all": "5654",
"edns": "4577",
"prolexic": "1023",
"timestampMs": "1768089900000"
},
{
"aap": "1791",
"all": "8228",
"edns": "3928",
"prolexic": "2509",
"timestampMs": "1768089910000"
},
{
"aap": "4279",
"all": "11208",
"edns": "4738",
"prolexic": "2191",
"timestampMs": "1768089930000"
}
],
"summaryStatistics": {}
}
Get report details
This sample Get a report type operation gets the same information you need to run the security-analytics-roi-attack-timeseries report as provided in this reference documentation, but available dynamically to your API client application.
GET /reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions/1
Status 200 application/json
Response body:
{
"name": "security-analytics-roi-attack-timeseries",
"description": "This report shows attack data across all your infrastructure security products, such as Edge DNS, Prolexic, App & API Protector.",
"businessObjectName": "accountId",
"version": 1,
"status": "PUBLISHED",
"deprecated": false,
"timeBased": false,
"supportsPagination": false,
"outputType": "FLAT",
"available": true,
"metrics": [
{
"name": "timestampMs",
"description": "Date and time when traffic was detected.",
"label": "Timestamp",
"unit": "MILLISECOND",
"summaryStatistic": false
},
{
"name": "all",
"description": "Total number of attacks across all infrastructure security products.",
"label": "All",
"unit": "COUNT",
"summaryStatistic": false
},
{
"name": "prolexic",
"description": "Number of Prolexic events.",
"label": "Prolexic",
"unit": "COUNT",
"summaryStatistic": false
},
{
"name": "aap",
"description": "Number of attacks detected for App & API Protector.",
"label": "App & API Protector",
"unit": "COUNT",
"summaryStatistic": false
},
{
"name": "edns",
"description": "Number of attacks detected for Edge DNS.",
"label": "Edge DNS",
"unit": "COUNT",
"summaryStatistic": false
}
],
"groupOutlyingValues": {
"enabled": false
},
"filters": [
{
"name": "policyDomainName",
"type": "string",
"description": "Unique name or tag used by administrators to refer to policies, rules, entitlements, or configurations.",
"required": false
},
{
"name": "edns",
"type": "string",
"description": "Zone name.",
"required": false
},
{
"name": "hostname",
"type": "string",
"description": "Hostname associated with your security configuration.",
"required": false
}
],
"intervals": [
"FIVE_MINUTES"
],
"dataRetentionDays": 90,
"links": [
{
"rel": "self",
"href": "/reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions/1"
},
{
"rel": "versions",
"href": "/reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions"
},
{
"rel": "all-reports",
"href": "/reporting-api/v1/reports"
},
{
"rel": "execute-report",
"href": "/reporting-api/v1/reports/security-analytics-roi-attack-timeseries/versions/1/report-data"
}
]
}