Documentation ¶
Index ¶
- Variables
- type ACLGeoIPRule
- type ACLGeoIPRuleNotFoundError
- type ACLGeoIPRulesMode
- type ACLIPMode
- type ACLIPRule
- type ACLIPRuleNotFoundError
- type CDNRule
- type CDNRuleCacheControl
- type CDNRuleCacheControlDuration
- type CDNRuleNotFoundError
- type CDNRuleType
- type CreateACLGeoIPRuleRequest
- type CreateACLIPRuleRequest
- type CreateCDNRuleRequest
- type CreateDomainRequest
- type CreateHSTSRuleRequest
- type CreateRecordRequest
- type CreateSSLRequest
- type CreateWAFAdvancedRuleRequest
- type CreateWAFRequest
- type CreateWAFRuleRequest
- type DDoSXService
- type DeleteDomainRequest
- type Domain
- type DomainAlreadyVerifiedError
- type DomainCDNConfigurationNotFoundError
- type DomainExternalDNS
- type DomainHSTSConfigurationNotFoundError
- type DomainNotFoundError
- type DomainProperty
- type DomainPropertyName
- type DomainPropertyNotFoundError
- type DomainRecordNotFoundError
- type DomainStatus
- type DomainWAFNotFoundError
- type GetACLGeoIPRulesModeResponseBodyData
- type HSTSConfiguration
- type HSTSRule
- type HSTSRuleNotFoundError
- type HSTSRuleType
- type PatchACLGeoIPRuleRequest
- type PatchACLGeoIPRulesModeRequest
- type PatchACLIPRuleRequest
- type PatchCDNRuleRequest
- type PatchDomainPropertyRequest
- type PatchHSTSRuleRequest
- type PatchRecordRequest
- type PatchSSLRequest
- type PatchWAFAdvancedRuleRequest
- type PatchWAFRequest
- type PatchWAFRuleRequest
- type PatchWAFRuleSetRequest
- type PurgeCDNRequest
- type Record
- type RecordNotFoundError
- type RecordType
- type SSL
- type SSLContent
- type SSLNotFoundError
- type SSLPrivateKey
- type Service
- func (s *Service) ActivateDomainDNSRouting(domainName string) error
- func (s *Service) AddDomainCDNConfiguration(domainName string) error
- func (s *Service) AddDomainHSTSConfiguration(domainName string) error
- func (s *Service) CreateDomain(req CreateDomainRequest) error
- func (s *Service) CreateDomainACLGeoIPRule(domainName string, req CreateACLGeoIPRuleRequest) (string, error)
- func (s *Service) CreateDomainACLIPRule(domainName string, req CreateACLIPRuleRequest) (string, error)
- func (s *Service) CreateDomainCDNRule(domainName string, req CreateCDNRuleRequest) (string, error)
- func (s *Service) CreateDomainHSTSRule(domainName string, req CreateHSTSRuleRequest) (string, error)
- func (s *Service) CreateDomainRecord(domainName string, req CreateRecordRequest) (string, error)
- func (s *Service) CreateDomainWAF(domainName string, req CreateWAFRequest) error
- func (s *Service) CreateDomainWAFAdvancedRule(domainName string, req CreateWAFAdvancedRuleRequest) (string, error)
- func (s *Service) CreateDomainWAFRule(domainName string, req CreateWAFRuleRequest) (string, error)
- func (s *Service) CreateSSL(req CreateSSLRequest) (string, error)
- func (s *Service) DeactivateDomainDNSRouting(domainName string) error
- func (s *Service) DeleteDomain(domainName string, req DeleteDomainRequest) error
- func (s *Service) DeleteDomainACLGeoIPRule(domainName string, ruleID string) error
- func (s *Service) DeleteDomainACLIPRule(domainName string, ruleID string) error
- func (s *Service) DeleteDomainCDNConfiguration(domainName string) error
- func (s *Service) DeleteDomainCDNRule(domainName string, ruleID string) error
- func (s *Service) DeleteDomainHSTSConfiguration(domainName string) error
- func (s *Service) DeleteDomainHSTSRule(domainName string, ruleID string) error
- func (s *Service) DeleteDomainRecord(domainName string, recordID string) error
- func (s *Service) DeleteDomainWAF(domainName string) error
- func (s *Service) DeleteDomainWAFAdvancedRule(domainName string, ruleID string) error
- func (s *Service) DeleteDomainWAFRule(domainName string, ruleID string) error
- func (s *Service) DeleteSSL(sslID string) error
- func (s *Service) DeployDomain(domainName string) error
- func (s *Service) DownloadDomainVerificationFile(domainName string) (content string, filename string, err error)
- func (s *Service) DownloadDomainVerificationFileStream(domainName string) (contentStream io.ReadCloser, filename string, err error)
- func (s *Service) GetDomain(domainName string) (Domain, error)
- func (s *Service) GetDomainACLGeoIPRule(domainName string, ruleID string) (ACLGeoIPRule, error)
- func (s *Service) GetDomainACLGeoIPRules(domainName string, parameters connection.APIRequestParameters) ([]ACLGeoIPRule, error)
- func (s *Service) GetDomainACLGeoIPRulesMode(domainName string) (ACLGeoIPRulesMode, error)
- func (s *Service) GetDomainACLGeoIPRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[ACLGeoIPRule], error)
- func (s *Service) GetDomainACLIPRule(domainName string, ruleID string) (ACLIPRule, error)
- func (s *Service) GetDomainACLIPRules(domainName string, parameters connection.APIRequestParameters) ([]ACLIPRule, error)
- func (s *Service) GetDomainACLIPRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[ACLIPRule], error)
- func (s *Service) GetDomainCDNRule(domainName string, ruleID string) (CDNRule, error)
- func (s *Service) GetDomainCDNRules(domainName string, parameters connection.APIRequestParameters) ([]CDNRule, error)
- func (s *Service) GetDomainCDNRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[CDNRule], error)
- func (s *Service) GetDomainHSTSConfiguration(domainName string) (HSTSConfiguration, error)
- func (s *Service) GetDomainHSTSRule(domainName string, ruleID string) (HSTSRule, error)
- func (s *Service) GetDomainHSTSRules(domainName string, parameters connection.APIRequestParameters) ([]HSTSRule, error)
- func (s *Service) GetDomainHSTSRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[HSTSRule], error)
- func (s *Service) GetDomainProperties(domainName string, parameters connection.APIRequestParameters) ([]DomainProperty, error)
- func (s *Service) GetDomainPropertiesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[DomainProperty], error)
- func (s *Service) GetDomainProperty(domainName string, propertyID string) (DomainProperty, error)
- func (s *Service) GetDomainRecord(domainName string, recordID string) (Record, error)
- func (s *Service) GetDomainRecords(domainName string, parameters connection.APIRequestParameters) ([]Record, error)
- func (s *Service) GetDomainRecordsPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[Record], error)
- func (s *Service) GetDomainWAF(domainName string) (WAF, error)
- func (s *Service) GetDomainWAFAdvancedRule(domainName string, ruleID string) (WAFAdvancedRule, error)
- func (s *Service) GetDomainWAFAdvancedRules(domainName string, parameters connection.APIRequestParameters) ([]WAFAdvancedRule, error)
- func (s *Service) GetDomainWAFAdvancedRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFAdvancedRule], error)
- func (s *Service) GetDomainWAFRule(domainName string, ruleID string) (WAFRule, error)
- func (s *Service) GetDomainWAFRuleSet(domainName string, ruleSetID string) (WAFRuleSet, error)
- func (s *Service) GetDomainWAFRuleSets(domainName string, parameters connection.APIRequestParameters) ([]WAFRuleSet, error)
- func (s *Service) GetDomainWAFRuleSetsPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFRuleSet], error)
- func (s *Service) GetDomainWAFRules(domainName string, parameters connection.APIRequestParameters) ([]WAFRule, error)
- func (s *Service) GetDomainWAFRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFRule], error)
- func (s *Service) GetDomains(parameters connection.APIRequestParameters) ([]Domain, error)
- func (s *Service) GetDomainsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Domain], error)
- func (s *Service) GetRecords(parameters connection.APIRequestParameters) ([]Record, error)
- func (s *Service) GetRecordsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Record], error)
- func (s *Service) GetSSL(sslID string) (SSL, error)
- func (s *Service) GetSSLContent(sslID string) (SSLContent, error)
- func (s *Service) GetSSLPrivateKey(sslID string) (SSLPrivateKey, error)
- func (s *Service) GetSSLs(parameters connection.APIRequestParameters) ([]SSL, error)
- func (s *Service) GetSSLsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[SSL], error)
- func (s *Service) GetWAFLog(requestID string) (WAFLog, error)
- func (s *Service) GetWAFLogMatches(parameters connection.APIRequestParameters) ([]WAFLogMatch, error)
- func (s *Service) GetWAFLogMatchesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[WAFLogMatch], error)
- func (s *Service) GetWAFLogRequestMatch(requestID string, matchID string) (WAFLogMatch, error)
- func (s *Service) GetWAFLogRequestMatches(requestID string, parameters connection.APIRequestParameters) ([]WAFLogMatch, error)
- func (s *Service) GetWAFLogRequestMatchesPaginated(requestID string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFLogMatch], error)
- func (s *Service) GetWAFLogs(parameters connection.APIRequestParameters) ([]WAFLog, error)
- func (s *Service) GetWAFLogsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[WAFLog], error)
- func (s *Service) PatchDomainACLGeoIPRule(domainName string, ruleID string, req PatchACLGeoIPRuleRequest) error
- func (s *Service) PatchDomainACLGeoIPRulesMode(domainName string, req PatchACLGeoIPRulesModeRequest) error
- func (s *Service) PatchDomainACLIPRule(domainName string, ruleID string, req PatchACLIPRuleRequest) error
- func (s *Service) PatchDomainCDNRule(domainName string, ruleID string, req PatchCDNRuleRequest) error
- func (s *Service) PatchDomainHSTSRule(domainName string, ruleID string, req PatchHSTSRuleRequest) error
- func (s *Service) PatchDomainProperty(domainName string, propertyID string, req PatchDomainPropertyRequest) error
- func (s *Service) PatchDomainRecord(domainName string, recordID string, req PatchRecordRequest) error
- func (s *Service) PatchDomainWAF(domainName string, req PatchWAFRequest) error
- func (s *Service) PatchDomainWAFAdvancedRule(domainName string, ruleID string, req PatchWAFAdvancedRuleRequest) error
- func (s *Service) PatchDomainWAFRule(domainName string, ruleID string, req PatchWAFRuleRequest) error
- func (s *Service) PatchDomainWAFRuleSet(domainName string, ruleSetID string, req PatchWAFRuleSetRequest) error
- func (s *Service) PatchSSL(sslID string, req PatchSSLRequest) (string, error)
- func (s *Service) PurgeDomainCDN(domainName string, req PurgeCDNRequest) error
- func (s *Service) VerifyDomainDNS(domainName string) error
- func (s *Service) VerifyDomainFileUpload(domainName string) error
- type WAF
- type WAFAdvancedRule
- type WAFAdvancedRuleModifier
- type WAFAdvancedRuleNotFoundError
- type WAFAdvancedRuleSection
- type WAFLog
- type WAFLogMatch
- type WAFLogMatchNotFoundError
- type WAFLogNotFoundError
- type WAFMode
- type WAFParanoiaLevel
- type WAFRule
- type WAFRuleNotFoundError
- type WAFRuleSet
- type WAFRuleSetName
- type WAFRuleSetNotFoundError
Constants ¶
This section is empty.
Variables ¶
var ACLGeoIPRulesModeEnum connection.Enum[ACLGeoIPRulesMode] = []ACLGeoIPRulesMode{ ACLGeoIPRulesModeWhitelist, ACLGeoIPRulesModeBlacklist, }
var ACLIPModeEnum connection.Enum[ACLIPMode] = []ACLIPMode{ ACLIPModeAllow, ACLIPModeDeny, }
var CDNRuleCacheControlEnum connection.Enum[CDNRuleCacheControl] = []CDNRuleCacheControl{ CDNRuleCacheControlCustom, CDNRuleCacheControlOrigin, }
var CDNRuleTypeEnum connection.Enum[CDNRuleType] = []CDNRuleType{CDNRuleTypeGlobal, CDNRuleTypePerURI}
var DomainPropertyNameEnum connection.Enum[DomainPropertyName] = []DomainPropertyName{ DomainPropertyNameClientMaxBodySize, DomainPropertyNameProxyTimeout, DomainPropertyNameIPv6Enabled, DomainPropertyNameSecureOrigin, }
var HSTSRuleTypeEnum connection.Enum[HSTSRuleType] = []HSTSRuleType{HSTSRuleTypeDomain, HSTSRuleTypeRecord}
var RecordTypeEnum connection.Enum[RecordType] = []RecordType{ RecordTypeA, RecordTypeAAAA, }
var WAFAdvancedRuleModifierEnum connection.Enum[WAFAdvancedRuleModifier] = []WAFAdvancedRuleModifier{ WAFAdvancedRuleModifierBeginsWith, WAFAdvancedRuleModifierEndsWith, WAFAdvancedRuleModifierContains, WAFAdvancedRuleModifierContainsWord, }
var WAFAdvancedRuleSectionEnum connection.Enum[WAFAdvancedRuleSection] = []WAFAdvancedRuleSection{ WAFAdvancedRuleSectionArgs, WAFAdvancedRuleSectionMatchedVars, WAFAdvancedRuleSectionRemoteHost, WAFAdvancedRuleSectionRequestBody, WAFAdvancedRuleSectionRequestCookies, WAFAdvancedRuleSectionRequestHeaders, WAFAdvancedRuleSectionRequestURI, }
var WAFModeEnum connection.Enum[WAFMode] = []WAFMode{ WAFModeOn, WAFModeOff, WAFModeDetectionOnly, }
var WAFParanoiaLevelEnum connection.Enum[WAFParanoiaLevel] = []WAFParanoiaLevel{ WAFParanoiaLevelLow, WAFParanoiaLevelMedium, WAFParanoiaLevelHigh, WAFParanoiaLevelHighest, }
Functions ¶
This section is empty.
Types ¶
type ACLGeoIPRule ¶
type ACLGeoIPRule struct { ID string `json:"id"` Name string `json:"name"` Code string `json:"code"` }
ACLGeoIPRule represents a DDoSX ACL GeoIP rule
type ACLGeoIPRuleNotFoundError ¶
type ACLGeoIPRuleNotFoundError struct {
ID string
}
ACLGeoIPRuleNotFoundError indicates an ACL GeoIP rule was not found
func (*ACLGeoIPRuleNotFoundError) Error ¶
func (e *ACLGeoIPRuleNotFoundError) Error() string
type ACLGeoIPRulesMode ¶
type ACLGeoIPRulesMode string
const ( ACLGeoIPRulesModeWhitelist ACLGeoIPRulesMode = "Whitelist" ACLGeoIPRulesModeBlacklist ACLGeoIPRulesMode = "Blacklist" )
func (ACLGeoIPRulesMode) String ¶
func (s ACLGeoIPRulesMode) String() string
type ACLIPRule ¶
type ACLIPRule struct { ID string `json:"id"` IP connection.IPAddress `json:"ip"` URI string `json:"uri"` Mode ACLIPMode `json:"mode"` }
ACLIPRule represents a DDoSX ACL IP rule
type ACLIPRuleNotFoundError ¶
type ACLIPRuleNotFoundError struct {
ID string
}
ACLIPRuleNotFoundError indicates an ACL IP rule was not found
func (*ACLIPRuleNotFoundError) Error ¶
func (e *ACLIPRuleNotFoundError) Error() string
type CDNRule ¶
type CDNRule struct { ID string `json:"id"` URI string `json:"uri"` CacheControl CDNRuleCacheControl `json:"cache_control"` // CacheControlDuration specifies the cache control duration. May be nil if duration not applicable CacheControlDuration CDNRuleCacheControlDuration `json:"cache_control_duration"` MimeTypes []string `json:"mime_types"` Type CDNRuleType `json:"type"` }
CDNRule represents a DDoSX CDN rule
type CDNRuleCacheControl ¶
type CDNRuleCacheControl string
const ( CDNRuleCacheControlCustom CDNRuleCacheControl = "Custom" CDNRuleCacheControlOrigin CDNRuleCacheControl = "Origin" )
func (CDNRuleCacheControl) String ¶
func (s CDNRuleCacheControl) String() string
type CDNRuleCacheControlDuration ¶
type CDNRuleCacheControlDuration struct { Years int `json:"years"` Months int `json:"months"` Days int `json:"days"` Hours int `json:"hours"` Minutes int `json:"minutes"` }
CDNRuleCacheControlDuration represents a DDoSX CDN rule duration
func ParseCDNRuleCacheControlDuration ¶
func ParseCDNRuleCacheControlDuration(s string) (*CDNRuleCacheControlDuration, error)
ParseCDNRuleCacheControlDuration parses string s and returns a pointer to an initialised CDNRuleCacheControlDuration
func (*CDNRuleCacheControlDuration) Duration ¶
func (d *CDNRuleCacheControlDuration) Duration() time.Duration
Duration returns the cache control duration as time.Duration
func (*CDNRuleCacheControlDuration) String ¶
func (d *CDNRuleCacheControlDuration) String() string
type CDNRuleNotFoundError ¶
type CDNRuleNotFoundError struct {
ID string
}
CDNRuleNotFoundError indicates a CDN rule was not found
func (*CDNRuleNotFoundError) Error ¶
func (e *CDNRuleNotFoundError) Error() string
type CDNRuleType ¶
type CDNRuleType string
const ( CDNRuleTypeGlobal CDNRuleType = "global" CDNRuleTypePerURI CDNRuleType = "per-uri" )
func (CDNRuleType) String ¶
func (s CDNRuleType) String() string
type CreateACLGeoIPRuleRequest ¶
type CreateACLGeoIPRuleRequest struct { connection.APIRequestBodyDefaultValidator Code string `json:"code" validate:"required"` }
CreateACLGeoIPRuleRequest represents a DDoSX GeoIP ACL rule
func (*CreateACLGeoIPRuleRequest) Validate ¶
func (c *CreateACLGeoIPRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateACLIPRuleRequest ¶
type CreateACLIPRuleRequest struct { connection.APIRequestBodyDefaultValidator IP connection.IPAddress `json:"ip" validate:"required"` URI string `json:"uri"` Mode ACLIPMode `json:"mode" validate:"required"` }
CreateACLIPRuleRequest represents a DDoSX IP ACL rule
func (*CreateACLIPRuleRequest) Validate ¶
func (c *CreateACLIPRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateCDNRuleRequest ¶
type CreateCDNRuleRequest struct { connection.APIRequestBodyDefaultValidator URI string `json:"uri" validate:"required"` CacheControl CDNRuleCacheControl `json:"cache_control" validate:"required"` CacheControlDuration *CDNRuleCacheControlDuration `json:"cache_control_duration,omitempty"` MimeTypes []string `json:"mime_types" validate:"required"` Type CDNRuleType `json:"type" validate:"required"` }
CreateCDNRuleRequest represents a DDoSX CDN rule create request
func (*CreateCDNRuleRequest) Validate ¶
func (c *CreateCDNRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateDomainRequest ¶
type CreateDomainRequest struct { connection.APIRequestBodyDefaultValidator Name string `json:"name" validate:"required"` }
CreateDomainRequest represents a request to create a DDoSX domain
func (*CreateDomainRequest) Validate ¶
func (c *CreateDomainRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateHSTSRuleRequest ¶
type CreateHSTSRuleRequest struct { connection.APIRequestBodyDefaultValidator MaxAge int `json:"max_age"` Preload bool `json:"preload"` IncludeSubdomains bool `json:"include_subdomains"` Type HSTSRuleType `json:"type" validate:"required"` RecordName *string `json:"record_name,omitempty"` }
CreateHSTSRuleRequest represents a DDoSX HSTS rule create request
func (*CreateHSTSRuleRequest) Validate ¶
func (c *CreateHSTSRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateRecordRequest ¶
type CreateRecordRequest struct { connection.APIRequestBodyDefaultValidator Name string `json:"name" validate:"required"` SafeDNSRecordID int `json:"safedns_record_id,omitempty"` SSLID string `json:"ssl_id,omitempty"` Type RecordType `json:"type,omitempty"` Content string `json:"content,omitempty"` }
CreateRecordRequest represents a request to create a DDoSX record
func (*CreateRecordRequest) Validate ¶
func (c *CreateRecordRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateSSLRequest ¶
type CreateSSLRequest struct { connection.APIRequestBodyDefaultValidator FriendlyName string `json:"friendly_name" validate:"required"` UKFastSSLID int `json:"ukfast_ssl_id,omitempty"` Key string `json:"key,omitempty"` Certificate string `json:"certificate,omitempty"` CABundle string `json:"ca_bundle,omitempty"` }
CreateSSLRequest represents a DDoSX SSL create request
func (*CreateSSLRequest) Validate ¶
func (c *CreateSSLRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateWAFAdvancedRuleRequest ¶
type CreateWAFAdvancedRuleRequest struct { connection.APIRequestBodyDefaultValidator Section WAFAdvancedRuleSection `json:"section" validate:"required"` Modifier WAFAdvancedRuleModifier `json:"modifier" validate:"required"` Phrase string `json:"phrase" validate:"required"` IP connection.IPAddress `json:"ip" validate:"required"` }
CreateWAFAdvancedRuleRequest represents a DDoSX WAF advanced rule create request
func (*CreateWAFAdvancedRuleRequest) Validate ¶
func (c *CreateWAFAdvancedRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateWAFRequest ¶
type CreateWAFRequest struct { connection.APIRequestBodyDefaultValidator Mode WAFMode `json:"mode" validate:"required"` ParanoiaLevel WAFParanoiaLevel `json:"paranoia_level" validate:"required"` }
CreateWAFRequest represents a DDoSX WAF create request
func (*CreateWAFRequest) Validate ¶
func (c *CreateWAFRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type CreateWAFRuleRequest ¶
type CreateWAFRuleRequest struct { connection.APIRequestBodyDefaultValidator URI string `json:"uri" validate:"required"` IP connection.IPAddress `json:"ip" validate:"required"` }
CreateWAFRuleRequest represents a DDoSX WAF rule create request
func (*CreateWAFRuleRequest) Validate ¶
func (c *CreateWAFRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type DDoSXService ¶
type DDoSXService interface { GetRecords(parameters connection.APIRequestParameters) ([]Record, error) GetRecordsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Record], error) GetDomains(parameters connection.APIRequestParameters) ([]Domain, error) GetDomainsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Domain], error) GetDomain(domainName string) (Domain, error) CreateDomain(req CreateDomainRequest) error DeleteDomain(domainName string, req DeleteDomainRequest) error DeployDomain(domainName string) error GetDomainRecords(domainName string, parameters connection.APIRequestParameters) ([]Record, error) GetDomainRecordsPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[Record], error) GetDomainRecord(domainName string, recordID string) (Record, error) CreateDomainRecord(domainName string, req CreateRecordRequest) (string, error) PatchDomainRecord(domainName string, recordID string, req PatchRecordRequest) error DeleteDomainRecord(domainName string, recordID string) error GetDomainProperties(domainName string, parameters connection.APIRequestParameters) ([]DomainProperty, error) GetDomainPropertiesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[DomainProperty], error) GetDomainProperty(domainName string, propertyID string) (DomainProperty, error) PatchDomainProperty(domainName string, propertyID string, req PatchDomainPropertyRequest) error GetDomainWAF(domainName string) (WAF, error) CreateDomainWAF(domainName string, req CreateWAFRequest) error PatchDomainWAF(domainName string, req PatchWAFRequest) error DeleteDomainWAF(domainName string) error GetDomainWAFRuleSets(domainName string, parameters connection.APIRequestParameters) ([]WAFRuleSet, error) GetDomainWAFRuleSetsPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFRuleSet], error) GetDomainWAFRuleSet(domainName string, ruleSetID string) (WAFRuleSet, error) PatchDomainWAFRuleSet(domainName string, ruleSetID string, req PatchWAFRuleSetRequest) error GetDomainWAFRules(domainName string, parameters connection.APIRequestParameters) ([]WAFRule, error) GetDomainWAFRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFRule], error) GetDomainWAFRule(domainName string, ruleID string) (WAFRule, error) CreateDomainWAFRule(domainName string, req CreateWAFRuleRequest) (string, error) PatchDomainWAFRule(domainName string, ruleSetID string, req PatchWAFRuleRequest) error DeleteDomainWAFRule(domainName string, ruleID string) error GetDomainWAFAdvancedRules(domainName string, parameters connection.APIRequestParameters) ([]WAFAdvancedRule, error) GetDomainWAFAdvancedRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFAdvancedRule], error) GetDomainWAFAdvancedRule(domainName string, ruleID string) (WAFAdvancedRule, error) CreateDomainWAFAdvancedRule(domainName string, req CreateWAFAdvancedRuleRequest) (string, error) PatchDomainWAFAdvancedRule(domainName string, ruleID string, req PatchWAFAdvancedRuleRequest) error DeleteDomainWAFAdvancedRule(domainName string, ruleID string) error GetSSLs(parameters connection.APIRequestParameters) ([]SSL, error) GetSSLsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[SSL], error) GetSSL(sslID string) (SSL, error) CreateSSL(req CreateSSLRequest) (string, error) PatchSSL(sslID string, req PatchSSLRequest) (string, error) DeleteSSL(sslID string) error GetSSLContent(sslID string) (SSLContent, error) GetSSLPrivateKey(sslID string) (SSLPrivateKey, error) GetDomainACLGeoIPRules(domainName string, parameters connection.APIRequestParameters) ([]ACLGeoIPRule, error) GetDomainACLGeoIPRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[ACLGeoIPRule], error) GetDomainACLGeoIPRule(domainName string, ruleID string) (ACLGeoIPRule, error) CreateDomainACLGeoIPRule(domainName string, req CreateACLGeoIPRuleRequest) (string, error) PatchDomainACLGeoIPRule(domainName string, ruleID string, req PatchACLGeoIPRuleRequest) error DeleteDomainACLGeoIPRule(domainName string, ruleID string) error GetDomainACLGeoIPRulesMode(domainName string) (ACLGeoIPRulesMode, error) PatchDomainACLGeoIPRulesMode(domainName string, req PatchACLGeoIPRulesModeRequest) error GetDomainACLIPRules(domainName string, parameters connection.APIRequestParameters) ([]ACLIPRule, error) GetDomainACLIPRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[ACLIPRule], error) GetDomainACLIPRule(domainName string, ruleID string) (ACLIPRule, error) CreateDomainACLIPRule(domainName string, req CreateACLIPRuleRequest) (string, error) PatchDomainACLIPRule(domainName string, ruleID string, req PatchACLIPRuleRequest) error DeleteDomainACLIPRule(domainName string, ruleID string) error DownloadDomainVerificationFile(domainName string) (string, string, error) DownloadDomainVerificationFileStream(domainName string) (io.ReadCloser, string, error) VerifyDomainDNS(domainName string) error VerifyDomainFileUpload(domainName string) error AddDomainCDNConfiguration(domainName string) error DeleteDomainCDNConfiguration(domainName string) error CreateDomainCDNRule(domainName string, req CreateCDNRuleRequest) (string, error) GetDomainCDNRules(domainName string, parameters connection.APIRequestParameters) ([]CDNRule, error) GetDomainCDNRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[CDNRule], error) GetDomainCDNRule(domainName string, ruleID string) (CDNRule, error) PatchDomainCDNRule(domainName string, ruleID string, req PatchCDNRuleRequest) error DeleteDomainCDNRule(domainName string, ruleID string) error PurgeDomainCDN(domainName string, req PurgeCDNRequest) error GetDomainHSTSConfiguration(domainName string) (HSTSConfiguration, error) AddDomainHSTSConfiguration(domainName string) error DeleteDomainHSTSConfiguration(domainName string) error CreateDomainHSTSRule(domainName string, req CreateHSTSRuleRequest) (string, error) GetDomainHSTSRules(domainName string, parameters connection.APIRequestParameters) ([]HSTSRule, error) GetDomainHSTSRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[HSTSRule], error) GetDomainHSTSRule(domainName string, ruleID string) (HSTSRule, error) PatchDomainHSTSRule(domainName string, ruleID string, req PatchHSTSRuleRequest) error DeleteDomainHSTSRule(domainName string, ruleID string) error GetWAFLogs(parameters connection.APIRequestParameters) ([]WAFLog, error) GetWAFLogsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[WAFLog], error) GetWAFLog(requestID string) (WAFLog, error) GetWAFLogMatches(parameters connection.APIRequestParameters) ([]WAFLogMatch, error) GetWAFLogMatchesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[WAFLogMatch], error) GetWAFLogRequestMatches(requestID string, parameters connection.APIRequestParameters) ([]WAFLogMatch, error) GetWAFLogRequestMatchesPaginated(requestID string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFLogMatch], error) GetWAFLogRequestMatch(requestID string, matchID string) (WAFLogMatch, error) ActivateDomainDNSRouting(domainName string) error DeactivateDomainDNSRouting(domainName string) error }
DDoSXService is an interface for managing the DDoSX service
type DeleteDomainRequest ¶
type DeleteDomainRequest struct { Summary string `json:"summary"` Description string `json:"description"` }
DeleteDomainRequest represents a DDoSX domain removal request
type Domain ¶
type Domain struct { SafeDNSZoneID *int `json:"safedns_zone_id"` Name string `json:"name"` Status DomainStatus `json:"status"` DNSActive bool `json:"dns_active"` CDNActive bool `json:"cdn_active"` WAFActive bool `json:"waf_active"` ExternalDNS *DomainExternalDNS `json:"external_dns"` }
Domain represents a DDoSX domain
type DomainAlreadyVerifiedError ¶
type DomainAlreadyVerifiedError struct {
Name string
}
DomainAlreadyVerifiedError indicates a domain is already verified
func (*DomainAlreadyVerifiedError) Error ¶
func (e *DomainAlreadyVerifiedError) Error() string
type DomainCDNConfigurationNotFoundError ¶
type DomainCDNConfigurationNotFoundError struct {
DomainName string
}
DomainCDNConfigurationNotFoundError indicates CDN configuration was not found for domain
func (*DomainCDNConfigurationNotFoundError) Error ¶
func (e *DomainCDNConfigurationNotFoundError) Error() string
type DomainExternalDNS ¶
type DomainExternalDNS struct { Verified bool `json:"verified"` VerificationString string `json:"verification_string"` Target string `json:"target"` }
DomainExternalDNS represents a DDoSX domain external DNS configuration
type DomainHSTSConfigurationNotFoundError ¶
type DomainHSTSConfigurationNotFoundError struct {
DomainName string
}
DomainHSTSConfigurationNotFoundError indicates HSTS configuration was not found for domain
func (*DomainHSTSConfigurationNotFoundError) Error ¶
func (e *DomainHSTSConfigurationNotFoundError) Error() string
type DomainNotFoundError ¶
type DomainNotFoundError struct {
Name string
}
DomainNotFoundError indicates a domain was not found
func (*DomainNotFoundError) Error ¶
func (e *DomainNotFoundError) Error() string
type DomainProperty ¶
type DomainProperty struct { ID string `json:"id"` Name DomainPropertyName `json:"name"` Value interface{} `json:"value"` }
DomainProperty represents a DDoSX domain property
type DomainPropertyName ¶
type DomainPropertyName string
const ( DomainPropertyNameClientMaxBodySize DomainPropertyName = "client_max_body_size" DomainPropertyNameProxyTimeout DomainPropertyName = "proxy_timeout" DomainPropertyNameIPv6Enabled DomainPropertyName = "ipv6_enabled" DomainPropertyNameSecureOrigin DomainPropertyName = "secure_origin" )
func (DomainPropertyName) String ¶
func (s DomainPropertyName) String() string
type DomainPropertyNotFoundError ¶
type DomainPropertyNotFoundError struct {
ID string
}
DomainPropertyNotFoundError indicates a domain property was not found
func (*DomainPropertyNotFoundError) Error ¶
func (e *DomainPropertyNotFoundError) Error() string
type DomainRecordNotFoundError ¶
DomainRecordNotFoundError indicates a Domain Record was not found
func (*DomainRecordNotFoundError) Error ¶
func (e *DomainRecordNotFoundError) Error() string
type DomainStatus ¶
type DomainStatus string
const ( DomainStatusConfigured DomainStatus = "Configured" DomainStatusNotConfigured DomainStatus = "Not Configured" DomainStatusPending DomainStatus = "Pending" DomainStatusFailed DomainStatus = "Failed" DomainStatusCancelling DomainStatus = "Cancelling" DomainStatusCancelled DomainStatus = "Cancelled" )
type DomainWAFNotFoundError ¶
type DomainWAFNotFoundError struct {
DomainName string
}
DomainWAFNotFoundError indicates a WAF configuration was not found for domain
func (*DomainWAFNotFoundError) Error ¶
func (e *DomainWAFNotFoundError) Error() string
type GetACLGeoIPRulesModeResponseBodyData ¶
type GetACLGeoIPRulesModeResponseBodyData struct {
Mode ACLGeoIPRulesMode `json:"mode"`
}
GetACLGeoIPRulesModeResponseBodyData represents an API response body data
type HSTSConfiguration ¶
type HSTSConfiguration struct {
Enabled bool `json:"enabled"`
}
HSTSConfiguration represents HSTS configuration for a DDoSX domain
type HSTSRule ¶
type HSTSRule struct { ID string `json:"id"` MaxAge int `json:"max_age"` Preload bool `json:"preload"` IncludeSubdomains bool `json:"include_subdomains"` Type HSTSRuleType `json:"type"` RecordName *string `json:"record_name"` }
HSTSRule represents HSTS rule for a DDoSX domain
type HSTSRuleNotFoundError ¶
type HSTSRuleNotFoundError struct {
ID string
}
HSTSRuleNotFoundError indicates a HSTS rule was not found
func (*HSTSRuleNotFoundError) Error ¶
func (e *HSTSRuleNotFoundError) Error() string
type HSTSRuleType ¶
type HSTSRuleType string
const ( HSTSRuleTypeDomain HSTSRuleType = "domain" HSTSRuleTypeRecord HSTSRuleType = "record" )
func (HSTSRuleType) String ¶
func (s HSTSRuleType) String() string
type PatchACLGeoIPRuleRequest ¶
type PatchACLGeoIPRuleRequest struct { connection.APIRequestBodyDefaultValidator Code string `json:"code,omitempty"` }
PatchACLGeoIPRuleRequest represents a DDoSX GeoIP ACL rule patch request
func (*PatchACLGeoIPRuleRequest) Validate ¶
func (c *PatchACLGeoIPRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchACLGeoIPRulesModeRequest ¶
type PatchACLGeoIPRulesModeRequest struct {
Mode ACLGeoIPRulesMode `json:"mode,omitempty"`
}
PatchACLGeoIPRulesModeRequest represents a DDoSX IP ACL rule mode patch request
func (*PatchACLGeoIPRulesModeRequest) Validate ¶
func (c *PatchACLGeoIPRulesModeRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchACLIPRuleRequest ¶
type PatchACLIPRuleRequest struct { IP connection.IPAddress `json:"ip,omitempty"` URI *string `json:"uri,omitempty"` Mode ACLIPMode `json:"mode,omitempty"` }
PatchACLIPRuleRequest represents a DDoSX IP ACL rule patch request
func (*PatchACLIPRuleRequest) Validate ¶
func (c *PatchACLIPRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchCDNRuleRequest ¶
type PatchCDNRuleRequest struct { URI string `json:"uri,omitempty"` CacheControl CDNRuleCacheControl `json:"cache_control,omitempty"` CacheControlDuration *CDNRuleCacheControlDuration `json:"cache_control_duration,omitempty"` MimeTypes []string `json:"mime_types,omitempty"` Type CDNRuleType `json:"type,omitempty"` }
PatchCDNRuleRequest represents a DDoSX CDN rule patch request
func (*PatchCDNRuleRequest) Validate ¶
func (c *PatchCDNRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchDomainPropertyRequest ¶
type PatchDomainPropertyRequest struct {
Value interface{} `json:"value,omitempty"`
}
PatchDomainPropertyRequest represents a DDoSX Domain Property patch request
func (*PatchDomainPropertyRequest) Validate ¶
func (c *PatchDomainPropertyRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchHSTSRuleRequest ¶
type PatchHSTSRuleRequest struct { MaxAge *int `json:"max_age,omitempty"` Preload *bool `json:"preload,omitempty"` IncludeSubdomains *bool `json:"include_subdomains,omitempty"` }
PatchHSTSRuleRequest represents a DDoSX HSTS rule patch request
func (*PatchHSTSRuleRequest) Validate ¶
func (c *PatchHSTSRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchRecordRequest ¶
type PatchRecordRequest struct { SafeDNSRecordID int `json:"safedns_record_id,omitempty"` SSLID string `json:"ssl_id,omitempty"` Name string `json:"name,omitempty"` Type RecordType `json:"type,omitempty"` Content string `json:"content,omitempty"` }
PatchRecordRequest represents a DDoSX Record patch request
func (*PatchRecordRequest) Validate ¶
func (c *PatchRecordRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchSSLRequest ¶
type PatchSSLRequest struct { FriendlyName string `json:"friendly_name,omitempty"` UKFastSSLID int `json:"ukfast_ssl_id,omitempty"` Key string `json:"key,omitempty"` Certificate string `json:"certificate,omitempty"` CABundle string `json:"ca_bundle,omitempty"` }
PatchSSLRequest represents a DDoSX SSL create request
func (*PatchSSLRequest) Validate ¶
func (c *PatchSSLRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchWAFAdvancedRuleRequest ¶
type PatchWAFAdvancedRuleRequest struct { Section WAFAdvancedRuleSection `json:"section,omitempty"` Modifier WAFAdvancedRuleModifier `json:"modifier,omitempty"` Phrase string `json:"phrase,omitempty"` IP connection.IPAddress `json:"ip,omitempty"` }
PatchWAFAdvancedRuleRequest represents a DDoSX WAF advanced rule patch request
func (*PatchWAFAdvancedRuleRequest) Validate ¶
func (c *PatchWAFAdvancedRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchWAFRequest ¶
type PatchWAFRequest struct { Mode WAFMode `json:"mode,omitempty"` ParanoiaLevel WAFParanoiaLevel `json:"paranoia_level,omitempty"` }
PatchWAFRequest represents a DDoSX WAF patch request
func (*PatchWAFRequest) Validate ¶
func (c *PatchWAFRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchWAFRuleRequest ¶
type PatchWAFRuleRequest struct { URI string `json:"uri,omitempty"` IP connection.IPAddress `json:"ip,omitempty"` }
PatchWAFRuleRequest represents a DDoSX WAF rule patch request
func (*PatchWAFRuleRequest) Validate ¶
func (c *PatchWAFRuleRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PatchWAFRuleSetRequest ¶
type PatchWAFRuleSetRequest struct {
Active *bool `json:"active,omitempty"`
}
PatchWAFRuleSetRequest represents a DDoSX WAF rule set patch request
func (*PatchWAFRuleSetRequest) Validate ¶
func (c *PatchWAFRuleSetRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type PurgeCDNRequest ¶
type PurgeCDNRequest struct { connection.APIRequestBodyDefaultValidator RecordName string `json:"record_name" validate:"required"` URI string `json:"uri" validate:"required"` }
PurgeCDNRequest represents a DDoSX CDN purge request
func (*PurgeCDNRequest) Validate ¶
func (c *PurgeCDNRequest) Validate() *connection.ValidationError
Validate returns an error if struct properties are missing/invalid
type Record ¶
type Record struct { ID string `json:"id"` DomainName string `json:"domain_name"` SafeDNSRecordID *int `json:"safedns_record_id"` SSLID *string `json:"ssl_id"` Name string `json:"name"` Type RecordType `json:"type"` Content string `json:"content"` }
Record represents a DDoSX record
type RecordNotFoundError ¶
type RecordNotFoundError struct {
ID string
}
RecordNotFoundError indicates a Record was not found
func (*RecordNotFoundError) Error ¶
func (e *RecordNotFoundError) Error() string
type RecordType ¶
type RecordType string
const ( RecordTypeA RecordType = "A" RecordTypeAAAA RecordType = "AAAA" )
func (RecordType) String ¶
func (s RecordType) String() string
type SSL ¶
type SSL struct { ID string `json:"id"` UKFastSSLID *int `json:"ukfast_ssl_id"` Domains []string `json:"domains"` FriendlyName string `json:"friendly_name"` }
SSL represents a DDoSX SSL
type SSLContent ¶
type SSLContent struct { Certificate string `json:"certificate"` CABundle string `json:"ca_bundle"` }
SSLContent represents a DDoSX SSL content
type SSLNotFoundError ¶
type SSLNotFoundError struct {
ID string
}
SSLNotFoundError indicates an SSL was not found
func (*SSLNotFoundError) Error ¶
func (e *SSLNotFoundError) Error() string
type SSLPrivateKey ¶
type SSLPrivateKey struct {
Key string `json:"key"`
}
SSLPrivateKey represents a DDoSX SSL private key
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service implements DDoSXService for managing DDoSX via the UKFast API
func NewService ¶
func NewService(connection connection.Connection) *Service
NewService returns a new instance of Service
func (*Service) ActivateDomainDNSRouting ¶
ActivateDomainDNSRouting activates DNS routing for a domain
func (*Service) AddDomainCDNConfiguration ¶
AddDomainCDNConfiguration adds CDN configuration to a domain
func (*Service) AddDomainHSTSConfiguration ¶
AddDomainHSTSConfiguration adds HSTS headers to a domain
func (*Service) CreateDomain ¶
func (s *Service) CreateDomain(req CreateDomainRequest) error
CreateDomain creates a new domain
func (*Service) CreateDomainACLGeoIPRule ¶
func (s *Service) CreateDomainACLGeoIPRule(domainName string, req CreateACLGeoIPRuleRequest) (string, error)
CreateDomainACLGeoIPRule creates an ACL GeoIP rule
func (*Service) CreateDomainACLIPRule ¶
func (s *Service) CreateDomainACLIPRule(domainName string, req CreateACLIPRuleRequest) (string, error)
CreateDomainACLIPRule creates an ACL IP rule
func (*Service) CreateDomainCDNRule ¶
func (s *Service) CreateDomainCDNRule(domainName string, req CreateCDNRuleRequest) (string, error)
CreateDomainCDNRule creates a CDN rule
func (*Service) CreateDomainHSTSRule ¶
func (s *Service) CreateDomainHSTSRule(domainName string, req CreateHSTSRuleRequest) (string, error)
CreateDomainHSTSRule creates a HSTS rule
func (*Service) CreateDomainRecord ¶
func (s *Service) CreateDomainRecord(domainName string, req CreateRecordRequest) (string, error)
CreateDomainRecord creates a new record for a domain
func (*Service) CreateDomainWAF ¶
func (s *Service) CreateDomainWAF(domainName string, req CreateWAFRequest) error
CreateDomainWAF creates the WAF configuration for a domain
func (*Service) CreateDomainWAFAdvancedRule ¶
func (s *Service) CreateDomainWAFAdvancedRule(domainName string, req CreateWAFAdvancedRuleRequest) (string, error)
CreateDomainWAFAdvancedRule creates a WAF rule
func (*Service) CreateDomainWAFRule ¶
func (s *Service) CreateDomainWAFRule(domainName string, req CreateWAFRuleRequest) (string, error)
CreateDomainWAFRule creates a WAF rule
func (*Service) CreateSSL ¶
func (s *Service) CreateSSL(req CreateSSLRequest) (string, error)
CreateSSL retrieves creates an SSL
func (*Service) DeactivateDomainDNSRouting ¶
DeactivateDomainDNSRouting deactivates DNS routing for a domain
func (*Service) DeleteDomain ¶
func (s *Service) DeleteDomain(domainName string, req DeleteDomainRequest) error
DeleteDomain removes a domain
func (*Service) DeleteDomainACLGeoIPRule ¶
DeleteDomainACLGeoIPRule deletes an ACL GeoIP rule
func (*Service) DeleteDomainACLIPRule ¶
DeleteDomainACLIPRule deletes an ACL IP rule
func (*Service) DeleteDomainCDNConfiguration ¶
DeleteDomainCDNConfiguration removes CDN configuration from a domain
func (*Service) DeleteDomainCDNRule ¶
DeleteDomainCDNRule removes a CDN rule
func (*Service) DeleteDomainHSTSConfiguration ¶
DeleteDomainHSTSConfiguration removes HSTS headers to a domain
func (*Service) DeleteDomainHSTSRule ¶
DeleteDomainHSTSRule removes a HSTS rule
func (*Service) DeleteDomainRecord ¶
DeleteDomainRecord deletes a single domain record by ID
func (*Service) DeleteDomainWAF ¶
DeleteDomainWAF deletes the WAF configuration for a domain
func (*Service) DeleteDomainWAFAdvancedRule ¶
DeleteDomainWAFAdvancedRule deletees a waf advanced rule for a domain
func (*Service) DeleteDomainWAFRule ¶
DeleteDomainWAFRule deletes a waf rule for a domain
func (*Service) DeployDomain ¶
DeployDomain deploys/commits changes to a domain
func (*Service) DownloadDomainVerificationFile ¶
func (s *Service) DownloadDomainVerificationFile(domainName string) (content string, filename string, err error)
DownloadDomainVerificationFile downloads the verification file for a domain, returning the file contents, file name and an error
func (*Service) DownloadDomainVerificationFileStream ¶
func (s *Service) DownloadDomainVerificationFileStream(domainName string) (contentStream io.ReadCloser, filename string, err error)
DownloadDomainVerificationFileStream downloads the verification file for a domain, returning a stream of the file contents, file name and an error
func (*Service) GetDomainACLGeoIPRule ¶
func (s *Service) GetDomainACLGeoIPRule(domainName string, ruleID string) (ACLGeoIPRule, error)
GetDomainACLGeoIPRule retrieves a single ACL GeoIP rule for a domain
func (*Service) GetDomainACLGeoIPRules ¶
func (s *Service) GetDomainACLGeoIPRules(domainName string, parameters connection.APIRequestParameters) ([]ACLGeoIPRule, error)
GetDomainACLGeoIPRules retrieves a list of rules
func (*Service) GetDomainACLGeoIPRulesMode ¶
func (s *Service) GetDomainACLGeoIPRulesMode(domainName string) (ACLGeoIPRulesMode, error)
GetDomainACLGeoIPRulesMode retrieves the mode for ACL GeoIP rules
func (*Service) GetDomainACLGeoIPRulesPaginated ¶
func (s *Service) GetDomainACLGeoIPRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[ACLGeoIPRule], error)
GetDomainACLGeoIPRulesPaginated retrieves a paginated list of domains
func (*Service) GetDomainACLIPRule ¶
GetDomainACLIPRule retrieves a single ACL IP rule for a domain
func (*Service) GetDomainACLIPRules ¶
func (s *Service) GetDomainACLIPRules(domainName string, parameters connection.APIRequestParameters) ([]ACLIPRule, error)
GetDomainACLIPRules retrieves a list of rules
func (*Service) GetDomainACLIPRulesPaginated ¶
func (s *Service) GetDomainACLIPRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[ACLIPRule], error)
GetDomainACLIPRulesPaginated retrieves a paginated list of domains
func (*Service) GetDomainCDNRule ¶
GetDomainCDNRule retrieves a CDN rule
func (*Service) GetDomainCDNRules ¶
func (s *Service) GetDomainCDNRules(domainName string, parameters connection.APIRequestParameters) ([]CDNRule, error)
GetDomainCDNRules retrieves a list of rules
func (*Service) GetDomainCDNRulesPaginated ¶
func (s *Service) GetDomainCDNRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[CDNRule], error)
GetDomainCDNRulesPaginated retrieves a paginated list of domains
func (*Service) GetDomainHSTSConfiguration ¶
func (s *Service) GetDomainHSTSConfiguration(domainName string) (HSTSConfiguration, error)
GetDomainHSTSConfiguration retrieves the HSTS configuration for a domain
func (*Service) GetDomainHSTSRule ¶
GetDomainHSTSRule retrieves a HSTS rule
func (*Service) GetDomainHSTSRules ¶
func (s *Service) GetDomainHSTSRules(domainName string, parameters connection.APIRequestParameters) ([]HSTSRule, error)
GetDomainHSTSRules retrieves a list of rules
func (*Service) GetDomainHSTSRulesPaginated ¶
func (s *Service) GetDomainHSTSRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[HSTSRule], error)
GetDomainHSTSRulesPaginated retrieves a paginated list of domains
func (*Service) GetDomainProperties ¶
func (s *Service) GetDomainProperties(domainName string, parameters connection.APIRequestParameters) ([]DomainProperty, error)
GetDomainProperties retrieves a list of domain properties
func (*Service) GetDomainPropertiesPaginated ¶
func (s *Service) GetDomainPropertiesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[DomainProperty], error)
GetDomainPropertiesPaginated retrieves a paginated list of domain properties
func (*Service) GetDomainProperty ¶
func (s *Service) GetDomainProperty(domainName string, propertyID string) (DomainProperty, error)
GetDomainProperty retrieves a single domain property by ID
func (*Service) GetDomainRecord ¶
GetDomainRecord retrieves a single domain record by ID
func (*Service) GetDomainRecords ¶
func (s *Service) GetDomainRecords(domainName string, parameters connection.APIRequestParameters) ([]Record, error)
GetDomainRecords retrieves a list of records
func (*Service) GetDomainRecordsPaginated ¶
func (s *Service) GetDomainRecordsPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[Record], error)
GetDomainRecordsPaginated retrieves a paginated list of domains
func (*Service) GetDomainWAF ¶
GetDomainWAF retrieves the WAF configuration for a domain
func (*Service) GetDomainWAFAdvancedRule ¶
func (s *Service) GetDomainWAFAdvancedRule(domainName string, ruleID string) (WAFAdvancedRule, error)
GetDomainWAFAdvancedRule retrieves a waf rule for a domain
func (*Service) GetDomainWAFAdvancedRules ¶
func (s *Service) GetDomainWAFAdvancedRules(domainName string, parameters connection.APIRequestParameters) ([]WAFAdvancedRule, error)
GetDomainWAFAdvancedRules retrieves a list of rules
func (*Service) GetDomainWAFAdvancedRulesPaginated ¶
func (s *Service) GetDomainWAFAdvancedRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFAdvancedRule], error)
GetDomainWAFAdvancedRulesPaginated retrieves a paginated list of domains
func (*Service) GetDomainWAFRule ¶
GetDomainWAFRule retrieves a waf rule for a domain
func (*Service) GetDomainWAFRuleSet ¶
func (s *Service) GetDomainWAFRuleSet(domainName string, ruleSetID string) (WAFRuleSet, error)
GetDomainWAFRuleSet retrieves a waf advanced rule set for a domain
func (*Service) GetDomainWAFRuleSets ¶
func (s *Service) GetDomainWAFRuleSets(domainName string, parameters connection.APIRequestParameters) ([]WAFRuleSet, error)
GetDomainWAFRuleSets retrieves a list of rulesets
func (*Service) GetDomainWAFRuleSetsPaginated ¶
func (s *Service) GetDomainWAFRuleSetsPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFRuleSet], error)
GetDomainWAFRuleSetsPaginated retrieves a paginated list of domains
func (*Service) GetDomainWAFRules ¶
func (s *Service) GetDomainWAFRules(domainName string, parameters connection.APIRequestParameters) ([]WAFRule, error)
GetDomainWAFRules retrieves a list of rules
func (*Service) GetDomainWAFRulesPaginated ¶
func (s *Service) GetDomainWAFRulesPaginated(domainName string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFRule], error)
GetDomainWAFRulesPaginated retrieves a paginated list of domains
func (*Service) GetDomains ¶
func (s *Service) GetDomains(parameters connection.APIRequestParameters) ([]Domain, error)
GetDomains retrieves a list of domains
func (*Service) GetDomainsPaginated ¶
func (s *Service) GetDomainsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Domain], error)
GetDomainsPaginated retrieves a paginated list of domains
func (*Service) GetRecords ¶
func (s *Service) GetRecords(parameters connection.APIRequestParameters) ([]Record, error)
GetRecords retrieves a list of records
func (*Service) GetRecordsPaginated ¶
func (s *Service) GetRecordsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[Record], error)
GetRecordsPaginated retrieves a paginated list of domains
func (*Service) GetSSLContent ¶
func (s *Service) GetSSLContent(sslID string) (SSLContent, error)
GetSSLContent retrieves a single ssl by id
func (*Service) GetSSLPrivateKey ¶
func (s *Service) GetSSLPrivateKey(sslID string) (SSLPrivateKey, error)
GetSSLPrivateKey retrieves a single ssl by id
func (*Service) GetSSLs ¶
func (s *Service) GetSSLs(parameters connection.APIRequestParameters) ([]SSL, error)
GetSSLs retrieves a list of ssls
func (*Service) GetSSLsPaginated ¶
func (s *Service) GetSSLsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[SSL], error)
GetSSLsPaginated retrieves a paginated list of ssls
func (*Service) GetWAFLogMatches ¶
func (s *Service) GetWAFLogMatches(parameters connection.APIRequestParameters) ([]WAFLogMatch, error)
GetWAFLogMatches retrieves a list of log matches
func (*Service) GetWAFLogMatchesPaginated ¶
func (s *Service) GetWAFLogMatchesPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[WAFLogMatch], error)
GetWAFLogMatchesPaginated retrieves a paginated list of log matches
func (*Service) GetWAFLogRequestMatch ¶
func (s *Service) GetWAFLogRequestMatch(requestID string, matchID string) (WAFLogMatch, error)
GetWAFLogRequestMatch retrieves a single waf log request match
func (*Service) GetWAFLogRequestMatches ¶
func (s *Service) GetWAFLogRequestMatches(requestID string, parameters connection.APIRequestParameters) ([]WAFLogMatch, error)
GetWAFLogRequestMatches retrieves a list of log matches for request
func (*Service) GetWAFLogRequestMatchesPaginated ¶
func (s *Service) GetWAFLogRequestMatchesPaginated(requestID string, parameters connection.APIRequestParameters) (*connection.Paginated[WAFLogMatch], error)
GetWAFLogRequestMatchesPaginated retrieves a paginated list of matches for request
func (*Service) GetWAFLogs ¶
func (s *Service) GetWAFLogs(parameters connection.APIRequestParameters) ([]WAFLog, error)
GetWAFLogs retrieves a list of logs
func (*Service) GetWAFLogsPaginated ¶
func (s *Service) GetWAFLogsPaginated(parameters connection.APIRequestParameters) (*connection.Paginated[WAFLog], error)
GetWAFLogsPaginated retrieves a paginated list of logs
func (*Service) PatchDomainACLGeoIPRule ¶
func (s *Service) PatchDomainACLGeoIPRule(domainName string, ruleID string, req PatchACLGeoIPRuleRequest) error
PatchDomainACLGeoIPRule patches an ACL GeoIP rule
func (*Service) PatchDomainACLGeoIPRulesMode ¶
func (s *Service) PatchDomainACLGeoIPRulesMode(domainName string, req PatchACLGeoIPRulesModeRequest) error
PatchDomainACLGeoIPRulesMode patches the mode for ACL GeoIP rules
func (*Service) PatchDomainACLIPRule ¶
func (s *Service) PatchDomainACLIPRule(domainName string, ruleID string, req PatchACLIPRuleRequest) error
PatchDomainACLIPRule patches an ACL IP rule
func (*Service) PatchDomainCDNRule ¶
func (s *Service) PatchDomainCDNRule(domainName string, ruleID string, req PatchCDNRuleRequest) error
PatchDomainCDNRule patches a CDN rule
func (*Service) PatchDomainHSTSRule ¶
func (s *Service) PatchDomainHSTSRule(domainName string, ruleID string, req PatchHSTSRuleRequest) error
PatchDomainHSTSRule patches a HSTS rule
func (*Service) PatchDomainProperty ¶
func (s *Service) PatchDomainProperty(domainName string, propertyID string, req PatchDomainPropertyRequest) error
PatchDomainProperty patches a single domain property by ID
func (*Service) PatchDomainRecord ¶
func (s *Service) PatchDomainRecord(domainName string, recordID string, req PatchRecordRequest) error
PatchDomainRecord patches a single domain record by ID
func (*Service) PatchDomainWAF ¶
func (s *Service) PatchDomainWAF(domainName string, req PatchWAFRequest) error
PatchDomainWAF patches the WAF configuration for a domain
func (*Service) PatchDomainWAFAdvancedRule ¶
func (s *Service) PatchDomainWAFAdvancedRule(domainName string, ruleID string, req PatchWAFAdvancedRuleRequest) error
PatchDomainWAFAdvancedRule patches a waf advanced rule for a domain
func (*Service) PatchDomainWAFRule ¶
func (s *Service) PatchDomainWAFRule(domainName string, ruleID string, req PatchWAFRuleRequest) error
PatchDomainWAFRule patches a waf rule for a domain
func (*Service) PatchDomainWAFRuleSet ¶
func (s *Service) PatchDomainWAFRuleSet(domainName string, ruleSetID string, req PatchWAFRuleSetRequest) error
PatchDomainWAFRuleSet patches a waf advanced rule set for a domain
func (*Service) PatchSSL ¶
func (s *Service) PatchSSL(sslID string, req PatchSSLRequest) (string, error)
PatchSSL retrieves patches an SSL
func (*Service) PurgeDomainCDN ¶
func (s *Service) PurgeDomainCDN(domainName string, req PurgeCDNRequest) error
PurgeDomainCDN purges cached content
func (*Service) VerifyDomainDNS ¶
VerifyDomainDNS verifies a domain via DNS method
func (*Service) VerifyDomainFileUpload ¶
VerifyDomainFileUpload verifies a domain via file-upload method
type WAF ¶
type WAF struct { Mode WAFMode `json:"mode"` ParanoiaLevel WAFParanoiaLevel `json:"paranoia_level"` }
WAF represents a DDoSX WAF configuration
type WAFAdvancedRule ¶
type WAFAdvancedRule struct { ID string `json:"id"` Section WAFAdvancedRuleSection `json:"section"` Modifier WAFAdvancedRuleModifier `json:"modifier"` Phrase string `json:"phrase"` IP connection.IPAddress `json:"ip"` }
WAFAdvancedRule represents a DDoSX WAF advanced rule
type WAFAdvancedRuleModifier ¶
type WAFAdvancedRuleModifier string
const ( WAFAdvancedRuleModifierBeginsWith WAFAdvancedRuleModifier = "beginsWith" WAFAdvancedRuleModifierEndsWith WAFAdvancedRuleModifier = "endsWith" WAFAdvancedRuleModifierContains WAFAdvancedRuleModifier = "contains" WAFAdvancedRuleModifierContainsWord WAFAdvancedRuleModifier = "containsWord" )
func (WAFAdvancedRuleModifier) String ¶
func (s WAFAdvancedRuleModifier) String() string
type WAFAdvancedRuleNotFoundError ¶
type WAFAdvancedRuleNotFoundError struct {
ID string
}
WAFAdvancedRuleNotFoundError indicates a WAF advanced rule was not found
func (*WAFAdvancedRuleNotFoundError) Error ¶
func (e *WAFAdvancedRuleNotFoundError) Error() string
type WAFAdvancedRuleSection ¶
type WAFAdvancedRuleSection string
const ( WAFAdvancedRuleSectionArgs WAFAdvancedRuleSection = "ARGS" WAFAdvancedRuleSectionMatchedVars WAFAdvancedRuleSection = "MATCHED_VARS" WAFAdvancedRuleSectionRemoteHost WAFAdvancedRuleSection = "REMOTE_HOST" WAFAdvancedRuleSectionRequestBody WAFAdvancedRuleSection = "REQUEST_BODY" WAFAdvancedRuleSectionRequestCookies WAFAdvancedRuleSection = "REQUEST_COOKIES" WAFAdvancedRuleSectionRequestHeaders WAFAdvancedRuleSection = "REQUEST_HEADERS" WAFAdvancedRuleSectionRequestURI WAFAdvancedRuleSection = "REQUEST_URI" )
func (WAFAdvancedRuleSection) String ¶
func (s WAFAdvancedRuleSection) String() string
type WAFLog ¶
type WAFLog struct { ID string `json:"id"` Host string `json:"host"` ClientIP connection.IPAddress `json:"client_ip"` Request string `json:"request"` CreatedAt connection.DateTime `json:"created_at"` }
WAFLog represents a WAF log entry
type WAFLogMatch ¶
type WAFLogMatch struct { ID string `json:"id"` LogID string `json:"log_id"` Host string `json:"host"` ClientIP connection.IPAddress `json:"client_ip"` RequestURI string `json:"request_uri"` CreatedAt connection.DateTime `json:"created_at"` CountryCode string `json:"country_code"` Method string `json:"method"` Content string `json:"content"` Message string `json:"message"` MatchData string `json:"match_data"` URIPart string `json:"uri_part"` Value string `json:"value"` }
WAFLogMatch represents a WAF log match
type WAFLogMatchNotFoundError ¶
type WAFLogMatchNotFoundError struct {
ID string
}
WAFLogMatchNotFoundError indicates a WAF rule was not found
func (*WAFLogMatchNotFoundError) Error ¶
func (e *WAFLogMatchNotFoundError) Error() string
type WAFLogNotFoundError ¶
type WAFLogNotFoundError struct {
ID string
}
WAFLogNotFoundError indicates a WAF rule was not found
func (*WAFLogNotFoundError) Error ¶
func (e *WAFLogNotFoundError) Error() string
type WAFParanoiaLevel ¶
type WAFParanoiaLevel string
const ( WAFParanoiaLevelLow WAFParanoiaLevel = "Low" WAFParanoiaLevelMedium WAFParanoiaLevel = "Medium" WAFParanoiaLevelHigh WAFParanoiaLevel = "High" WAFParanoiaLevelHighest WAFParanoiaLevel = "Highest" )
func (WAFParanoiaLevel) String ¶
func (s WAFParanoiaLevel) String() string
type WAFRule ¶
type WAFRule struct { ID string `json:"id"` URI string `json:"uri"` IP connection.IPAddress `json:"ip"` }
WAFRule represents a DDoSX WAF rule
type WAFRuleNotFoundError ¶
type WAFRuleNotFoundError struct {
ID string
}
WAFRuleNotFoundError indicates a WAF rule was not found
func (*WAFRuleNotFoundError) Error ¶
func (e *WAFRuleNotFoundError) Error() string
type WAFRuleSet ¶
type WAFRuleSet struct { ID string `json:"id"` Name WAFRuleSetName `json:"name"` Active bool `json:"active"` }
WAFRuleSet represents a DDoSX WAF rule set
type WAFRuleSetName ¶
type WAFRuleSetName string
const ( WAFRuleSetNameIPRepution WAFRuleSetName = "IP Reputation" WAFRuleSetNameMethodEnforcement WAFRuleSetName = "Method Enforcement" WAFRuleSetNameScannerDetection WAFRuleSetName = "Scanner Detection" WAFRuleSetNameProtocolEnforcement WAFRuleSetName = "Protocol Enforcement" WAFRuleSetNameProtocolAttack WAFRuleSetName = "Protocol Attack" WAFRuleSetNameApplicationAttackLocalFileInclusion WAFRuleSetName = "Application Attack (Local File Inclusion)" WAFRuleSetNameApplicationAttackRemoteFileInclusion WAFRuleSetName = "Application Attack (Remote File Inclusion)" WAFRuleSetNameApplicationAttackRemoteCodeExecution WAFRuleSetName = "Application Attack (Remote Code Execution)" WAFRuleSetNameApplicationAttackPHP WAFRuleSetName = "Application Attack PHP" WAFRuleSetNameApplicationAttackXSSCrossSiteScripting WAFRuleSetName = "Application Attack XSS (Cross Site Scripting)" WAFRuleSetNameApplicationAttackSQLISQLInjection WAFRuleSetName = "Application Attack SQLI (SQL Injection)" WAFRuleSetNameApplicationAttackSessionFixation WAFRuleSetName = "Application Attack Session Fixation" WAFRuleSetNameDataDeakages WAFRuleSetName = "Data Leakages" WAFRuleSetNameDataLeakageSQL WAFRuleSetName = "Data Leakage SQL" WAFRuleSetNameDataLeakageJava WAFRuleSetName = "Data Leakage Java" WAFRuleSetNameDataLeakagePHP WAFRuleSetName = "Data Leakage PHP" WAFRuleSetNameDataLeakageIIS WAFRuleSetName = "Data Leakage IIS" )
type WAFRuleSetNotFoundError ¶
type WAFRuleSetNotFoundError struct {
ID string
}
WAFRuleSetNotFoundError indicates a WAF rule set was not found
func (*WAFRuleSetNotFoundError) Error ¶
func (e *WAFRuleSetNotFoundError) Error() string