openapi: 3.1.0 info: title: Akamai Fast Purge (CCU v3) API version: "3.0.0" description: | Akamai Fast Purge (Content Control Utility v3) API for invalidating or deleting cached content at the Akamai edge by URL, CP code, or cache tag, on either the production or staging network. Authentication uses the Akamai EdgeGrid HMAC-SHA256 scheme. All requests target a per-account hostname under akamaiapis.net. contact: name: Akamai Technologies url: https://techdocs.akamai.com servers: - url: https://{host}.luna.akamaiapis.net/ccu/v3 description: Akamai per-account API hostname variables: host: default: akab-xxxxxxxxxx description: Per-account API hostname prefix from your EdgeGrid credentials. tags: - name: Invalidations description: Mark cached objects as stale, forcing revalidation on next request. - name: Deletions description: Remove cached objects from the edge. - name: Status description: Inspect rate-limit and object-limit status. paths: /invalidate/url/{network}: parameters: - in: path name: network required: true schema: type: string enum: [production, staging] post: tags: [Invalidations] summary: Invalidate by URL or ARL operationId: invalidateByUrl requestBody: required: true content: application/json: schema: type: object properties: objects: type: array items: { type: string, format: uri } required: [objects] responses: "201": { description: Purge request accepted. } /invalidate/cpcode/{network}: parameters: - in: path name: network required: true schema: { type: string, enum: [production, staging] } post: tags: [Invalidations] summary: Invalidate by CP code operationId: invalidateByCpCode requestBody: required: true content: application/json: schema: type: object properties: objects: type: array items: { type: string } required: [objects] responses: "201": { description: Purge request accepted. } /invalidate/tag/{network}: parameters: - in: path name: network required: true schema: { type: string, enum: [production, staging] } post: tags: [Invalidations] summary: Invalidate by cache tag operationId: invalidateByTag requestBody: required: true content: application/json: schema: type: object properties: objects: type: array items: { type: string } required: [objects] responses: "201": { description: Purge request accepted. } /delete/url/{network}: parameters: - in: path name: network required: true schema: { type: string, enum: [production, staging] } post: tags: [Deletions] summary: Delete by URL or ARL operationId: deleteByUrl requestBody: required: true content: application/json: schema: type: object properties: objects: type: array items: { type: string, format: uri } required: [objects] responses: "201": { description: Purge request accepted. } /delete/cpcode/{network}: parameters: - in: path name: network required: true schema: { type: string, enum: [production, staging] } post: tags: [Deletions] summary: Delete by CP code operationId: deleteByCpCode requestBody: required: true content: application/json: schema: type: object properties: objects: type: array items: { type: string } required: [objects] responses: "201": { description: Purge request accepted. } /delete/tag/{network}: parameters: - in: path name: network required: true schema: { type: string, enum: [production, staging] } post: tags: [Deletions] summary: Delete by cache tag operationId: deleteByTag requestBody: required: true content: application/json: schema: type: object properties: objects: type: array items: { type: string } required: [objects] responses: "201": { description: Purge request accepted. } /rate-limit-status/{purge-type}: parameters: - in: path name: purge-type required: true schema: type: string enum: [invalidate, delete] post: tags: [Status] summary: Check rate and object limit status operationId: rateLimitStatus responses: "200": { description: Limit status. } components: securitySchemes: EdgeGrid: type: apiKey in: header name: Authorization description: | Akamai EdgeGrid HMAC-SHA256 signed Authorization header (`EG1-HMAC-SHA256 client_token=...;access_token=...;timestamp=...;nonce=...;signature=...`). security: - EdgeGrid: []