github.com/akamai/AkamaiOPEN-edgegrid-golang/v8@v8.1.0/CHANGELOG.md (about)

     1  # EDGEGRID GOLANG RELEASE NOTES
     2  
     3  ## 8.1.0 (April 11, 2024)
     4  
     5  #### FEATURES/ENHANCEMENTS:
     6  
     7  * DNS
     8    * Modified `ParseRData` method to remove priority, weight and port from targets **only** when those values are same for all `SRV` targets.
     9      Otherwise, targets are returned untouched and `priority`, `weight` and `port` in the map are not populated.
    10  
    11  * Image and Video Manager
    12    * Added `SmartCrop` transformation
    13  
    14  ## 8.0.0 (March 19, 2024)
    15  
    16  #### BREAKING CHANGES:
    17  
    18  * Migrated to go 1.21
    19  
    20  * CPS
    21    * Split request and response structures for create and update enrollment operations
    22  
    23  * DNS
    24    * Renamed following structs:
    25      * `RecordsetQueryArgs` into `RecordSetQueryArgs`
    26      * `Recordsets` into `RecordSets`
    27      * `Recordset` into `RecordSet`
    28      * `MetadataH` into `Metadata`
    29    * Renamed following fields:
    30      * `GroupId` into `GroupID` in `ListGroupRequest`
    31      * `Recordsets` into `RecordSets` in `RecordSetResponse`
    32      * `ContractIds` into `ContractIDs` in `TSIGQueryString`
    33      * `Gid` into `GID` in `TSIGQueryString` and `TSIGReportMeta`
    34      * `TsigKey` into `TSIGKey` in `ZoneCreate` and `ZoneResponse`
    35      * `VersionId` into `VersionID` in `ZoneResponse`
    36      * `RequestId` into `RequestID` in `BulkZonesResponse`, `BulkStatusResponse`, `BulkCreateResultResponse` and `BulkDeleteResultResponse` 
    37    * Renamed `RecordSets` interface into `Recordsets`
    38    * Renamed following methods:
    39      * `ListTsigKeys` into `ListTSIGKeys`
    40      * `GetTsigKeyZones` into `GetTSIGKeyZones`
    41      * `GetTsigKeyAliases` into `GetTSIGKeyAliases`
    42      * `TsigKeyBulkUpdate` into `TSIGKeyBulkUpdate`
    43      * `GetTsigKey` into `GetTSIGKey`
    44      * `DeleteTsigKey` into `DeleteTSIGKey`
    45      * `UpdateTsigKey` into `UpdateTSIGKey`
    46      * `GetRecordsets` into `GetRecordSets`
    47      * `CreateRecordsets` into `CreateRecordSets`
    48      * `UpdateRecordsets` into `UpdateRecordSets`
    49    * Deleted following methods:
    50      * `NewAuthorityResponse`
    51      * `NewChangeListResponse`
    52      * `NewRecordBody`
    53      * `NewRecordSetResponse`
    54      * `NewTsigKey`
    55      * `NewTsigQueryString`
    56      * `NewZone`
    57      * `NewZoneQueryString`
    58      * `NewZoneResponse`
    59      * `RecordToMap`
    60    * Unexported following methods:
    61      * `FullIPv6`
    62      * `PadCoordinates`
    63      * `ValidateZone`
    64  
    65  * GTM
    66    * Renamed following structs:
    67      * `AsAssignment` into `ASAssignment`
    68      * `AsMap` into `ASMap`
    69      * `AsMapList` into `ASMapList`
    70      * `CidrAssignment` into `CIDRAssignment`
    71      * `CidrMap` into `CIDRMap`
    72      * `CidrMapList` into `CIDRMapList`
    73      * `CidrMapResponse` into `CIDRMapResponse`
    74      * `AsMapResponse` into `ASMapResponse`
    75      * `HttpHeader` into `HTTPHeader`
    76    * Renamed following fields:
    77      * `AsNumbers` into `ASNumbers` in `ASAssignment`
    78      * `AsMapItems` into `ASMapItems` in `ASMapList`
    79      * `CidrMapItems` into `CIDRMapItems` in `CIDRMapList`
    80      * `ChangeId` into `ChangeID` in `ResponseStatus`
    81      * `DatacenterId` into `DatacenterID` in `DatacenterBase`, `Datacenter`, `TrafficTarget` and `ResourceInstance`
    82      * `AsMaps` into `ASMaps` in `Domain`
    83      * `DefaultSslClientPrivateKey` into `DefaultSSLClientPrivateKey` in `Domain`
    84      * `CnameCoalescingEnabled` into `CNameCoalescingEnabled` in `Domain`
    85      * `CidrMaps` into `CIDRMaps` in `Domain`
    86      * `DefaultSslClientCertificate` into `DefaultSSLClientCertificate` in `Domain`
    87      * `AcgId` into `AcgID` in `DomainItem`
    88      * `HttpError3xx` into `HTTPError3xx` in `LivenessTest`
    89      * `HttpError4xx` into `HTTPError4xx` in `LivenessTest`
    90      * `HttpError5xx` into `HTTPError5xx` in `LivenessTest`
    91      * `SslClientPrivateKey` into `SSLClientPrivateKey` in `LivenessTest`
    92      * `SslClientCertificate` into `SSLClientCertificate` in `LivenessTest`
    93      * `HttpHeaders` into `HTTPHeaders` in `LivenessTest`
    94      * `Ipv6` into `IPv6` in `Property`
    95      * `BackupIp` into `BackupIP` in `Property`
    96    * Renamed `CidrMaps` interface into `CIDRMaps`
    97    * Renamed following methods:
    98      * `ListAsMaps` into `ListASMaps`
    99      * `GetAsMap` into `GetASMap`
   100      * `CreateAsMap` into `CreateASMap`
   101      * `DeleteAsMap` into `DeleteASMap`
   102      * `UpdateAsMap` into `UpdateASMap`
   103      * `ListCidrMaps` into `ListCIDRMaps`
   104      * `GetCidrMap` into `GetCIDRMap`
   105      * `CreateCidrMap` into `CreateCIDRMap`
   106      * `DeleteCidrMap` into `DeleteCIDRMap`
   107      * `UpdateCidrMap` into `UpdateCIDRMap`
   108    * Deleted following methods:
   109      * `NewASAssignment`
   110      * `NewAsMap`
   111      * `NewCidrAssignment`
   112      * `NewCidrMap`
   113      * `NewDatacenter`
   114      * `NewDatacenterBase`
   115      * `NewDatacenterResponse`
   116      * `NewDefaultDatacenter`
   117      * `NewDomain`
   118      * `NewGeoAssignment`
   119      * `NewHttpHeader`
   120      * `NewGeoMap`
   121      * `NewLivenessTest`
   122      * `NewLoadObject`
   123      * `NewProperty`
   124      * `NewResource`
   125      * `NewResourceInstance`
   126      * `NewResponseStatus`
   127      * `NewStaticRRSet`
   128      * `NewTrafficTarget`
   129  
   130  #### FEATURES/ENHANCEMENTS:
   131  
   132  * Added default value `application/json` for `Accept` header for all requests sent to API
   133  
   134  * Appsec
   135    * Added `PenaltyBoxConditions` API - read and update
   136    * Added `EvalPenaltyBoxConditions` API - read and update
   137  
   138  * CPS
   139    * Added `ID`, `OrgID`, `ProductionSlots`, `StagingSlots` and `AssignedSlots` to the response structures of `GetEnrollment` and `ListEnrollment` operations
   140  
   141  * GTM
   142    * Added new fields:
   143      * `SignAndServe` and `SignAndServeAlgorithm` for the `Domain`
   144      * `HTTPMethod`, `HTTPRequestBody`, `Pre2023SecurityPosture` and `AlternateCACertificates` for the `LivenessTest` in `Property`
   145      * `Precedence` for the `TrafficTarget` in `Property`
   146    * Enhanced error details by addition of `Errors` field in `Error` structure
   147    * Added support for the creation of `ranked-failover` properties
   148  
   149  #### BUG FIXES:
   150  
   151  * DNS
   152    * Removed not working `DeleteZone` method
   153  * 
   154  * PAPI
   155    * Updated documentation link for `GetProperties` method
   156  
   157  ## 7.6.1 (February 14, 2024)
   158  
   159  #### BUG FIXES:
   160  
   161  * Edgeworkers
   162    * Fixed case when not providing optional `note` field in `ActivateVersion` would cause activation to fail 
   163  
   164  ## 7.6.0 (February 8, 2024)
   165  
   166  #### FEATURES/ENHANCEMENTS:
   167  
   168  * General
   169    * Enhanced error handling when Error is not in standard format.
   170  
   171  * Added Cloudlets V3 API support
   172    * Cloudlet Info
   173      * [ListCloudlets](https://techdocs.akamai.com/cloudlets/reference/get-cloudlets)
   174    * Policies
   175      * [ListPolicies](https://techdocs.akamai.com/cloudlets/reference/get-policies)
   176      * [CreatePolicy](https://techdocs.akamai.com/cloudlets/reference/post-policy)
   177      * [DeletePolicy](https://techdocs.akamai.com/cloudlets/reference/delete-policy)
   178      * [GetPolicy](https://techdocs.akamai.com/cloudlets/reference/get-policy)
   179      * [UpdatePolicy](https://techdocs.akamai.com/cloudlets/reference/put-policy)
   180      * [ClonePolicy](https://techdocs.akamai.com/cloudlets/reference/post-policy-clone)
   181    * Policy Properties
   182      * [ListActivePolicyProperties](https://techdocs.akamai.com/cloudlets/reference/get-policy-properties)
   183    * Policy Versions
   184      * [ListPolicyVersions](https://techdocs.akamai.com/cloudlets/reference/get-policy-versions)
   185      * [GetPolicyVersion](https://techdocs.akamai.com/cloudlets/reference/get-policy-version)
   186      * [CreatePolicyVersion](https://techdocs.akamai.com/cloudlets/reference/post-policy-version)
   187      * [DeletePolicyVersion](https://techdocs.akamai.com/cloudlets/reference/delete-policy-version)
   188      * [UpdatePolicyVersion](https://techdocs.akamai.com/cloudlets/reference/put-policy-version)
   189    * Policy Activations
   190      * [ListPolicyActivations](https://techdocs.akamai.com/cloudlets/reference/get-policy-activations)
   191      * [GetPolicyActivation](https://techdocs.akamai.com/cloudlets/reference/get-policy-activation)
   192      * [ActivatePolicy and DeactivatePolicy](https://techdocs.akamai.com/cloudlets/reference/post-policy-activations)
   193    * Supported cloudlet types
   194      * API Prioritization (AP)
   195      * Application Segmentation (AS)
   196      * Edge Redirector (ER)
   197      * Forward Rewrite (FR)
   198      * Phased Release (PR aka CD)
   199      * Request Control (RC aka IG)
   200  
   201  * DNS
   202    * Added `ListGroups` method
   203      * [ListGroups](https://techdocs.akamai.com/edge-dns/reference/get-data-groups)
   204  
   205  * Edgeworkers
   206    * Added `note` field to `Activation` and `ActivateVersion` structs for EdgeWorkers Activation
   207  
   208  * GTM
   209    * Added new fields to `DomainItem` struct
   210  
   211  * IVM
   212    * Extended `OutputImage` for support of `AllowPristineOnDownsize` and `PreferModernFormats`
   213    * Extended `PolicyInputImage` for support of `ServeStaleDuration`
   214    * Extended `RolloutInfo` for support of `ServeStaleEndTime`
   215  
   216  #### BUG FIXES:
   217  
   218  * APPSEC
   219    * Added `updateLatestNetworkStatus` query parameter in GetActivations request to resolve drift on manual changes to infrastructure
   220  
   221  ## 7.5.0 (November 28, 2023)
   222  
   223  #### FEATURES/ENHANCEMENTS:
   224  
   225  * APPSEC
   226    * Added `ASNControls` field to `UpdateIPGeoRequest` and `IPGeoFirewall` structs to support firewall blocking by ASN client lists
   227  
   228  * BOTMAN
   229    * Added API support for Custom Code - read and update
   230  
   231  ## 7.4.0 (October 24, 2023)
   232  
   233  #### FEATURES/ENHANCEMENTS:
   234  
   235  * APPSEC
   236    * Updated `GetExportConfigurationResponse` struct to export rate policy `burstWindow` and `condition` fields
   237  
   238  * Cloudlets
   239    * Added MatchesAlways field to ER cloudlet
   240  
   241  * IAM
   242    * Phone number is no longer required for IAM user for `CreateUser` and `UpdateUserInfo` methods
   243  
   244  ## 7.3.0 (September 19, 2023)
   245  
   246  #### FEATURES/ENHANCEMENTS:
   247  
   248  * ClientLists
   249    * Updated `GetClientListResponse` and `UpdateClientListResponse` to include `GroupID`
   250  
   251  * GTM
   252    * Added custom error `ErrNotFound` that can be used to check if GTM api returned 404 not found
   253  
   254  * HAPI
   255    * Added `GetChangeRequest`
   256  
   257  * Updated `yaml.v3` dependency
   258  
   259  ## 7.2.1 (August 25, 2023)
   260  
   261  #### BUG FIXES:
   262  
   263  * CloudWrapper
   264    * Fixed build for 32-bit systems
   265  
   266  ## 7.2.0 (August 22, 2023)
   267  
   268  #### FEATURES/ENHANCEMENTS:
   269  
   270  * [IMPORTANT] Added CloudWrapper API support
   271    * Capacities
   272      * [ListCapacities](https://techdocs.akamai.com/cloud-wrapper/reference/get-capacity-inventory)
   273    * Configurations
   274      * [GetConfiguration](https://techdocs.akamai.com/cloud-wrapper/reference/get-configuration)
   275      * [ListConfigurations](https://techdocs.akamai.com/cloud-wrapper/reference/get-configurations)
   276      * [CreateConfiguration](https://techdocs.akamai.com/cloud-wrapper/reference/post-configuration)
   277      * [UpdateConfiguration](https://techdocs.akamai.com/cloud-wrapper/reference/put-configuration)
   278      * [ActivateConfiguration](https://techdocs.akamai.com/cloud-wrapper/reference/post-configuration-activations)
   279    * Locations
   280      * [ListLocations](https://techdocs.akamai.com/cloud-wrapper/reference/get-locations)
   281    * MultiCDN
   282      * [ListAuthKeys](https://techdocs.akamai.com/cloud-wrapper/reference/get-auth-keys)
   283      * [ListCDNProviders](https://techdocs.akamai.com/cloud-wrapper/reference/get-providers)
   284    * Properties
   285      * [ListProperties](https://techdocs.akamai.com/cloud-wrapper/reference/get-properties)
   286      * [ListOrigins](https://techdocs.akamai.com/cloud-wrapper/reference/get-origins)
   287  
   288  * [IMPORTANT] Added Client Lists API Support
   289    * ClientLists
   290      * [GetClientLists](https://techdocs.akamai.com/client-lists/reference/get-lists)
   291        * Support filter by name or type
   292      * [GetClientList](https://techdocs.akamai.com/client-lists/reference/get-list)
   293      * [UpdateClientList](https://techdocs.akamai.com/client-lists/reference/put-update-list)
   294      * [UpdateClientListItems](https://techdocs.akamai.com/client-lists/reference/post-update-items)
   295      * [CreateClientList](https://techdocs.akamai.com/client-lists/reference/post-create-list)
   296      * [DeleteClientList](https://techdocs.akamai.com/client-lists/reference/delete-list)
   297    * Activations
   298      * [GetActivation](https://techdocs.akamai.com/client-lists/reference/get-retrieve-activation-status)
   299      * [GetActivationStatus](https://techdocs.akamai.com/client-lists/reference/get-activation-status)
   300      * [CreateActivation](https://techdocs.akamai.com/client-lists/reference/post-activate-list)
   301  
   302  * APPSEC
   303    * Added Bot Management API Support
   304      * Custom Client Sequence - read and update
   305  
   306  ## 7.1.0 (July 25, 2023)
   307  
   308  ### FEATURES/ENHANCEMENTS:
   309  
   310  * APPSEC
   311    * Added Bot Management API Support
   312      * Challenge Injection Rules - read, update
   313      * Add `CreateSecurityPolicyWithDefaultProtections` method to the `SecurityPolicy` interface to support creating a security policy with all available protections enabled.
   314    * Update marshaling of PII learning setting
   315  
   316  ### Deprecations
   317  
   318  * Challenge Interceptions Rules has been deprecated
   319  * Deprecate the following interfaces used to maintain individual policy protections:
   320    * `ApiConstraintsProtection`
   321    * `IPGeoProtection`
   322    * `MalwareProtection`
   323    * `NetworkLayerProtection`
   324    * `RateProtection`
   325    * `ReputationProtection`
   326    * `SlowPostProtection`
   327    * `WAFProtection`
   328  * Deprecate the `CreateSecurityPolicy` method of the `SecurityPolicy` interface.
   329  
   330  ## 7.0.0 (June 20, 2023)
   331  
   332  ### BREAKING CHANGES:
   333  
   334  * DataStream
   335    * Updated `connectors` details in DataStream 2 API v2.
   336    * Updated `GetProperties` and `GetDatasetFields` methods in DataStream 2 API v2.
   337    * Updated `CreateStream`, `GetStream`, `UpdateStream`, `DeleteStream` and `ListStreams` methods in DataStream 2 API v2.
   338    * Updated `Activate`, `Deactivate`, `ActivationHistory` and `Stream` details in DataStream 2 API v2 and also changed their corresponding response objects.
   339  
   340  ### FEATURES/ENHANCEMENTS:
   341  
   342  * APPSEC
   343    * Update Geo control to include Action for Ukraine.
   344    * Add `AdvancedSettingsPIILearning` interface to support reading and updating the PII learning setting.
   345  
   346  ### BUG FIXES:
   347  
   348  * APPSEC
   349    * Add error handling for failed NetworkList client calls.
   350  
   351  ## 6.0.0 (May 23, 2023)
   352  
   353  ### BREAKING CHANGES:
   354  
   355  * APPSEC
   356    * Update malware policy `ContentTypes` to include `EncodedContentAttributes`.
   357    * Malware policy's `ContentTypes` is reported as part of an individual policy but is no longer included in the bulk report of all policies.
   358  
   359  * CLOUDLETS
   360    * `ActivatePolicyVersion` also returns list of triggerred activations
   361  
   362  * PAPI
   363    * Fix property variables fields with empty and null values are ignored
   364    * Remove `ProductID` field from `GetEdgeHostname` response
   365  
   366  ### BUG FIXES:
   367  * APPSEC
   368    * Omit `clientIdentifier` and `additionalMatchOptions` in `GetExportConfigurationResponse` when empty
   369  
   370  ## 5.0.0 (March 28, 2023)
   371  
   372  ### FEATURES/ENHANCEMENTS:
   373  
   374  * APPSEC
   375    * Add `AdvancedSettingsRequestBody` interface to support configuring request size inspection limit
   376  
   377  * EDGEKV
   378    * [ListGroupsWithinNamespace](https://techdocs.akamai.com/edgekv/reference/get-groups)
   379  
   380  * Image and Video Manager
   381    * Add possible value `avif` for `forcedFormats` and `allowedFormats`
   382  
   383  * PAPI
   384    * Add `complianceRecord` field to `Activation` struct for PAPI activation
   385  
   386  #### BREAKING CHANGES:
   387  
   388  * APPSEC
   389    * Remove deprecated `EvalHost` and `EvalProtectHost` interfaces. (Use the `WAPSelectedHostnames` interface instead.)
   390    * Remove deprecated `BypassNetworkList` interface. (Use the `WAPBypassNetworkList` interface instead.)
   391  
   392  ## 4.1.0 (Feb 27, 2023)
   393  
   394  ### FEATURES/ENHANCEMENTS:
   395  
   396  * APPSEC
   397    * Added following BotManager fields to GetExportConfigurationResponse
   398      * BotManagement
   399      * CustomBotCategories
   400      * CustomDefinedBots
   401      * CustomBotCategorySequence
   402      * CustomClients
   403      * ResponseActions
   404      * AdvancedSettings
   405    * Added AdvancedSettingsAttackPayloadLogging interface
   406  
   407  #### BUG FIXES:
   408  
   409  * Fix V4 of Edgegrid doesn't parse hostname ([#182](https://github.com/akamai/AkamaiOPEN-edgegrid-golang/pull/182))
   410  
   411  ## 4.0.0 (Jan 31, 2023)
   412  
   413  #### BREAKING CHANGES:
   414  
   415  * Migrate to go 1.18
   416  
   417  * PAPI
   418    * Fix response structures for GetAvailableBehaviors and GetAvailableCriteria:
   419      * [GetAvailableCriteria](https://techdocs.akamai.com/property-mgr/reference/get-available-criteria)
   420      * [GetAvailableBehaviors](https://techdocs.akamai.com/property-mgr/reference/get-available-behaviors)
   421  
   422  * CPS
   423    * Update `Accept` header to the latest schema `application/vnd.akamai.cps.enrollment.v11+json` for the following endpoints:
   424      * [ListEnrollments](https://techdocs.akamai.com/cps/reference/get-enrollments)
   425      * [GetEnrollment](https://techdocs.akamai.com/cps/reference/get-enrollment)
   426  
   427  * APPSEC
   428    * Fix incorrect return type structure in `UpdateBypassNetworkListsResponse`
   429    * Return `RatePolicyCondition` via a pointer in response structs of `RatePolicy` APIs
   430  
   431  #### FEATURES/ENHANCEMENTS:
   432  
   433  * Replace obsolete APIs documentation links with new one from [https://techdocs.akamai.com](https://techdocs.akamai.com)
   434  
   435  * APPSEC
   436    * Add `burstWindow` and `condition` fields to RatePolicy
   437  
   438  * CPS
   439    * Add `preferredTrustChain` field to `csr` struct ([#351](https://github.com/akamai/terraform-provider-akamai/issues/351))
   440    * Set `utf-8 charset` in `content-type` header for requests
   441  
   442  #### BUG FIXES:
   443  
   444  * Fix code errors in documentation examples ([#177](https://github.com/akamai/AkamaiOPEN-edgegrid-golang/pull/177))
   445  
   446  * IAM
   447    * Issue updating user information - removed validation on user update
   448  
   449  ## 3.1.0 (Dec 12, 2022)
   450  
   451  #### FEATURES/ENHANCEMENTS:
   452  
   453  * General
   454    * Add badges to readme and improve code quality
   455  
   456  * [IMPORTANT] Added Property Include API support
   457    * Includes
   458      * [ListIncludes](https://techdocs.akamai.com/property-mgr/reference/get-includes)
   459      * [ListIncludeParents](https://techdocs.akamai.com/property-mgr/reference/get-include-parents)
   460      * [GetInclude](https://techdocs.akamai.com/property-mgr/reference/get-include)
   461      * [CreateInclude](https://techdocs.akamai.com/property-mgr/reference/post-includes)
   462      * [DeleteInclude](https://techdocs.akamai.com/property-mgr/reference/delete-include)
   463    * Include Activations
   464      * [ActivateInclude](https://techdocs.akamai.com/property-mgr/reference/post-include-activation)
   465      * [DeactivateInclude](https://techdocs.akamai.com/property-mgr/reference/post-include-activation)
   466      * [CancelIncludeActivation](https://techdocs.akamai.com/property-mgr/reference/delete-include-activation)
   467      * [GetIncludeActivation](https://techdocs.akamai.com/property-mgr/reference/get-include-activation)
   468      * [ListIncludeActivations](https://techdocs.akamai.com/property-mgr/reference/get-include-activations)
   469    * Include Rules
   470      * [GetIncludeRuleTree](https://techdocs.akamai.com/property-mgr/reference/get-include-version-rules)
   471      * [UpdateIncludeRuleTree](https://techdocs.akamai.com/property-mgr/reference/patch-include-version-rules)
   472    * Include Versions
   473      * [CreateIncludeVersion](https://techdocs.akamai.com/property-mgr/reference/post-include-versions)
   474      * [GetIncludeVersion](https://techdocs.akamai.com/property-mgr/reference/get-include-version)
   475      * [ListIncludeVersions](https://techdocs.akamai.com/property-mgr/reference/get-include-versions)
   476      * [ListIncludeVersionAvailableCriteria](https://techdocs.akamai.com/property-mgr/reference/get-include-available-criteria)
   477      * [ListIncludeVersionAvailableBehaviors](https://techdocs.akamai.com/property-mgr/reference/get-include-available-behaviors)
   478  
   479  #### BREAKING CHANGES:
   480  
   481  * APPSEC
   482    * Factor out `PolicySecurityControls` struct
   483  
   484  ## 3.0.0 (November 28, 2022)
   485  
   486  ### Deprecations
   487  
   488  * CPS
   489    * UpdateChange() function has been deprecated
   490  
   491  #### FEATURES/ENHANCEMENTS:
   492  
   493  * CPS
   494    * ChangeManagementInfo - get or acknowledge change management info, get change deployment info
   495    * Deployments - list deployments, get production deployment, get staging deployment
   496    * DeploymentSchedules - get deployment schedule, update deployment schedule
   497    * History - get DV history, get certificate history, get change history
   498    * PostVerification - get or acknowledge post verification warnings
   499    * ThirdPartyCSR - get third-party CSR, upload certificate
   500  
   501  #### BREAKING CHANGES:
   502  
   503  * Rename package `configdns` to `dns`
   504  * Rename package `configgtm` to `gtm`
   505  * CPS
   506    * Renamed structs: Challenges and ValidationRecords to Challenge and ValidationRecord accordingly
   507    * Type change: `NotAfter` and `NotBefore` fields in `DeploymentSchedule` struct used in response for `GetChangeStatus` are `*string` instead of `string`
   508  
   509  ## 2.17.0 (October 24, 2022)
   510  
   511  #### FEATURES/ENHANCEMENTS:
   512  
   513  * Datastream
   514    * Add ListStreams
   515    * Add new connectors: Elasticsearch, NewRelic and Loggly
   516    * Extend Splunk and Custom HTTPS connectors mTLS certificates configuration
   517    * Extend SumoLogic, Splunk and Custom HTTPS connectors with ability to specify custom HTTP headers
   518  
   519  #### BUG FIXES:
   520  
   521  * APPSEC
   522    * Fix incorrect JSON sent when applying appsec_ip_geo resource in allow mode
   523  
   524  ## 2.16.0 (September 26, 2022)
   525  
   526  #### FEATURES/ENHANCEMENTS:
   527  
   528  * APPSEC
   529    * Add interfaces to support file malware scanning (FMS):
   530      * MalwareContentTypes
   531      * MalwarePolicy
   532      * MalwarePolicyAction
   533      * MalwareProtection
   534    * Add GetRuleRecommendations method to TuningRecommendations interface
   535    * Add deprecation notes for the following:
   536      * methods:
   537        * GetIPGeoProtections
   538        * GetNetworkLayerProtections
   539        * GetRateProtections
   540        * GetReputationProtections
   541        * GetSlowPostProtectionSetting
   542        * GetSlowPostProtections
   543        * GetWAFProtections
   544        * RemoveNetworkLayerProtection
   545        * RemovePolicyProtections
   546        * RemoveReputationProtection
   547      * structs:
   548        * GetIPGeoProtectionsRequest
   549        * GetNetworkLayerProtectionsRequest
   550        * GetRateProtectionsRequest
   551        * GetReputationProtectionsRequest
   552        * GetSlowPostProtectionSettingRequest
   553        * GetSlowPostProtectionSettingResponse
   554        * GetSlowPostProtectionsRequest
   555        * GetWAFProtectionsRequest
   556        * RemoveNetworkLayerProtectionRequest
   557        * RemovePolicyProtectionsRequest
   558        * RemoveReputationProtectionRequest
   559  
   560  * [IMPORTANT] Added Bot Management API Support
   561      * Akamai Bot Category - read
   562      * Akamai Bot Category Action - read, update
   563      * Akamai Defined Bot - read
   564      * Bot Analytics Cookie - read, update
   565      * Bot Analytics Cookie Values - read
   566      * Bot Category Exception - read, update
   567      * Bot Detection - read
   568      * Bot Detection Action - read, update
   569      * Bot Endpoint Coverage Report - read
   570      * Bot Management Setting - read, update
   571      * Challenge Action - create, read, update, delete
   572      * Challenge Interception Rules - read, update
   573      * Client Side Security - read, update
   574      * Conditional Action - create, read, update, delete
   575      * Custom Bot Category - create, read, update, delete
   576      * Custom Bot Category Action - read, update
   577      * Custom Bot Category Sequence - read, update
   578      * Custom Client - create, read, update, delete
   579      * Custom Defined Bot - create, read, update, delete
   580      * Custom Deny Action - create, read, update, delete
   581      * Javascript Injection - read, update
   582      * Recategorized Akamai Defined Bot - create, read, update, delete
   583      * Response Action - read
   584      * Serve Alternate Action - create, read, update, delete
   585      * Transactional Endpoint - create, read, update, delete
   586      * Transactional Endpoint Protection - read, update
   587  
   588  ## 2.15.0 (August 22, 2022)
   589  
   590  #### FEATURES/ENHANCEMENTS:
   591  
   592  * APPSEC
   593    * Add xff field to custom rule conditions
   594    * Add NotificationEmails to Activation struct
   595  
   596  * GTM
   597    * Improved error messages
   598  
   599  * CPS
   600    * Add cps ListEnrollments
   601    * Extend CreateEnrollment with AllowDuplicateCN option
   602  
   603  ## 2.14.1 (July 26, 2022)
   604  
   605  #### BUG FIXES:
   606  
   607  * IAM
   608    * Change IAM GroupID type to int64
   609  
   610  ## 2.14.0 (June 28, 2022)
   611  
   612  #### FEATURES/ENHANCEMENTS:
   613  
   614  * APPSEC
   615    * Added penalty box support for security policy in evaluation mode
   616  
   617  * HAPI
   618    * EdgeHostname - update
   619  
   620  * IAM
   621    * Blocked properties - read, update
   622    * Group - create, read, update, delete
   623    * Role - create, read, update, delete
   624    * User - lock, unlock, TFA, set password, reset password
   625  
   626  #### BUG FIXES:
   627  * APPSEC
   628    * Fixed incorrect error message on activation failure
   629    * The `EffectiveTimePeriod`, `SamplingRate`, `LoggingOptions`, and `Operation` fields of the various `CustomRule` response structs are now marshalled correctly
   630  
   631  ## 2.13.0 (May 31, 2022)
   632  
   633  #### FEATURES/ENHANCEMENTS:
   634  
   635  * Image and Video Manager
   636    * Add new `ImQuery` transformation
   637    * New `PostBreakPointTransformationType`
   638  
   639  #### BUG FIXES:
   640  
   641  * Image and Video Manager
   642    * `default_value` field on variable in image policy should not be required
   643    * Change all primitive optional parameters to pointers
   644    * Correct `Anchor` field in `RectangleShapeType`
   645    * Value field for `NumberVariableInline` should be defined as `float64`
   646    * Rename `PointShapeType.True` to `PointShapeType.Y`, to match the OpenAPI definition
   647    * Add `Composite` transformation to `PostBreakpointTransformations`
   648    * Fix `PostBreakpointTransformations.PolicyInputImage`
   649  
   650  ## 2.12.0 (Apr. 25, 2022)
   651  
   652  #### FEATURES/ENHANCEMENTS:
   653  
   654  * APPSEC
   655    * Add WAPBypassNetworkLists interface, to be used in preference to deprecated BypassNetworkLists interface
   656  
   657  * Support for account switch keys from environment ([#149](https://github.com/akamai/AkamaiOPEN-edgegrid-golang/pull/149))
   658  
   659  ## 2.11.0 (March 24, 2022)
   660  
   661  #### FEATURES/ENHANCEMENTS:
   662  
   663  * [IMPORTANT] Added Image and Video Manager API support
   664    * Policy Set - create, read, update, delete
   665    * Policy - create, read, update, delete, rollback to previous version, view policy history
   666  
   667  * CLOUDLETS
   668    * Support for RC cloudlet type (Request Control)
   669  
   670  * PAPI
   671    * CP code - read, update
   672  
   673  ## 2.10.0 (Feb. 28, 2022)
   674  
   675  #### FEATURES/ENHANCEMENTS:
   676  
   677  * [IMPORTANT] Added EdgeWorkers and EdgeKV API support
   678    * EDGEWORKERS
   679      * Ids - create, read, update, delete, clone
   680      * Versions - create, read, delete, validate version bundle
   681      * Activations - create, read, delete
   682      * Deactivations - read, delete
   683      * Resource tiers - read
   684      * Reports - read
   685      * Secure token - create
   686      * Permission groups - read
   687      * Properties - read
   688      * Contracts - read
   689    * EDGEKV
   690      * Items - create, read, update, delete
   691      * Namespaces - create, read, update
   692      * Initialization - create, read
   693      * Access token - create, read, delete
   694  
   695  * APPSEC
   696    * Source for evasive path match interface updated with links to documentation
   697  
   698  * CLOUDLETS
   699    * Support for AS cloudlet type (Audience Segmentation)
   700  
   701  ## 2.9.1 (Feb. 7, 2022)
   702  
   703  #### FEATURES/ENHANCEMENTS:
   704  
   705  * APPSEC
   706    * Remove deprecation notes for individual policy protection methods
   707  
   708  #### BUG FIXES:
   709  
   710  * CLOUDLETS
   711    * Fixed validation for ALB version DataCenter percent
   712  
   713  ## 2.9.0 (Jan. 24, 2022)
   714  
   715  #### FEATURES/ENHANCEMENTS:
   716  
   717  * CLOUDLETS
   718    * Support for VP cloudlet type (Visitor Prioritization)
   719    * Support for CD cloudlet type (Continuous Deployment / Phased Release)
   720    * Support for FR cloudlet type (Forward Rewrite)
   721    * Support for AP cloudlet type (API Prioritization)
   722  
   723  * APPSEC
   724    * Add support for Evasive Path Match feature
   725    * Deprecate individual policy protection interface methods
   726  
   727  * NETWORK LISTS
   728    * Include ContractID and GroupID in GetNetworkListResponse
   729  
   730  ## 2.8.1 (Nov. 30, 2021)
   731  
   732  #### FEATURES/ENHANCEMENTS:
   733  * [IMPORTANT] Added Cloudlets API support
   734    * Policy (Application Load Balancer) -  create, read, update, delete policy
   735    * Policy (Edge Redirector) -  create, read, update, delete policy
   736    * Policy activation - create, read
   737    * Application Load Balancer configuration - create, update, read
   738    * Activation for Application Load Balancer configuration - create, read
   739  
   740  * APPSEC
   741    * Add support for advanced exceptions in ASE rules
   742    * Update bypass-network-list datasource and resource for multi-policy WAP
   743  
   744  ## 2.7.0 (Oct 19, 2021)
   745  
   746  #### FEATURES/ENHANCEMENTS:
   747  * [IMPORTANT] Added DataStream API support
   748    * Stream operations
   749    * Stream activation operations
   750    * Read access to various DataStream properties
   751  * Added HAPI v1 support
   752    * Delete edge hostname
   753  
   754  ## 2.6.0 (Aug 16, 2021)
   755  
   756  #### BUG FIXES:
   757  * APPSEC
   758    * Fix incorrect comments/URL references in inline documentation
   759  
   760  #### FEATURES/ENHANCEMENTS
   761  * APPSEC
   762    * Get an evaluation attack group's or risk score group's action
   763  
   764  * NETWORK LISTS
   765    * Support contract_id and group_id for network list create/update
   766  
   767  ## 2.5.0 (Jun 15, 2021)
   768  
   769  #### BREAKING CHANGES:
   770  * APPSEC
   771    * The following have been removed, togther with their unit tests and test data:
   772      * pkg/appsec/attack_group_action.go
   773      * pkg/appsec/attack_group_condition_exception.go
   774      * pkg/appsec/eval_rule_action.go
   775      * pkg/appsec/eval_rule_condition_exception.go
   776      * pkg/appsec/rule_action.go
   777      * pkg/appsec/rule_condition_exception.go
   778  
   779  #### BUG FIXES:
   780  * DNSv2
   781      * Fixed parsing SVCB, HTTPS rdata.
   782  
   783  #### FEATURES/ENHANCEMENTS:
   784  * [IMPORTANT] CPS - Added Certificate Provisioning API support
   785    * Enrollments - create, read, update, delete enrollments
   786    * Change status API - get change status, cancel change
   787    * DV certificate API - get and acknowledge DV challenges
   788    * Pre verification warnings - get and acknowledge pre verification warnings
   789  
   790  * APPSEC
   791    * The following have been added, together with their unit tests and test data:
   792      * pkg/appsec/api_constraints_protection.go
   793      * pkg/appsec/advanced_settings_pragma_header.go
   794      * pkg/appsec/attack_group.go
   795      * pkg/appsec/eval_rule.go
   796      * pkg/appsec/rule.go
   797      * pkg/appsec/ip_geo_protection.go
   798  
   799  ## 2.4.1 (Apr 19, 2021)
   800  
   801  #### BUG FIXES:
   802  
   803  * APPSEC
   804    * Suppress 'null' text on output of empty/false values
   805    * Prevent configuration drift when reapplying configuration after importing or creating resources
   806  
   807  ## 2.4.0 (Mar 29, 2021) PAPI - Secure by default
   808  
   809  * PAPI
   810     * Support to provision default certs as part of hostnames request
   811     * New cert status object in hostnames response if it exists
   812  
   813  ## 2.3.0 (Mar 15, 2021) Network Lists
   814  
   815  Add support for the following operations in the Network Lists API v2:
   816  
   817  * Create a network list
   818  * Update an existing network list
   819  * Get the existing network lists, including optional filtering by name or type
   820  * Subscribe to a network list
   821  * Activate a network list
   822  
   823  ## 2.2.1 (Mar 3, 2021)
   824  * PAPI - Fixed issue with rules causing advanced locked behaviors to fail
   825  
   826  ## 2.2.0 (Feb 23, 2021) APPSEC - Extended list of supported list endpoints from APPSEC API
   827  
   828  #### BUG FIXES:
   829  * PAPI
   830      * Fixed issue with version and rule comments being dropped
   831      * Fixed client side validation to allow certain PAPI errors to passthrough
   832  
   833  #### FEATURES/ENHANCEMENTS:
   834  * APPSEC
   835      * Custom Deny
   836      * SIEM Setting
   837      * Advanced Options Settings
   838      * API Match Target
   839      * API Request Constraint
   840      * Create/Delete/Rename Security Policy
   841      * Host Coverage / Edit Version Notes
   842      * All WAP Features / WAP Hostname Evaluation
   843      * Create Security Configuration
   844      * Rename Security Configuration Version
   845      * Delete Security Configuration Version
   846      * Clone Security Configuration
   847      * Import tool for adding existing resources to Terraform state
   848  * DNS
   849      * Add support for HTTPS, SVCB records to ParseRData
   850  
   851  ## 2.1.1 (Feb 3, 2021)
   852  * PAPI - Fixed validation on empty rule behaviors causing some properties with nested behaviors to fail
   853  
   854  ## 2.1.0 (Jan 13, 2021)
   855  * [IMPORTANT] IAM - New Identity and Access Management API Support
   856  
   857  ## 2.0.4 (Dec 23, 2020)
   858  * APPSEC - Extended list of supported endpoints from APPSEC API:
   859    * DDoS Protection -- Rate Policy & Action
   860    * DDoS Protection -- Slowpost setting & Action
   861    * Application Layer Protection -- Rule Action, Exceptions & Conditions
   862    * Application Layer Protection -- Rule Evaluation Action, Exceptions & Conditions
   863    * Application Layer Protection -- Attack Group Action, Exceptions & Conditions
   864    * Application Layer Protection -- Rule Upgrade & Change Mode for Rule Eval
   865    * Reputation Profile & Action
   866    * Network Layer Control -- IP & GEO setting
   867  
   868  ## 2.0.3 (Dec 7, 2020)
   869  * PAPI - Property hostname validation fix for missing hostnames.
   870  * PAPI - fix minor typo in rules error messages
   871  
   872  ## 2.0.2 (Nov 19, 2020)
   873  * [IMPORTANT] APPSEC - Added Application Security API
   874  * [ENHANCEMENT] DNS - Bulk Api endpoints added
   875  * ALL - Re-enabled global account switch key support in edgerc files
   876  * PAPI - Edgehostname IPV6 support fix.  Added enums with allowed values.
   877  * PAPI - Edgehostname blank cname or egdehostname id fix
   878  * PAPI - propertyversion blank etag field fix
   879  
   880  ## 2.0.1 (Oct 15, 2020)
   881  * [IMPORTANT] Breaking changes from earlier clients. Project updated to use v2 directory structure.
   882  * [ENHANCEMENT] PAPI - Api error return to the user when an activation or validation error occurs.
   883  * [NOTE] Project re-organized to prepare for additional APIs to be included in future versions of this library.
   884  
   885  ## 1.0.0 (Oct 15, 2020)
   886  * Official release for the EdgeGrid Golang library
   887  * DNSv2 - Zone create signature to pass blank instead of nil
   888  * PAPI - Return nil instead of error if no cp code was found
   889  * GTM - Datacenter API requires blank instead of nil
   890  
   891  ## 0.9.18 (Jul 13, 2020)
   892  * [AT-40][Add] Preliminary Logging CorrelationID
   893  
   894  ## 0.9.17 (Jun 9, 2020)
   895  * Corrected AKAMAICDN target parsing
   896  * Added endpoints for list zones, creating and updating multiple recordsets
   897  * Refactored recordsets into separate source file
   898  
   899  ## 0.9.16 (May 29, 2020)
   900  * Client-v1, Papi-v1 Updates
   901  * Add lock around http request creation.
   902  * papi - add logging to papi endpoints.
   903  
   904  ## 0.9.15 (May 15, 2020)
   905  * DNSv2 - Added CERT, TSLA Record parsing. Removed MX Record parsing
   906  
   907  ## 0.9.14 (May 12, 2020)
   908  * DNSv2 - Enhance RecordError functions
   909  
   910  ## 0.9.13 (Apr 26, 2020)
   911  * DNSv2 - filterZoneCreate check upper case Type
   912  
   913  ## 0.9.12 (Apr 21, 2020)
   914  * DNSv2 - Added optional arg to bypass dns record lock for create, update and delete functions. default preserves prior behavior
   915  
   916  ## 0.9.11 (Apr 13 , 2020)
   917  * DNSv2 Updates
   918    * Add additional fields, including TSIG, to zone
   919    * Support alias zone types
   920    * Add utility functions for Rdata parsing and process.
   921    * Add GetRecord, GetRecordSet functions
   922    * Add additional Recordset metadata
   923  * Add http request/response logging
   924  
   925  ## 0.9.10 (Mar 5, 2020)
   926  * Add support for caching Edgehostnames and Products
   927  * Support for cache in papi library for edgehostnames and products to minimize round trips to fetch repeated common data to avoid
   928    WAF deny rule IPBLOCK-BURST4-54013 issue
   929  
   930  ## 0.9.9 (Feb 29, 2020)
   931  * Add support for caching Contract, Groups, and Cp Codes
   932  * cache to minimize round trips on repeated common data fetches to avoid
   933    WAF deny rule IPBLOCK-BURST4-54013 issue
   934  
   935  ## 0.9.0 (Aug 6, 2019)
   936  * Added support for GTM