-
General
- Consolidated multiple sub-interfaces into a single interface for each sub-provider.
- Renamed
NTWRKLISTS
interface toNetworkList
fornetworklists
provider - Removed
tools
package in favour ofptr
package
-
Cloudaccess
- Changed naming of request body fields for following structures:
BodyParams
toBody
inCreateAccessKeyVersionRequest
CreateAccessKeyVersionBodyParams
toCreateAccessKeyVersionRequestBody
- Changed naming of request body fields for following structures:
-
Cloudlets
- Changed naming of request body fields for following structures:
BodyParams
toBody
inUpdatePolicyRequest
andClonePolicyRequest
UpdatePolicyBodyParams
toUpdatePolicyRequestBody
ClonePolicyBodyParams
toClonePolicyRequestBody
- Changed naming of request body fields for following structures:
-
Cloudwrapper
- Changed naming of request body fields for following structures:
CreateConfigurationBody
toCreateConfigurationRequestBody
UpdateConfigurationBody
toUpdateConfigurationRequestBody
- Changed naming of request body fields for following structures:
-
DNS
- Refactored parameters in following methods:
GetAuthorities
- from (context.Context, string) into (context.Context,GetAuthoritiesRequest
)GetNameServerRecordList
- from (context.Context, string) into (context.Context,GetNameServerRecordListRequest
)GetRecord
- from (context.Context, string, string, string) into (context.Context,GetRecordRequest
)GetRecordList
- from (context.Context, string, string, string) into (context.Context,GetRecordListRequest
)CreateRecord
- from (context.Context, *RecordBody, string, ...bool) into (context.Context,CreateRecordRequest
)UpdateRecord
- from (context.Context, *RecordBody, string, ...bool) into (context.Context,UpdateRecordRequest
)DeleteRecord
- from (context.Context, *RecordBody, string, ...bool) into (context.Context,DeleteRecordRequest
)GetRecordSets
- from (context.Context, string, ...RecordSetQueryArgs) into (context.Context,GetRecordSetsRequest
)CreateRecordSets
- from (context.Context, *RecordSets, string, ...bool) into (context.Context,CreateRecordSetsRequest
)UpdateRecordSets
- from (context.Context, *RecordSets, string, ...bool) into (context.Context,UpdateRecordSetsRequest
)ListTSIGKeys
- from (context.Context, *TSIGQueryString) into (context.Context,ListTSIGKeysRequest
)GetTSIGKeyZones
- from (context.Context, *TSIGKey) into (context.Context,GetTSIGKeyZonesRequest
)GetTSIGKeyAliases
- from (context.Context, string) into (context.Context,GetTSIGKeyAliasesRequest
)UpdateTSIGKeyBulk
- from (context.Context, *TSIGKeyBulkPost) into (context.Context,UpdateTSIGKeyBulkRequest
)GetTSIGKey
- from (context.Context, string) into (context.Context,GetTSIGKeyRequest
)DeleteTSIGKey
- from (context.Context, string) into (context.Context,DeleteTSIGKeyRequest
)UpdateTSIGKey
- from (context.Context, *TSIGKey, string) into (context.Context,UpdateTSIGKeyRequest
)ListZones
- from (context.Context, ...ZoneListQueryArgs) into (context.Context,ListZonesRequest
)GetZone
- from (context.Context, string) into (context.Context,GetZoneRequest
)GetChangeList
- from (context.Context, string) into (context.Context,GetChangeListRequest
)GetMasterZoneFile
- from (context.Context, string) into (context.Context,GetMasterZoneFileRequest
)PostMasterZoneFile
- from (context.Context, string, string) into (context.Context,PostMasterZoneFileRequest
)CreateZone
- from (context.Context, *ZoneCreate, ZoneQueryString, ...bool) into (context.Context,CreateZoneRequest
)SaveChangeList
- from (context.Context, *ZoneCreate) into (context.Context,SaveChangeListRequest
)SubmitChangeList
- from (context.Context, *ZoneCreate) into (context.Context,SubmitChangeListRequest
)UpdateZone
- from (context.Context, *ZoneCreate) into (context.Context,UpdateZoneRequest
)GetZoneNames
- from (context.Context, string) into (context.Context,GetZoneNamesRequest
)GetZoneNameTypes
- from (context.Context, string, string) into (context.Context,GetZoneNameTypesRequest
)GetBulkZoneCreateStatus
- from (context.Context, string) into (context.Context,GetBulkZoneCreateStatusRequest
)GetBulkZoneDeleteStatus
- from (context.Context, string) into (context.Context,GetBulkZoneDeleteStatusRequest
)GetBulkZoneCreateResult
- from (context.Context, string) into (context.Context,GetBulkZoneCreateResultRequest
)GetBulkZoneDeleteResult
- from (context.Context, string) into (context.Context,GetBulkZoneDeleteResultRequest
)CreateBulkZones
- from (context.Context, *BulkZonesCreate, ZoneQueryString) into (context.Context,CreateBulkZonesRequest
)DeleteBulkZones
- from (context.Context, *ZoneNameListResponse, ...bool) into (context.Context,DeleteBulkZonesRequest
)GetRdata
- from (context.Context, string, string, string) into (context.Context,GetRdataRequest
)
- Refactored response in following methods:
GetAuthorities
-*AuthorityResponse
into*GetAuthoritiesResponse
GetRecord
-*RecordBody
into*GetRecordResponse
GetRecordList
-*RecordSetResponse
into*GetRecordListResponse
GetRecordSets
-*RecordSetResponse
into*GetRecordSetsResponse
GetTSIGKey
-*TSIGKeyResponse
into*GetTSIGKeyResponse
ListTSIGKeys
-*TSIGReportResponse
into*ListTSIGKeysResponse
GetTSIGKeyZones
-*ZoneNameListResponse
into*GetTSIGKeyZonesResponse
GetTSIGKeyAliases
-*ZoneNameListResponse
into*GetTSIGKeyAliasesResponse
GetZone
-*ZoneResponse
into*GetZoneResponse
GetChangeList
-*ChangeListResponse
into*GetChangeListResponse
GetZoneNames
-*ZoneNamesResponse
into*GetZoneNamesResponse
GetZoneNameTypes
-*ZoneNameTypesResponse
into*GetZoneNameTypesResponse
GetBulkZoneCreateStatus
-*BulkStatusResponse
into*GetBulkZoneCreateStatusResponse
GetBulkZoneDeleteStatus
-*BulkStatusResponse
into*GetBulkZoneDeleteStatusResponse
GetBulkZoneCreateResult
-*BulkCreateResultResponse
into*GetBulkZoneCreateResultResponse
GetBulkZoneDeleteResult
-*BulkDeleteResultResponse
into*GetBulkZoneDeleteResultResponse
CreateBulkZones
-*BulkZonesResponse
into*CreateBulkZonesResponse
DeleteBulkZones
-*BulkZonesResponse
into*DeleteBulkZonesResponse
- Removed following interfaces:
Authorities
Data
Records
Recordsets
TSIGKeys
Zones
- Renamed following methods:
SaveChangelist
intoSaveChangeList
SubmitChangelist
intoSubmitChangeList
TSIGKeyBulkUpdate
intoUpdateTSIGKeyBulk
- Refactored parameters in following methods:
-
EdgeKV
- For the
CreateEdgeKVAccessTokenRequest
, removed theExpiry
field and added theRestrictToEdgeWorkerIDs
field. - For the
CreateEdgeKVAccessTokenResponse
, removed theExpiry
andValue
fields, and added these fields:AllowOnProduction
AllowOnStaging
CPCode
IssueDate
LatestRefreshDate
NamespacePermissions
NextScheduledRefreshDate
RestrictToEdgeWorkerIDs
TokenActivationStatus
- Added these fields to the
EdgeKVAccessToken
method:TokenActivationStatus
IssueDate
LatestRefreshDate
NextScheduledRefreshDate
- For the
-
Edgeworkers
- Changed naming of request body fields for these structures:
EdgeWorkerIDBodyRequest
toEdgeWorkerIDRequestBody
- Changed naming of request body fields for these structures:
-
GTM
- Refactored parameters in these methods:
ListASMaps
- from (context.Context, string) into (context.Context,ListASMapsRequest
)GetASMap
- from (context.Context, string, string) into (context.Context,GetASMapRequests
)CreateASMap
- from (context.Context, *ASMap, string) into (context.Context,CreateASMapRequest
)UpdateASMap
- from (context.Context, *ASMap, string) into (context.Context,UpdateASMapRequest
)DeleteASMap
- from (context.Context, *ASMap, string) into (context.Context,DeleteASMapRequest
)ListCIDRMaps
- from (context.Context, string) into (context.Context,ListCIDRMapsRequest
)GetCIDRMap
- from (context.Context, string, string) into (context.Context,GetCIDRMapRequest
)CreateCIDRMap
- from (context.Context, *CIDRMap, string) into (context.Context,CreateCIDRMapRequest
)UpdateCIDRMap
- from (context.Context, *CIDRMap, string) into (context.Context,UpdateCIDRMapRequest
)DeleteCIDRMap
- from (context.Context, *CIDRMap, string) into (context.Context,DeleteCIDRMapRequest
)ListDatacenters
- from (context.Context, string) into (context.Context,ListDatacentersRequest
)GetDatacenter
- from (context.Context, int, string) into (context.Context,GetDatacenterRequest
)CreateDatacenter
- from (context.Context, *Datacenter, string) into (context.Context,CreateDatacenterRequest
)UpdateDatacenter
- from (context.Context, *Datacenter, string) into (context.Context,UpdateDatacenterRequest
)DeleteDatacenter
- from (context.Context, *Datacenter, string) into (context.Context,DeleteDatacenterRequest
)GetDomainStatus
- from (context.Context, string) into (context.Context,GetDomainStatusRequest
)GetDomain
- from (context.Context, string) into (context.Context,GetDomainRequest
)CreateDomain
- from (context.Context, *Domain, map[string]string) into (context.Context,CreateDomainRequest
)UpdateDomain
- from (context.Context, *Domain, map[string]string) into (context.Context,UpdateDomainRequest
)DeleteDomain
- from (context.Context, *Domain) into (context.Context,DeleteDomainRequest
)ListGeoMaps
- from (context.Context, string) into (context.Context,ListGeoMapsRequest
)GetGeoMap
- from (context.Context, string, string) into (context.Context,GetGeoMapRequest
)CreateGeoMap
- from (context.Context, *GeoMap, string) into (context.Context,CreateGeoMapRequest
)UpdateGeoMap
- from (context.Context, *GeoMap, string) into (context.Context,UpdateGeoMapRequest
)DeleteGeoMap
- from (context.Context, *GeoMap, string) into (context.Context,DeleteGeoMapRequest
)ListProperties
- from (context.Context, string) into (context.Context,ListPropertiesRequest
)GetProperty
- from (context.Context, string, string) into (context.Context,GetPropertyRequest
)CreateProperty
- from (context.Context, *Property, string) into (context.Context,CreatePropertyRequest
)UpdateProperty
- from (context.Context, *Property, string) into (context.Context,UpdatePropertyRequest
)DeleteProperty
- from (context.Context, *Property, string) into (context.Context,DeletePropertyRequest
)ListResources
- from (context.Context, string) into (context.Context,ListResourcesRequest
)GetResource
- from (context.Context, string, string) into (context.Context,GetResourceRequest
)CreateResource
- from (context.Context, *Resource, string) into (context.Context,CreateResourceRequest
)UpdateResource
- from (context.Context, *Resource, string) into (context.Context,UpdateResourceRequest
)DeleteResource
- from (context.Context, *Resource, string) into (context.Context,DeleteResourceRequest
)
- Refactored response in these methods:
ListASMaps
-[]*ASMap
into[]ASMap
GetASMap
-*ASMap
into*GetASMapResponse
CreateASMap
-*ASMapResponse
into*CreateASMapResponse
UpdateASMap
-*ResponseStatus
into*UpdateASMapResponse
DeleteASMap
-*ResponseStatus
into*DeleteASMapResponse
ListCIDRMaps
-[]*CIDRMap
into[]CIDRMap
GetCIDRMap
-*CIDRMap
into*GetCIDRMapResponse
CreateCIDRMap
-*CIDRMapResponse
into*CreateCIDRMapResponse
UpdateCIDRMap
-*ResponseStatus
into*UpdateCIDRMapResponse
DeleteCIDRMap
-*ResponseStatus
into*DeleteCIDRMapResponse
ListDatacenters
-[]*Datacenter
into[]Datacenter
CreateDatacenter
-*DatacenterResponse
into*CreateDatacenterResponse
UpdateDatacenter
-*ResponseStatus
into*UpdateDatacenterResponse
DeleteDatacenter
-*ResponseStatus
into*DeleteDatacenterResponse
ListDomains
-[]*DomainItem
into[]DomainItem
GetDomain
-*Domain
into*GetDomainResponse
CreateDomain
-*DomainResponse
into*CreateDomainResponse
UpdateDomain
-*ResponseStatus
into*UpdateDomainResponse
DeleteDomain
-*ResponseStatus
into*DeleteDomainResponse
GetDomainStatus
-*ResponseStatus
into*GetDomainStatusResponse
ListGeoMaps
-[]*GeoMap
into[]GeoMap
GetGeoMap
-*GeoMap
into*GetGeoMapResponse
CreateGeoMap
-*GeoMapResponse
into*CreateGeoMapResponse
UpdateGeoMap
-*ResponseStatus
into*UpdateGeoMapResponse
DeleteGeoMap
-*ResponseStatus
into*DeleteGeoMapResponse
ListProperties
-[]*Property
into[]Property
GetProperty
-*Property
into*GetPropertyResponse
CreateProperty
-*PropertyResponse
into*CreatePropertyResponse
UpdateProperty
-*ResponseStatus
into*UpdatePropertyResponse
DeleteProperty
-*ResponseStatus
into*DeletePropertyResponse
ListResources
-[]*Resource
into[]Resource
GetResource
-*Resource
into*GetResourceResponse
CreateResource
-*ResourceResponse
into*CreateResourceResponse
UpdateResource
-*ResponseStatus
into*UpdateResourceResponse
DeleteResource
-*ResponseStatus
into*DeleteResourceResponse
- Extended response for these methods - previously only status was returned, now status and resource are returned:
UpdateASMap
DeleteASMap
UpdateCIDRMap
DeleteCIDRMap
UpdateDatacenter
DeleteDatacenter
UpdateDomain
UpdateGeoMap
DeleteGeoMap
UpdateProperty
DeleteProperty
UpdateResource
DeleteResource
- Removed these interfaces:
ASMaps
CIDRMaps
Datacenters
Domains
GeoMaps
Properties
Resources
- Refactored parameters in these methods:
-
IAM
- Migrated V2 endpoints to V3.
- Improved date handling to use
time.Time
instead ofstring
.- Changed fields in these structures:
Users
LastLoginDate
. Changed the field data type fromstring
totime.Time
PasswordExpiryDate
. Changed the field data type fromstring
totime.Time
UserListItem
LastLoginDate
. Changed the field data type fromstring
totime.Time
Role
CreatedDate
. Changed the field data type fromstring
totime.Time
ModifiedDate
. Changed the field data type fromstring
totime.Time
RoleUser
LastLoginDate
. Changed the field data type fromstring
totime.Time
GroupUser
LastLoginDate
. Changed the field data type fromstring
totime.Time
- Changed fields in these structures:
- Changed the
Notifications
field to a pointer type in these structures:CreateUserRequest
UpdateUserNotificationsRequest
- Added the required
AdditionalAuthentication
field to theCreateUserRequest
method. - Made the
Notifications
field required in theUpdateUserNotifications
method.
-
PAPI
- Removed the
rule_format
andproduct_id
fields from theProperty
structure, as this information is populated in theGetPropertyVersion
method.
- Removed the
-
APPSEC
- Added the
Exceptions
field to these structures:GetSiemSettingsResponse
GetSiemSettingResponse
UpdateSiemSettingsRequest
UpdateSiemSettingsResponse
- Added the
Source
field to theGetExportConfigurationRequest
method and theTargetProduct
field to theGetExportConfigurationResponse
method.
- Added the
-
IAM
- Updated structures:
User
withAdditionalAuthenticationConfigured
andActions
UserListItem
withAdditionalAuthenticationConfigured
andAdditionalAuthentication
UserBasicInfo
withAdditionalAuthentication
UserActions
withCanGenerateBypassCode
UserNotificationOptions
withAPIClientCredentialExpiry
- Added new methods:
- Added API Client Credentials methods:
- CreateYourCredential and CreateCredential
- GetYourCredential and GetCredential
- UpdateYourCredential and UpdateCredential
- DeleteYourCredential and DeleteCredential
- ListYourCredentials and ListCredentials
- DeactivateYourCredential and DeactivateCredential
- DeactivateYourCredentials and DeactivateCredentials
- Added the
UserStatus
andAccountID
parameters to theUser
structure. - Added the GetPasswordPolicy method to get a password policy for an account.
- Added Helper APIs
- Added new methods:
- ListUsersForProperty
- BlockUsers
- DisableIPAllowlist
- EnableIPAllowlist
- GetIPAllowlistStatus
ListAccountSwitchKeys
based on ListAccountSwitchKeys and ListYourAccountSwitchKeysLockAPIClient
based on LockAPIClient and LockYourAPIClient- UnlockAPIClient
- ListAPIClients
- CreateAPIClient
GetAPIClient
based on GetAPIClient and GetYourAPIClientUpdateAPIClient
based on UpdateAPIClient and UpdateYourAPIClientDeleteAPIClient
based on DeleteAPIClient and DeleteYourAPIClient- ListCIDRBlocks
- CreateCIDRBlock
- GetCIDRBlock
- UpdateCIDRBlock
- DeleteCIDRBlock
- ValidateCIDRBlock
- Updated structures:
-
APPSEC
- Added field
ClientLists
toRuleConditions
andAttackGroupConditions
- The
RequestBodyInspectionLimitOverride
field has been added in these structures:GetAdvancedSettingsRequestBodyResponse
,UpdateAdvancedSettingsRequestBodyRequest
,UpdateAdvancedSettingsRequestBodyResponse
,RemoveAdvancedSettingsRequestBodyRequest
,RemoveAdvancedSettingsRequestBodyResponse
- Added field
-
IAM
- Added new methods:
- GetProperty
- ListProperties
- MoveProperty
MapPropertyIDToName
- to provide property name for given IAM property ID
- Added new methods:
-
PAPI
- Added new method
MapPropertyNameToID
to provide PAPI property ID for given property name
- Added new method
-
General
- Added
To
utility function in theptr
package that helps with creating value pointers
- Added
-
BOTMAN
- Added Content Protection APIs
- CreateContentProtectionRule
- GetContentProtectionRuleList
- GetContentProtectionRule
- UpdateContentProtectionRule
- RemoveContentProtectionRule
- GetContentProtectionRuleSequence
- UpdateContentProtectionRuleSequence
- GetContentProtectionJavaScriptInjectionRuleList
- GetContentProtectionJavaScriptInjectionRule
- CreateContentProtectionJavaScriptInjectionRule
- UpdateContentProtectionJavaScriptInjectionRule
- RemoveContentProtectionJavaScriptInjectionRule
- Added Content Protection APIs
-
Added Cloud Access Manager API support
- Access Keys
- Access Key Versions
- Properties using Access Key
-
DNS
- Added GetZonesDNSSecStatus method returning the current DNSSEC status for one or more zones
- Deprecated these functions in the
tools
package. Useptr.To
instead.BoolPtr
IntPtr
Int64Ptr
Float32Ptr
Float64Ptr
StringPtr
-
APPSEC
- Added
CounterType
field toCreateRatePolicyResponse
,UpdateRatePolicyResponse
,RemoveRatePolicyResponse
,GetRatePoliciesResponse
andGetRatePolicyResponse
structs to support managing rate policy counter type
- Added
-
BOTMAN
-
HAPI
- Added method to return certificate for the edge hostname
- Added fields to
GetEdgeHostnameResponse
:ProductID
,MapAlias
andUseCases
-
APPSEC
- The
Override
field in these structs has been updated from a pointer to a value type within theAdvancedSettingsAttackPayloadLogging
interface:GetAdvancedSettingsAttackPayloadLoggingResponse
,UpdateAdvancedSettingsAttackPayloadLoggingResponse
,RemoveAdvancedSettingsAttackPayloadLoggingRequest
,RemoveAdvancedSettingsAttackPayloadLoggingResponse
This update was made to address a drift issue related to policy level settings.
- Omit
Prefetch
withinAdvancedOptions
inGetExportConfigurationResponse
when empty
- The
-
CLOUDLETS
- Added validation that
ObjectMatchValue
is not supported withMatchType
query
inMatchRuleER
(#535)
- Added validation that
-
DNS
- Modified
ParseRData
method to remove priority, weight and port from targets only when those values are same for allSRV
targets. Otherwise, targets are returned untouched andpriority
,weight
andport
in the map are not populated.
- Modified
-
Image and Video Manager
- Added
SmartCrop
transformation
- Added
-
Migrated to go 1.21
-
CPS
- Split request and response structures for create and update enrollment operations
-
DNS
- Renamed these structs:
RecordsetQueryArgs
intoRecordSetQueryArgs
Recordsets
intoRecordSets
Recordset
intoRecordSet
MetadataH
intoMetadata
- Renamed these fields:
GroupId
intoGroupID
inListGroupRequest
Recordsets
intoRecordSets
inRecordSetResponse
ContractIds
intoContractIDs
inTSIGQueryString
Gid
intoGID
inTSIGQueryString
andTSIGReportMeta
TsigKey
intoTSIGKey
inZoneCreate
andZoneResponse
VersionId
intoVersionID
inZoneResponse
RequestId
intoRequestID
inBulkZonesResponse
,BulkStatusResponse
,BulkCreateResultResponse
andBulkDeleteResultResponse
- Renamed
RecordSets
interface intoRecordsets
- Renamed these methods:
ListTsigKeys
intoListTSIGKeys
GetTsigKeyZones
intoGetTSIGKeyZones
GetTsigKeyAliases
intoGetTSIGKeyAliases
TsigKeyBulkUpdate
intoTSIGKeyBulkUpdate
GetTsigKey
intoGetTSIGKey
DeleteTsigKey
intoDeleteTSIGKey
UpdateTsigKey
intoUpdateTSIGKey
GetRecordsets
intoGetRecordSets
CreateRecordsets
intoCreateRecordSets
UpdateRecordsets
intoUpdateRecordSets
- Deleted these methods:
NewAuthorityResponse
NewChangeListResponse
NewRecordBody
NewRecordSetResponse
NewTsigKey
NewTsigQueryString
NewZone
NewZoneQueryString
NewZoneResponse
RecordToMap
- Unexported these methods:
FullIPv6
PadCoordinates
ValidateZone
- Renamed these structs:
-
GTM
- Renamed these structs:
AsAssignment
intoASAssignment
AsMap
intoASMap
AsMapList
intoASMapList
CidrAssignment
intoCIDRAssignment
CidrMap
intoCIDRMap
CidrMapList
intoCIDRMapList
CidrMapResponse
intoCIDRMapResponse
AsMapResponse
intoASMapResponse
HttpHeader
intoHTTPHeader
- Renamed these fields:
AsNumbers
intoASNumbers
inASAssignment
AsMapItems
intoASMapItems
inASMapList
CidrMapItems
intoCIDRMapItems
inCIDRMapList
ChangeId
intoChangeID
inResponseStatus
DatacenterId
intoDatacenterID
inDatacenterBase
,Datacenter
,TrafficTarget
andResourceInstance
AsMaps
intoASMaps
inDomain
DefaultSslClientPrivateKey
intoDefaultSSLClientPrivateKey
inDomain
CnameCoalescingEnabled
intoCNameCoalescingEnabled
inDomain
CidrMaps
intoCIDRMaps
inDomain
DefaultSslClientCertificate
intoDefaultSSLClientCertificate
inDomain
AcgId
intoAcgID
inDomainItem
HttpError3xx
intoHTTPError3xx
inLivenessTest
HttpError4xx
intoHTTPError4xx
inLivenessTest
HttpError5xx
intoHTTPError5xx
inLivenessTest
SslClientPrivateKey
intoSSLClientPrivateKey
inLivenessTest
SslClientCertificate
intoSSLClientCertificate
inLivenessTest
HttpHeaders
intoHTTPHeaders
inLivenessTest
Ipv6
intoIPv6
inProperty
BackupIp
intoBackupIP
inProperty
- Renamed
CidrMaps
interface intoCIDRMaps
- Renamed these methods:
ListAsMaps
intoListASMaps
GetAsMap
intoGetASMap
CreateAsMap
intoCreateASMap
DeleteAsMap
intoDeleteASMap
UpdateAsMap
intoUpdateASMap
ListCidrMaps
intoListCIDRMaps
GetCidrMap
intoGetCIDRMap
CreateCidrMap
intoCreateCIDRMap
DeleteCidrMap
intoDeleteCIDRMap
UpdateCidrMap
intoUpdateCIDRMap
- Deleted these methods:
NewASAssignment
NewAsMap
NewCidrAssignment
NewCidrMap
NewDatacenter
NewDatacenterBase
NewDatacenterResponse
NewDefaultDatacenter
NewDomain
NewGeoAssignment
NewHttpHeader
NewGeoMap
NewLivenessTest
NewLoadObject
NewProperty
NewResource
NewResourceInstance
NewResponseStatus
NewStaticRRSet
NewTrafficTarget
- Renamed these structs:
-
Added default value
application/json
forAccept
header for all requests sent to API -
Appsec
- Added
PenaltyBoxConditions
API - read and update - Added
EvalPenaltyBoxConditions
API - read and update
- Added
-
CPS
- Added
ID
,OrgID
,ProductionSlots
,StagingSlots
andAssignedSlots
to the response structures ofGetEnrollment
andListEnrollment
operations
- Added
-
GTM
- Added new fields:
SignAndServe
andSignAndServeAlgorithm
for theDomain
HTTPMethod
,HTTPRequestBody
,Pre2023SecurityPosture
andAlternateCACertificates
for theLivenessTest
inProperty
Precedence
for theTrafficTarget
inProperty
- Enhanced error details by addition of
Errors
field inError
structure - Added support for the creation of
ranked-failover
properties
- Added new fields:
- DNS
- Removed not working
DeleteZone
method
- Removed not working
- PAPI
- Updated documentation link for
GetProperties
method
- Updated documentation link for
- Edgeworkers
- Fixed case when not providing optional
note
field inActivateVersion
would cause activation to fail
- Fixed case when not providing optional
-
General
- Enhanced error handling when Error is not in standard format.
-
Added Cloudlets V3 API support
- Cloudlet Info
- Policies
- Policy Properties
- Policy Versions
- Policy Activations
- Supported cloudlet types
- API Prioritization (AP)
- Application Segmentation (AS)
- Edge Redirector (ER)
- Forward Rewrite (FR)
- Phased Release (PR aka CD)
- Request Control (RC aka IG)
-
DNS
- Added
ListGroups
method
- Added
-
Edgeworkers
- Added
note
field toActivation
andActivateVersion
structs for EdgeWorkers Activation
- Added
-
GTM
- Added new fields to
DomainItem
struct
- Added new fields to
-
IVM
- Extended
OutputImage
for support ofAllowPristineOnDownsize
andPreferModernFormats
- Extended
PolicyInputImage
for support ofServeStaleDuration
- Extended
RolloutInfo
for support ofServeStaleEndTime
- Extended
- APPSEC
- Added
updateLatestNetworkStatus
query parameter in GetActivations request to resolve drift on manual changes to infrastructure
- Added
-
APPSEC
- Added
ASNControls
field toUpdateIPGeoRequest
andIPGeoFirewall
structs to support firewall blocking by ASN client lists
- Added
-
BOTMAN
- Added API support for Custom Code - read and update
-
APPSEC
- Updated
GetExportConfigurationResponse
struct to export rate policyburstWindow
andcondition
fields
- Updated
-
Cloudlets
- Added MatchesAlways field to ER cloudlet
-
IAM
- Phone number is no longer required for IAM user for
CreateUser
andUpdateUserInfo
methods
- Phone number is no longer required for IAM user for
-
ClientLists
- Updated
GetClientListResponse
andUpdateClientListResponse
to includeGroupID
- Updated
-
GTM
- Added custom error
ErrNotFound
that can be used to check if GTM api returned 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 these 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 these BotManager fields to GetExportConfigurationResponse
- BotManagement
- CustomBotCategories
- CustomDefinedBots
- CustomBotCategorySequence
- CustomClients
- ResponseActions
- AdvancedSettings
- Added AdvancedSettingsAttackPayloadLogging interface
- Added these 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 these 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 these:
- 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, together 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, together 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 these 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