The following shows how to generate the delivery/purge/audit-objects-details report with the Generate a report POST operation of the Reporting API v2. See also other available reports.
Report definition
Provides purge objects audit details. To use this report, you need to be an admin of Akamai Control Center.
Data available for: 45 days
Available dimensions
| Dimension name | Description | Configuration |
|---|---|---|
accountId | Customer account identifier linked to a purge request. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: true |
contractType | Contract type identifier associated with an API client. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: true |
timestamp | Date and time of receiving a purge request. | type: TIMESTAMP_MSfilterable: falsemandatory: falsefilterType: TEXTauthorizable: false |
supportId | Unique identifier of a purge request. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
requestObject | Object present in a purge request. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
cpcode | Content provider (CP) code to which a purge object belongs. | type: LONGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
consumerTokenHostname | Unique hostname assigned to an API client. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
flexibleCacheIdEnabled | Indicates whether a purge object has an associated flexible cache ID. | type: STRINGfilterable: truemandatory: falsefilterType: ENUMfilterEnumValues: true, falseauthorizable: false |
clientOwner | Externally visible customer username of an API client associated with a purge request. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
clientId | Identifier of an API client generating a purge request. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
clientName | Name given to an API client by the user who creates it. It is applicable to service accounts. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
authorizationClientToken | Unique EdgeGrid authorization token assigned to an API client. | type: STRINGfilterable: truemandatory: falsefilterType: TEXTauthorizable: false |
requestAction | Purge action desired on objects in a purge request, either INVALIDATE or DELETE, or UNDO. | type: STRINGfilterable: truemandatory: falsefilterType: ENUMfilterEnumValues: INVALIDATE, DELETE, UNDOauthorizable: false |
requestSource | Source of a purge request, either PORTAL or EDGEGRID. | type: STRINGfilterable: truemandatory: falsefilterType: ENUMfilterEnumValues: EDGEGRID, PORTALauthorizable: false |
requestType | Type of objects in a purge request. For example, ARL. | type: STRINGfilterable: truemandatory: falsefilterType: ENUMfilterEnumValues: CPCODE, VCD, ARL, TAG, URLauthorizable: false |
environment | Environment to which a purge request applies, either PRODUCTION or STAGING. | type: STRINGfilterable: truemandatory: falsefilterType: ENUMfilterEnumValues: STAGING, PRODUCTIONauthorizable: false |
responseStatus | Indicates whether an HTTP request resulted in success or an error. | type: STRINGfilterable: truemandatory: falsefilterType: ENUMfilterEnumValues: error, successauthorizable: false |
responseClass | Class of HTTP response status codes. For example, 2xx. | type: STRINGfilterable: truemandatory: falsefilterType: ENUMfilterEnumValues: 0xx, 1xx, 2xx, 3xx, 4xx, 5xx, 6xx, otherauthorizable: false |
responseCode | HTTP response status code. For example, 201. | type: LONGfilterable: truemandatory: falsefilterType: TEXTauthorizable: 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
SortBysin 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-objects-details/data?timeRange=LAST_1_DAY
Available time ranges
For this report, you can use the following predefined ranges in the timeRange query parameter. Use one of these time ranges or replace it with the start and end parameters in the ISO-8601 format. Read more about setting the report time range.
-
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": "supportId",
"operator": "CONTAINS",
"expressions": [
"edcp-NZbXzFpHBjcJeryhw6PVgG"
]
},
{
"dimensionName": "contractType",
"operator": "IN_LIST",
"expressions": [
"1-6T5ZND"
]
}
],
"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:
timestampsupportIdrequestObjectcpcodeconsumerTokenHostnameflexibleCacheIdEnabledclientOwnerclientNameclientIdauthorizationClientTokenrequestActionrequestTyperequestSourceenvironmentresponseStatusresponseClassresponseCodeaccountIdcontractType
-
Filters:
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.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.
-
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-objects-details
The response shows the list of available metrics and dimensions, the default values, and configured limits.
{
"name": "Purge objects details report data",
"status": "PUBLISHED",
"metrics": [],
"dimensions": [
{
"name": "accountId",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": true
},
{
"name": "contractType",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": true
},
{
"name": "timestamp",
"type": "TIMESTAMP_MS",
"filterable": false,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "supportId",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "requestObject",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "cpcode",
"type": "LONG",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "consumerTokenHostname",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"authorizable": false
},
{
"name": "flexibleCacheIdEnabled",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"true",
"false"
],
"authorizable": false
},
{
"name": "clientOwner",
"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": "authorizationClientToken",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "TEXT",
"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": [
"EDGEGRID",
"PORTAL"
],
"authorizable": false
},
{
"name": "requestType",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"CPCODE",
"VCD",
"ARL",
"TAG",
"URL"
],
"authorizable": false
},
{
"name": "environment",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"STAGING",
"PRODUCTION"
],
"authorizable": false
},
{
"name": "responseStatus",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"error",
"success"
],
"authorizable": false
},
{
"name": "responseClass",
"type": "STRING",
"filterable": true,
"mandatory": false,
"filterType": "ENUM",
"filterEnumValues": [
"0xx",
"1xx",
"2xx",
"3xx",
"4xx",
"5xx",
"6xx",
"other"
],
"authorizable": false
},
{
"name": "responseCode",
"type": "LONG",
"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",
"requestObject",
"cpcode",
"consumerTokenHostname",
"flexibleCacheIdEnabled",
"clientOwner",
"clientName",
"clientId",
"authorizationClientToken",
"requestAction",
"requestType",
"requestSource",
"environment",
"responseStatus",
"responseClass",
"responseCode",
"accountId",
"contractType"
],
"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-objects-details",
"describedBy": "/reporting-api/v2/reports/schema",
"allow": [
"GET"
]
},
{
"rel": "data",
"href": "/reporting-api/v2/reports/delivery/purge/audit-objects-details/data",
"allow": [
"POST"
]
}
]
}
