-
ClientLists
- Updated
GetClientListResponse
andUpdateClientListResponse
to includeGroupID
- Updated
-
GTM
- Added custom error
ErrNotFound
that can be used to check if GTM api retuned 404 not found
- Added custom error
-
HAPI
- Added
GetChangeRequest
- Added
-
Updated
yaml.v3
dependency
- CloudWrapper
- Fixed build for 32-bit systems
-
[IMPORTANT] Added CloudWrapper API support
- Capacities
- Configurations
- Locations
- MultiCDN
- Properties
-
[IMPORTANT] Added Client Lists API Support
- ClientLists
- GetClientLists
- Support filter by name or type
- GetClientList
- UpdateClientList
- UpdateClientListItems
- CreateClientList
- DeleteClientList
- GetClientLists
- Activations
- ClientLists
-
APPSEC
- Added Bot Management API Support
- Custom Client Sequence - read and update
- Added Bot Management API Support
- APPSEC
- Added Bot Management API Support
- Challenge Injection Rules - read, update
- Add
CreateSecurityPolicyWithDefaultProtections
method to theSecurityPolicy
interface to support creating a security policy with all available protections enabled.
- Update marshaling of PII learning setting
- Added Bot Management API Support
- Challenge Interceptions Rules has been deprecated
- Deprecate the following interfaces used to maintain individual policy protections:
ApiConstraintsProtection
IPGeoProtection
MalwareProtection
NetworkLayerProtection
RateProtection
ReputationProtection
SlowPostProtection
WAFProtection
- Deprecate the
CreateSecurityPolicy
method of theSecurityPolicy
interface.
- DataStream
- Updated
connectors
details in DataStream 2 API v2. - Updated
GetProperties
andGetDatasetFields
methods in DataStream 2 API v2. - Updated
CreateStream
,GetStream
,UpdateStream
,DeleteStream
andListStreams
methods in DataStream 2 API v2. - Updated
Activate
,Deactivate
,ActivationHistory
andStream
details in DataStream 2 API v2 and also changed their corresponding response objects.
- Updated
- APPSEC
- Update Geo control to include Action for Ukraine.
- Add
AdvancedSettingsPIILearning
interface to support reading and updating the PII learning setting.
- APPSEC
- Add error handling for failed NetworkList client calls.
-
APPSEC
- Update malware policy
ContentTypes
to includeEncodedContentAttributes
. - Malware policy's
ContentTypes
is reported as part of an individual policy but is no longer included in the bulk report of all policies.
- Update malware policy
-
CLOUDLETS
ActivatePolicyVersion
also returns list of triggerred activations
-
PAPI
- Fix property variables fields with empty and null values are ignored
- Remove
ProductID
field fromGetEdgeHostname
response
- APPSEC
- Omit
clientIdentifier
andadditionalMatchOptions
inGetExportConfigurationResponse
when empty
- Omit
-
APPSEC
- Add
AdvancedSettingsRequestBody
interface to support configuring request size inspection limit
- Add
-
EDGEKV
-
Image and Video Manager
- Add possible value
avif
forforcedFormats
andallowedFormats
- Add possible value
-
PAPI
- Add
complianceRecord
field toActivation
struct for PAPI activation
- Add
- APPSEC
- Remove deprecated
EvalHost
andEvalProtectHost
interfaces. (Use theWAPSelectedHostnames
interface instead.) - Remove deprecated
BypassNetworkList
interface. (Use theWAPBypassNetworkList
interface instead.)
- Remove deprecated
- APPSEC
- Added following BotManager fields to GetExportConfigurationResponse
- BotManagement
- CustomBotCategories
- CustomDefinedBots
- CustomBotCategorySequence
- CustomClients
- ResponseActions
- AdvancedSettings
- Added AdvancedSettingsAttackPayloadLogging interface
- Added following BotManager fields to GetExportConfigurationResponse
- Fix V4 of Edgegrid doesn't parse hostname (#182)
-
Migrate to go 1.18
-
PAPI
- Fix response structures for GetAvailableBehaviors and GetAvailableCriteria:
-
CPS
- Update
Accept
header to the latest schemaapplication/vnd.akamai.cps.enrollment.v11+json
for the following endpoints:
- Update
-
APPSEC
- Fix incorrect return type structure in
UpdateBypassNetworkListsResponse
- Return
RatePolicyCondition
via a pointer in response structs ofRatePolicy
APIs
- Fix incorrect return type structure in
-
Replace obsolete APIs documentation links with new one from https://techdocs.akamai.com
-
APPSEC
- Add
burstWindow
andcondition
fields to RatePolicy
- Add
-
CPS
- Add
preferredTrustChain
field tocsr
struct (#351) - Set
utf-8 charset
incontent-type
header for requests
- Add
-
Fix code errors in documentation examples (#177)
-
IAM
- Issue updating user information - removed validation on user update
-
General
- Add badges to readme and improve code quality
-
[IMPORTANT] Added Property Include API support
- Includes
- Include Activations
- Include Rules
- Include Versions
- APPSEC
- Factor out
PolicySecurityControls
struct
- Factor out
- CPS
- UpdateChange() function has been deprecated
- CPS
- ChangeManagementInfo - get or acknowledge change management info, get change deployment info
- Deployments - list deployments, get production deployment, get staging deployment
- DeploymentSchedules - get deployment schedule, update deployment schedule
- History - get DV history, get certificate history, get change history
- PostVerification - get or acknowledge post verification warnings
- ThirdPartyCSR - get third-party CSR, upload certificate
- Rename package
configdns
todns
- Rename package
configgtm
togtm
- CPS
- Renamed structs: Challenges and ValidationRecords to Challenge and ValidationRecord accordingly
- Type change:
NotAfter
andNotBefore
fields inDeploymentSchedule
struct used in response forGetChangeStatus
are*string
instead ofstring
- Datastream
- Add ListStreams
- Add new connectors: Elasticsearch, NewRelic and Loggly
- Extend Splunk and Custom HTTPS connectors mTLS certificates configuration
- Extend SumoLogic, Splunk and Custom HTTPS connectors with ability to specify custom HTTP headers
- APPSEC
- Fix incorrect JSON sent when applying appsec_ip_geo resource in allow mode
-
APPSEC
- Add interfaces to support file malware scanning (FMS):
- MalwareContentTypes
- MalwarePolicy
- MalwarePolicyAction
- MalwareProtection
- Add GetRuleRecommendations method to TuningRecommendations interface
- Add deprecation notes for the following:
- methods:
- GetIPGeoProtections
- GetNetworkLayerProtections
- GetRateProtections
- GetReputationProtections
- GetSlowPostProtectionSetting
- GetSlowPostProtections
- GetWAFProtections
- RemoveNetworkLayerProtection
- RemovePolicyProtections
- RemoveReputationProtection
- structs:
- GetIPGeoProtectionsRequest
- GetNetworkLayerProtectionsRequest
- GetRateProtectionsRequest
- GetReputationProtectionsRequest
- GetSlowPostProtectionSettingRequest
- GetSlowPostProtectionSettingResponse
- GetSlowPostProtectionsRequest
- GetWAFProtectionsRequest
- RemoveNetworkLayerProtectionRequest
- RemovePolicyProtectionsRequest
- RemoveReputationProtectionRequest
- methods:
- Add interfaces to support file malware scanning (FMS):
-
[IMPORTANT] Added Bot Management API Support
- Akamai Bot Category - read
- Akamai Bot Category Action - read, update
- Akamai Defined Bot - read
- Bot Analytics Cookie - read, update
- Bot Analytics Cookie Values - read
- Bot Category Exception - read, update
- Bot Detection - read
- Bot Detection Action - read, update
- Bot Endpoint Coverage Report - read
- Bot Management Setting - read, update
- Challenge Action - create, read, update, delete
- Challenge Interception Rules - read, update
- Client Side Security - read, update
- Conditional Action - create, read, update, delete
- Custom Bot Category - create, read, update, delete
- Custom Bot Category Action - read, update
- Custom Bot Category Sequence - read, update
- Custom Client - create, read, update, delete
- Custom Defined Bot - create, read, update, delete
- Custom Deny Action - create, read, update, delete
- Javascript Injection - read, update
- Recategorized Akamai Defined Bot - create, read, update, delete
- Response Action - read
- Serve Alternate Action - create, read, update, delete
- Transactional Endpoint - create, read, update, delete
- Transactional Endpoint Protection - read, update
-
APPSEC
- Add xff field to custom rule conditions
- Add NotificationEmails to Activation struct
-
GTM
- Improved error messages
-
CPS
- Add cps ListEnrollments
- Extend CreateEnrollment with AllowDuplicateCN option
- IAM
- Change IAM GroupID type to int64
-
APPSEC
- Added penalty box support for security policy in evaluation mode
-
HAPI
- EdgeHostname - update
-
IAM
- Blocked properties - read, update
- Group - create, read, update, delete
- Role - create, read, update, delete
- User - lock, unlock, TFA, set password, reset password
- APPSEC
- Fixed incorrect error message on activation failure
- The
EffectiveTimePeriod
,SamplingRate
,LoggingOptions
, andOperation
fields of the variousCustomRule
response structs are now marshalled correctly
- Image and Video Manager
- Add new
ImQuery
transformation - New
PostBreakPointTransformationType
- Add new
- Image and Video Manager
default_value
field on variable in image policy should not be required- Change all primitive optional parameters to pointers
- Correct
Anchor
field inRectangleShapeType
- Value field for
NumberVariableInline
should be defined asfloat64
- Rename
PointShapeType.True
toPointShapeType.Y
, to match the OpenAPI definition - Add
Composite
transformation toPostBreakpointTransformations
- Fix
PostBreakpointTransformations.PolicyInputImage
-
APPSEC
- Add WAPBypassNetworkLists interface, to be used in preference to deprecated BypassNetworkLists interface
-
Support for account switch keys from environment (#149)
-
[IMPORTANT] Added Image and Video Manager API support
- Policy Set - create, read, update, delete
- Policy - create, read, update, delete, rollback to previous version, view policy history
-
CLOUDLETS
- Support for RC cloudlet type (Request Control)
-
PAPI
- CP code - read, update
-
[IMPORTANT] Added EdgeWorkers and EdgeKV API support
- EDGEWORKERS
- Ids - create, read, update, delete, clone
- Versions - create, read, delete, validate version bundle
- Activations - create, read, delete
- Deactivations - read, delete
- Resource tiers - read
- Reports - read
- Secure token - create
- Permission groups - read
- Properties - read
- Contracts - read
- EDGEKV
- Items - create, read, update, delete
- Namespaces - create, read, update
- Initialization - create, read
- Access token - create, read, delete
- EDGEWORKERS
-
APPSEC
- Source for evasive path match interface updated with links to documentation
-
CLOUDLETS
- Support for AS cloudlet type (Audience Segmentation)
- APPSEC
- Remove deprecation notes for individual policy protection methods
- CLOUDLETS
- Fixed validation for ALB version DataCenter percent
-
CLOUDLETS
- Support for VP cloudlet type (Visitor Prioritization)
- Support for CD cloudlet type (Continuous Deployment / Phased Release)
- Support for FR cloudlet type (Forward Rewrite)
- Support for AP cloudlet type (API Prioritization)
-
APPSEC
- Add support for Evasive Path Match feature
- Deprecate individual policy protection interface methods
-
NETWORK LISTS
- Include ContractID and GroupID in GetNetworkListResponse
-
[IMPORTANT] Added Cloudlets API support
- Policy (Application Load Balancer) - create, read, update, delete policy
- Policy (Edge Redirector) - create, read, update, delete policy
- Policy activation - create, read
- Application Load Balancer configuration - create, update, read
- Activation for Application Load Balancer configuration - create, read
-
APPSEC
- Add support for advanced exceptions in ASE rules
- Update bypass-network-list datasource and resource for multi-policy WAP
- [IMPORTANT] Added DataStream API support
- Stream operations
- Stream activation operations
- Read access to various DataStream properties
- Added HAPI v1 support
- Delete edge hostname
- APPSEC
- Fix incorrect comments/URL references in inline documentation
-
APPSEC
- Get an evaluation attack group's or risk score group's action
-
NETWORK LISTS
- Support contract_id and group_id for network list create/update
- APPSEC
- The following have been removed, togther with their unit tests and test data:
- pkg/appsec/attack_group_action.go
- pkg/appsec/attack_group_condition_exception.go
- pkg/appsec/eval_rule_action.go
- pkg/appsec/eval_rule_condition_exception.go
- pkg/appsec/rule_action.go
- pkg/appsec/rule_condition_exception.go
- The following have been removed, togther with their unit tests and test data:
- DNSv2
- Fixed parsing SVCB, HTTPS rdata.
-
[IMPORTANT] CPS - Added Certificate Provisioning API support
- Enrollments - create, read, update, delete enrollments
- Change status API - get change status, cancel change
- DV certificate API - get and acknowledge DV challenges
- Pre verification warnings - get and acknowledge pre verification warnings
-
APPSEC
- The following have been added, together with their unit tests and test data:
- pkg/appsec/api_constraints_protection.go
- pkg/appsec/advanced_settings_pragma_header.go
- pkg/appsec/attack_group.go
- pkg/appsec/eval_rule.go
- pkg/appsec/rule.go
- pkg/appsec/ip_geo_protection.go
- The following have been added, together with their unit tests and test data:
- APPSEC
- Suppress 'null' text on output of empty/false values
- Prevent configuration drift when reapplying configuration after importing or creating resources
- PAPI
- Support to provision default certs as part of hostnames request
- New cert status object in hostnames response if it exists
Add support for the following operations in the Network Lists API v2:
- Create a network list
- Update an existing network list
- Get the existing network lists, including optional filtering by name or type
- Subscribe to a network list
- Activate a network list
- PAPI - Fixed issue with rules causing advanced locked behaviors to fail
- PAPI
- Fixed issue with version and rule comments being dropped
- Fixed client side validation to allow certain PAPI errors to passthrough
- APPSEC
- Custom Deny
- SIEM Setting
- Advanced Options Settings
- API Match Target
- API Request Constraint
- Create/Delete/Rename Security Policy
- Host Coverage / Edit Version Notes
- All WAP Features / WAP Hostname Evaluation
- Create Security Configuration
- Rename Security Configuration Version
- Delete Security Configuration Version
- Clone Security Configuration
- Import tool for adding existing resources to Terraform state
- DNS
- Add support for HTTPS, SVCB records to ParseRData
- PAPI - Fixed validation on empty rule behaviors causing some properties with nested behaviors to fail
- [IMPORTANT] IAM - New Identity and Access Management API Support
- APPSEC - Extended list of supported endpoints from APPSEC API:
- DDoS Protection -- Rate Policy & Action
- DDoS Protection -- Slowpost setting & Action
- Application Layer Protection -- Rule Action, Exceptions & Conditions
- Application Layer Protection -- Rule Evaluation Action, Exceptions & Conditions
- Application Layer Protection -- Attack Group Action, Exceptions & Conditions
- Application Layer Protection -- Rule Upgrade & Change Mode for Rule Eval
- Reputation Profile & Action
- Network Layer Control -- IP & GEO setting
- PAPI - Property hostname validation fix for missing hostnames.
- PAPI - fix minor typo in rules error messages
- [IMPORTANT] APPSEC - Added Application Security API
- [ENHANCEMENT] DNS - Bulk Api endpoints added
- ALL - Re-enabled global account switch key support in edgerc files
- PAPI - Edgehostname IPV6 support fix. Added enums with allowed values.
- PAPI - Edgehostname blank cname or egdehostname id fix
- PAPI - propertyversion blank etag field fix
- [IMPORTANT] Breaking changes from earlier clients. Project updated to use v2 directory structure.
- [ENHANCEMENT] PAPI - Api error return to the user when an activation or validation error occurs.
- [NOTE] Project re-organized to prepare for additional APIs to be included in future versions of this library.
- Official release for the EdgeGrid Golang library
- DNSv2 - Zone create signature to pass blank instead of nil
- PAPI - Return nil instead of error if no cp code was found
- GTM - Datacenter API requires blank instead of nil
- [AT-40][Add] Preliminary Logging CorrelationID
- Corrected AKAMAICDN target parsing
- Added endpoints for list zones, creating and updating multiple recordsets
- Refactored recordsets into separate source file
- Client-v1, Papi-v1 Updates
- Add lock around http request creation.
- papi - add logging to papi endpoints.
- DNSv2 - Added CERT, TSLA Record parsing. Removed MX Record parsing
- DNSv2 - Enhance RecordError functions
- DNSv2 - filterZoneCreate check upper case Type
- DNSv2 - Added optional arg to bypass dns record lock for create, update and delete functions. default preserves prior behavior
- DNSv2 Updates
- Add additional fields, including TSIG, to zone
- Support alias zone types
- Add utility functions for Rdata parsing and process.
- Add GetRecord, GetRecordSet functions
- Add additional Recordset metadata
- Add http request/response logging
- Add support for caching Edgehostnames and Products
- Support for cache in papi library for edgehostnames and products to minimize round trips to fetch repeated common data to avoid WAF deny rule IPBLOCK-BURST4-54013 issue
- Add support for caching Contract, Groups, and Cp Codes
- cache to minimize round trips on repeated common data fetches to avoid WAF deny rule IPBLOCK-BURST4-54013 issue
- Added support for GTM