The following shows how to generate the delivery/purge/audit-requests-details
report with the Generate a report POST operation of the Reporting API v2. See also other available reports.
Report definition
Provides purge requests audit details.
Data available for: 45 days
Available dimensions
Dimension name | Description | Configuration |
---|---|---|
arlCount | Number of objects of type ARL . | type: LONG filterable: true mandatory: false filterType: TEXT authorizable: false |
cpcodeCount | Number of objects of type CP code . | type: LONG filterable: true mandatory: false filterType: TEXT authorizable: false |
objectsCount | Number of objects in a purge request. | type: LONG filterable: true mandatory: false filterType: TEXT authorizable: false |
tagCount | Number of objects of type TAG . | type: LONG filterable: true mandatory: false filterType: TEXT authorizable: false |
urlCount | Number of objects o type URL . | type: LONG filterable: true mandatory: false filterType: TEXT authorizable: false |
contractType | Contract type identifier associated with an API client. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: true |
accountId | Customer account identifier linked to a purge request. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: true |
accountSwitchingEnabled | Indicates whether account switching is enabled. | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: true, false authorizable: false |
apiVersion | Purge API version. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
authorizationClientToken | Unique EdgeGrid authorization token assigned to an API client. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
badRequestObject | Specific object in a purge request that triggered an error. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
clientId | Identifier of an API client generating a purge request. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
clientName | Name given to an API client by the user who creates it. It is applicable to service accounts. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
clientOwner | Externally visible customer username of an API client associated with a purge request. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
consumerTokenHostname | Unique hostname assigned to an API client. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
contentLength | Content size reported in the Content-Length HTTP request header. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
contentType | Media format size reported in the Content-Type HTTP request header. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
cpcodePurgeEnabled | Indicates whether CP code purge is enabled. | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: true, false authorizable: false |
elapsedTime | Time in milliseconds between receiving a request and writing the last byte of a reply to a client socket. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
environment | Environment to which a purge request applies, either PRODUCTION or STAGING . | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: STAGING, PRODUCTION authorizable: false |
errorTitle | Title of an error response. “-” means there were no errors. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
httpMethod | HTTP request method, either GET or POST . | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: GET, POST authorizable: false |
requestAction | Purge action desired on objects in a purge request, either UNDO , INVALIDATE , or DELETE . | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: INVALIDATE, DELETE, UNDO authorizable: false |
requestSource | Source of a purge request. For example, PORTAL . | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: LEGACY, LOCAL, EDGEGRID, PORTAL authorizable: false |
requestType | Type of objects in a purge request. For example, ARL . | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: CPCODE, VCD, ARL, TAG, URL authorizable: false |
responseCode | HTTP response status code. For example, 201 . | type: LONG filterable: true mandatory: false filterType: TEXT authorizable: false |
responseClass | Class of HTTP response status codes. For example, 2xx . | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: 0xx, 1xx, 2xx, 3xx, 4xx, 5xx, 6xx, other authorizable: false |
responseStatus | Indicates whether an HTTP request resulted in a success or an error. | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: error, success authorizable: false |
sourceClientIp | IP address of a host machine on which a purge request was initiated. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
supportId | Unique identifier of a purge request. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
tagPurgeEnabled | Indicates whether TAG purge is enabled. | type: STRING filterable: true mandatory: false filterType: ENUM filterEnumValues: true, false authorizable: false |
timestamp | Date and time of receiving a purge request. | type: TIMESTAMP_MS filterable: false mandatory: false filterType: TEXT authorizable: false |
userAgent | User agent reported in the User-Agent HTTP request header. | type: STRING filterable: true mandatory: false filterType: TEXT authorizable: false |
Generate a report
Use the Generate a report POST operation to execute a report.
Follow the API workflows to:
This report doesn't support SortBys
You can't define
SortBys
in a request body for this report. The report always shows all available dimensions, without any custom sorting.
POST request sample
POST /reporting-api/v2/reports/delivery/purge/audit-requests-details/data?timeRange=LAST_1_DAY
Available time ranges
For this report, you can use these predefined ranges in the timeRange
query parameter:
-
LAST_1_HOUR
-
LAST_1_DAY
-
LAST_2_DAYS
-
LAST_1_WEEK
-
LAST_30_DAYS
Supported filters
This report supports filtering by dimensions.
You can filter by each dimension that is labeled as filterable: true
in the report options. See how to use filters.
Request body example
{
"filters": [
{
"dimensionName": "accountSwitchingEnabled",
"operator": "IN_LIST",
"expressions": [
"true"
]
},
{
"dimensionName": "clientOwner",
"operator": "NOT_ENDS_WITH",
"expressions": [
"owner3",
"owner2"
]
}
],
"limit": 1000
}
Default values
These default values apply to all requests, meaning they are used unless you specify otherwise.
-
Time range:
- start =
now - 1 hour
- end =
now
- start =
-
Dimensions:
timestamp
supportId
clientOwner
clientName
clientId
sourceClientIp
authorizationClientToken
requestAction
requestType
requestSource
environment
responseStatus
responseClass
responseCode
errorTitle
accountId
contractType
httpMethod
apiVersion
badRequestObject
elapsedTime
contentLength
contentType
userAgent
consumerTokenHostname
accountSwitchingEnabled
cpcodePurgeEnabled
tagPurgeEnabled
cpcodeCount
tagCount
arlCount
objectsCount
urlCount
-
Filters:
contractType
. You can use all contract types to which you are authorized in Control Center. If you don't specify any contract types in your request, the report shows data for all your available contract types.accountId
. You can use all account IDs to which you are authorized in Control Center. If you don't specify any account ID in your request, the report shows data for all your available account IDs.
-
SortBys:
timestamp
,DESCENDING
Limits
Each report has some configured limits. If your request has values that exceed the limits, it results in an HTTP 400 Bad Request response. This report has the following limits:
Setting | Limit |
---|---|
Maximum number of dimensions | 0 |
Maximum time range | 45 days |
Maximum retention of historic data | 45 days |
Maximum length of value for TEXT filters | 100 |
Maximum number of data points returned | 25000 |
Rate limiting
This report uses both cost-based and hit-based rate limiting. For the hit-based rate limiting, the limit for an account is 10 requests per minute.
In the asynchronous flow, you can have 3 queued POST requests at the same time.
Read more about the rate limiting.
Get report options
To get the report metadata through the API, run the Get report options operation.
GET /reporting-api/v2/reports/delivery/purge/audit-requests-details
The response shows the list of available metrics and dimensions, the default values, and configured limits.
{
"name": "Purge requests details report data",
"status": "PUBLISHED",
"metrics": [],
"dimensions": [
{
"name": "arlCount",
"type": "LONG",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "cpcodeCount",
"type": "LONG",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "objectsCount",
"type": "LONG",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "tagCount",
"type": "LONG",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "urlCount",
"type": "LONG",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "contractType",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": true
},
{
"name": "accountId",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": true
},
{
"name": "accountSwitchingEnabled",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"true",
"false"
],
"authorizable": false
},
{
"name": "apiVersion",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "authorizationClientToken",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "badRequestObject",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "clientId",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "clientName",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "clientOwner",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "consumerTokenHostname",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "contentLength",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "contentType",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "cpcodePurgeEnabled",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"true",
"false"
],
"authorizable": false
},
{
"name": "elapsedTime",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "environment",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"STAGING",
"PRODUCTION"
],
"authorizable": false
},
{
"name": "errorTitle",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "httpMethod",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"GET",
"POST"
],
"authorizable": false
},
{
"name": "requestAction",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"INVALIDATE",
"DELETE",
"UNDO"
],
"authorizable": false
},
{
"name": "requestSource",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"LEGACY",
"LOCAL",
"EDGEGRID",
"PORTAL"
],
"authorizable": false
},
{
"name": "requestType",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"CPCODE",
"VCD",
"ARL",
"TAG",
"URL"
],
"authorizable": false
},
{
"name": "responseCode",
"type": "LONG",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "responseClass",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"0xx",
"1xx",
"2xx",
"3xx",
"4xx",
"5xx",
"6xx",
"other"
],
"authorizable": false
},
{
"name": "responseStatus",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"error",
"success"
],
"authorizable": false
},
{
"name": "sourceClientIp",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "supportId",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "tagPurgeEnabled",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"true",
"false"
],
"authorizable": false
},
{
"name": "timestamp",
"type": "TIMESTAMP_MS",
"filterable": false,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "userAgent",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
}
],
"predefinedTimeRanges": [
"LAST_1_HOUR",
"LAST_1_DAY",
"LAST_2_DAYS",
"LAST_1_WEEK",
"LAST_30_DAYS"
],
"defaults": {
"defaultTimeRange": {
"start": "now - 1 hour",
"end": "now"
},
"defaultMetrics": [],
"defaultDimensions": [
"timestamp",
"supportId",
"clientOwner",
"clientName",
"clientId",
"sourceClientIp",
"authorizationClientToken",
"requestAction",
"requestType",
"requestSource",
"environment",
"responseStatus",
"responseClass",
"responseCode",
"errorTitle",
"accountId",
"contractType",
"httpMethod",
"apiVersion",
"badRequestObject",
"elapsedTime",
"contentLength",
"contentType",
"userAgent",
"consumerTokenHostname",
"accountSwitchingEnabled",
"cpcodePurgeEnabled",
"tagPurgeEnabled",
"cpcodeCount",
"tagCount",
"arlCount",
"objectsCount",
"urlCount"
],
"defaultSortBys": [
{
"name": "timestamp",
"sortOrder": "DESCENDING"
}
]
},
"limits": {
"maxDimensions": 0,
"maxDateRangeInDays": 45,
"maxRetentionInDays": 45,
"textFilterMaxLength": 100,
"dataPointsLimit": 25000
},
"links": [
{
"rel": "self",
"href": "/reporting-api/v2/reports/delivery/purge/audit-requests-details",
"describedBy": "/reporting-api/v2/reports/schema",
"allow": [
"GET"
]
},
{
"rel": "data",
"href": "/reporting-api/v2/reports/delivery/purge/audit-requests-details/data",
"allow": [
"POST"
]
}
]
}