Akamai API Security Configuration version diff API
The Configuration version diff API from Akamai API Security — 1 operation(s) for configuration version diff.
The Configuration version diff API from Akamai API Security — 1 operation(s) for configuration version diff.
openapi: 3.0.0
info:
description: 'Manage your configurations for Kona Site Defender,
Web Application Protector, and Client Reputation.
'
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
title: 'Akamai: Application Security Activation history Configuration version diff API'
version: v1
servers:
- url: https://{hostname}/appsec/v1
tags:
- name: Configuration version diff
paths:
/configs/{configId}/versions/diff:
parameters:
- description: A unique identifier for each configuration.
example: '{{configId}}'
in: path
name: configId
required: true
schema:
example: 77653
format: int64
type: integer
x-akamai:
file-path: parameters/config-id-path.yaml
x-akamai:
file-path: paths/diff.yaml
path-info: /configs/{configId}/versions/diff
post:
description: This operation shows you differences between configuration versions. The `to` version is relative to the `from` version, and the versions you compare can be non-sequential. This means the `from` value can be more a more recent version than the `to` value. For more information, see [Diff configuration versions](https://techdocs.akamai.com/application-security/reference/diff-configuration-versions).
externalDocs:
description: See documentation for this operation in Akamai's Application Security API
url: https://techdocs.akamai.com/application-security/reference/post-config-versions-diff
operationId: post-config-versions-diff
parameters:
- description: For customers who manage more than one account, this [runs the operation from another account](https://techdocs.akamai.com/developer/docs/manage-many-accounts-with-one-api-client). The Identity and Access Management API provides a [list of available account switch keys](https://techdocs.akamai.com/iam-api/reference/get-client-account-switch-keys).
example: '{{accountSwitchKey}}'
in: query
name: accountSwitchKey
required: false
schema:
example: 1-5C0YLB:1-8BYUX
type: string
requestBody:
content:
application/json:
example:
from: 1
outcomes:
- MODIFIED
- UNMODIFIED
to: 2
schema:
additionalProperties: false
properties:
from:
description: The configuration version number to compare against.
example: '{{from}}'
type: integer
outcomes:
default:
- MODIFIED
description: Show either `MODIFIED` or `UNMODIFIED` data, or both. When empty, only `MODIFIED` values are returned.
items:
enum:
- MODIFIED
- UNMODIFIED
type: string
type: array
to:
description: The configuration version number you're comparing to the version in `from`.
example: '{{to}}'
type: integer
required:
- from
- to
type: object
x-akamai:
file-path: schemas/diff-request.yaml
required: true
responses:
'200':
content:
application/json:
example:
changesCount:
added: 0
modified: 4
removed: 0
unmodified: 0
configId: 258702
outcome: MODIFIED
ratePolicies:
outcome: MODIFIED
removed:
- averageThreshold:
from: 100
outcome: REMOVED
to: null
burstThreshold:
from: 10
outcome: REMOVED
to: null
burstWindow:
from: 5
outcome: REMOVED
to: null
changesCount:
added: 0
modified: 0
removed: 18
unmodified: 0
clientIdentifier:
from: ip
outcome: REMOVED
to: null
counterType:
from: per_edge
outcome: REMOVED
to: null
description:
from: Mitigating HTTP flood attacks using GET requests
outcome: REMOVED
to: null
id: 403981
matchType:
from: path
outcome: REMOVED
to: null
name:
from: GET Page Requests
outcome: REMOVED
to: null
outcome: REMOVED
pathMatchType:
from: Custom
outcome: REMOVED
to: null
pathUriPositiveMatch:
from: true
outcome: REMOVED
to: null
requestType:
from: ClientRequest
outcome: REMOVED
to: null
sameActionOnIpv6:
from: true
outcome: REMOVED
to: null
type:
from: WAF
outcome: REMOVED
to: null
useXForwardForHeaders:
from: false
outcome: REMOVED
to: null
used:
from: false
outcome: REMOVED
to: null
securityPolicies:
added:
- changesCount:
added: 6
modified: 0
removed: 0
unmodified: 0
hasRatePolicyWithApiKey:
from: null
outcome: ADDED
to: false
id: '2222_517319'
name:
from: null
outcome: ADDED
to: Policy 2
outcome: ADDED
pragmaHeader:
action:
from: null
outcome: ADDED
to: REMOVE
changesCount:
added: 3
modified: 0
removed: 0
unmodified: 0
conditionOperator:
from: null
outcome: ADDED
to: AND
outcome: ADDED
securityControls:
applyApplicationLayerControls:
from: null
outcome: ADDED
to: false
applyMalwareControls:
from: null
outcome: ADDED
to: false
applyNetworkLayerControls:
from: null
outcome: ADDED
to: false
applyRateControls:
from: null
outcome: ADDED
to: false
applyReputationControls:
from: null
outcome: ADDED
to: false
changesCount:
added: 10
modified: 0
removed: 0
unmodified: 0
outcome: ADDED
modified:
- changesCount:
added: 0
modified: 3
removed: 0
unmodified: 0
id: '1111_517317'
outcome: MODIFIED
requestBody:
changesCount:
added: 0
modified: 1
removed: 0
unmodified: 0
outcome: MODIFIED
requestBodyInspectionLimitInKB:
from: null
outcome: MODIFIED
to: '8'
webApplicationFirewall:
attackGroupActions:
modified:
- action:
from: alert
outcome: MODIFIED
to: deny
changesCount:
added: 0
modified: 1
removed: 0
unmodified: 0
group: CMD
outcome: MODIFIED
rulesetVersionId: 7151
outcome: MODIFIED
changesCount:
added: 0
modified: 1
removed: 0
unmodified: 0
outcome: MODIFIED
outcome: MODIFIED
selectedHosts:
added:
- host4.com
from:
- host1.com
- host2.com
- host3.com
outcome: MODIFIED
removed:
- host1.com
to:
- host2.com
- host3.com
- host4.com
schema:
description: 'The response object represents much the same data as the [Export a configuration version](https://techdocs.akamai.com/application-security/reference/get-export-config-version) operation, but substituting additional objects that represent diffs. The structure of these diffs vary when comparing different types of data: simple values, simple arrays, objects, and object arrays. For details on the diff format, see [Diff configuration versions](https://techdocs.akamai.com/application-security/reference/diff-configuration-versions).'
type: object
x-akamai:
file-path: schemas/export-diff-summary.yaml
description: 'The response object represents much the same data as the [Export a configuration version](https://techdocs.akamai.com/application-security/reference/get-export-config-version) operation, but substituting additional objects that represent diffs. The structure of these diffs vary when comparing different types of data: simple values, simple arrays, objects, and object arrays. For details on the diff format, see [Diff configuration versions](https://techdocs.akamai.com/application-security/reference/diff-configuration-versions).'
'400':
content:
application/problem+json:
example:
detail: The request could not be understood by the server due to malformed syntax.
instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
status: 400
title: Bad Request
type: https://problems.luna.akamaiapis.net/appsec/error-types/BAD-REQUEST
schema:
additionalProperties: true
description: Details the errors you can receive.
properties:
detail:
description: The detailed error message.
type: string
fieldErrors:
additionalProperties:
description: Fields that provide additional details about the problem.
type: string
description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field.
type: object
instance:
description: The non-referenceable URI that indicates the error instance.
example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
type: string
status:
description: The HTTP status code.
example: 404
type: integer
title:
description: The error title.
example: Not Found
type: string
type:
description: The URL for the error type.
example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND
type: string
required:
- title
- type
- detail
- instance
- status
type: object
x-akamai:
file-path: schemas/problem-details.yaml
description: '[Bad request](https://techdocs.akamai.com/application-security/reference/400). Invalid request body or URL parameter input.'
x-akamai:
file-path: errors/400.yaml
'403':
content:
application/problem+json:
example:
detail: You do not have the necessary access to perform this operation or the requested resource cannot be modified
instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
status: 403
title: Forbidden
type: https://problems.luna.akamaiapis.net/appsec-resource/error-types/ACCESS-DENIED
schema:
additionalProperties: true
description: Details the errors you can receive.
properties:
detail:
description: The detailed error message.
type: string
fieldErrors:
additionalProperties:
description: Fields that provide additional details about the problem.
type: string
description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field.
type: object
instance:
description: The non-referenceable URI that indicates the error instance.
example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
type: string
status:
description: The HTTP status code.
example: 404
type: integer
title:
description: The error title.
example: Not Found
type: string
type:
description: The URL for the error type.
example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND
type: string
required:
- title
- type
- detail
- instance
- status
type: object
x-akamai:
file-path: schemas/problem-details.yaml
description: '[Forbidden](https://techdocs.akamai.com/application-security/reference/403). You don''t have access to the resource.'
x-akamai:
file-path: errors/403.yaml
'404':
content:
application/problem+json:
example:
detail: The requested resource is not found
instance: https://problems.luna.akamaiapis.net/appsec/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
status: 404
title: Not Found
type: https://problems.luna.akamaiapis.net/appsec/error-types/NOT-FOUND
schema:
additionalProperties: true
description: Details the errors you can receive.
properties:
detail:
description: The detailed error message.
type: string
fieldErrors:
additionalProperties:
description: Fields that provide additional details about the problem.
type: string
description: Pointers to fields for which invalid input was provided, whose values are messages detailing the reason this input was invalid for this field.
type: object
instance:
description: The non-referenceable URI that indicates the error instance.
example: https://problems.luna.akamaiapis.net/api-definitions/error-instances/d54686b5-21cb-4ab7-a8d6-a92282cf1749
type: string
status:
description: The HTTP status code.
example: 404
type: integer
title:
description: The error title.
example: Not Found
type: string
type:
description: The URL for the error type.
example: https://problems.luna.akamaiapis.net/api-definitions/error-types/NOT-FOUND
type: string
required:
- title
- type
- detail
- instance
- status
type: object
x-akamai:
file-path: schemas/problem-details.yaml
description: '[Not found](https://techdocs.akamai.com/application-security/reference/404). That resource doesn''t exist, or the URL is malformed.'
x-akamai:
file-path: errors/404.yaml
summary: Akamai API Security Compare Two Versions
tags:
- Configuration version diff
externalDocs:
description: See documentation for Akamai's Application Security API
url: https://techdocs.akamai.com/application-security/reference
x-readme:
samples-languages:
- curl
- python
- node