Cache refreshing
Article 12/20/2023
1 contributor
Feedback
In this article
After the source station content is updated, you want the update results to be mapped to the CDN service node in real time. Because the Azure Content Delivery Network has either default cache rules or cache rules set by the user, you must use the cache refresh function to clear the cached content on the node. If you access the file again, the file you obtain will be the updated file.
You can force a cache refresh for individual files or batches of files. Each subscription's daily file refresh quota is 2,000. The directory refresh quota is 500. If you need to adjust this, please contact the development team.
Request
Method
Request URI
POST
https://restapi.cdn.azure.cn/subscriptions/{subscriptionId}/endpoints/{endpointId}/purges?apiVersion=1.0
URI parameter
Parameter name
Description
subscriptionId
Subscription unique identifier
endpointId
Target node unique identifier
Request header
Description
x-azurecdn-request-date
Required. Enter the current UTC request time in yyyy-MM-dd hh:mm:ss format.
Authorization
Required. Refer to CDN API signing mechanism for authorization headers.
content-type
Required. application/json
Request body
To add a cache refresh, specify the following parameters. An example JSON file is provided here:
{
"Files": [
"http://example.com/pictures/city.png"
],
"Directories": [
"http://example.com/pictures/"
]
}
Response
A response comprises a status code, response headers, and a response body.
Status code
Status code
Description
202
Indicates that the server has successfully accepted the request.
Other
General response indicating that an error has occurred.
Response header
Description
X-Correlation-Id
The request's unique identifier, which is used to track request information.
Response body
JSON example for request succeeded :
{
"Succeeded": true,
"IsAsync": true,
"AsyncInfo": {
"TaskTrackId": "b520c544-ec34-4ac4-86f5-5394363919c3",
"TaskStatus": "Processing"
}
}
Parameter name
Description
TaskTrackId
Refresh operation unique identifier, which can be used to query refresh progress.
TaskStatus
Task status
NotSet: State not set
Processing: Currently processing
Succeeded: Succeeded
Failed: Failed
JSON example for request failed :
{
"Succeeded": false,
"ErrorInfo": {
"Type": "MissingAuthorizationHeader",
"Message": "Missing authorization header."
}
}
Parameter name
Description
Type
Error type
CredentialInvalid: Invalid credentials
ParameterMissing: Parameter missing
ParameterInvalid: Invalid parameter
MissingAuthorizationHeader: Authorization header missing
InvalidRequestDateHeader: Invalid request date header
MissingRequestDateHeader: Missing request date header
AuthorizationHeaderExpired: Authorization header expired
InvalidAuthorizationHeader: Invalid authorization header
ApiKeyNotFound: API key not found
InvalidApiKey: Invalid API key
WrongSignature: Wrong signature
SubscriptionNotFound: Subscription does not exist
EndpointDoesNotBelongToSubscription: Endpoint does not belong to subscription
EndpointNotInActiveState: Endpoint not in active state
EndpointNotFound: Endpoint does not exist
MaliciousItemPathDetected: Malicious item path detected
PermissionDenied: Insufficient permissions
RequestThrottled: Request throttled
Message
Error information