Akamai.DOM.psm1
|
function Complete-DOMDomain { [CmdletBinding()] Param( [Parameter(Mandatory, ValueFromPipelineByPropertyName)] [string[]] $DomainName, [Parameter(Mandatory, ValueFromPipelineByPropertyName)] [ValidateSet('HOST', 'WILDCARD', 'DOMAIN')] [string[]] $ValidationScope, [Parameter(Mandatory, ValueFromPipelineByPropertyName)] [ValidateSet('DNS_CNAME', 'DNS_TXT', 'HTTP')] [string[]] $ValidationMethod, [Parameter()] [string] $EdgeRCFile, [Parameter()] [string] $Section, [Parameter()] [string] $AccountSwitchKey ) process { $Path = "/domain-validation/v1/domains/validate-now" $Body = @{ 'domains' = New-Object -TypeName System.Collections.Generic.List[Object] } for ($i = 0; $i -lt $DomainName.count; $i++) { $DomainObject = @{ 'domainName' = $DomainName[$i] 'validationScope' = $ValidationScope[$i] 'validationMethod' = $ValidationMethod[$i] } $Body.domains.Add($DomainObject) } $RequestParameters = @{ 'Path' = $Path 'Method' = 'POST' 'Body' = $Body 'QueryParameters' = $QueryParameters 'EdgeRCFile' = $EdgeRCFile 'Section' = $Section 'AccountSwitchKey' = $AccountSwitchKey 'Debug' = ($PSBoundParameters.Debug -eq $true) } try { $Response = Invoke-AkamaiRequest @RequestParameters return $Response.Body.domains } catch { throw $_ } } } function Disable-DOMDomain { [CmdletBinding()] Param( [Parameter(Mandatory, ValueFromPipelineByPropertyName)] [string[]] $DomainName, [Parameter(Mandatory, ValueFromPipelineByPropertyName)] [string[]] $ValidationScope, [Parameter()] [string] $EdgeRCFile, [Parameter()] [string] $Section, [Parameter()] [string] $AccountSwitchKey ) process { $Path = "/domain-validation/v1/domains/invalidate" $Body = @{ 'domains' = New-Object -TypeName System.Collections.Generic.List[Object] } for ($i = 0; $i -lt $DomainName.Count; $i++) { $DomainObject = @{ 'domainName' = $DomainName[$i] 'validationScope' = $ValidationScope[$i] } $Body.domains.Add($DomainObject) } $RequestParameters = @{ 'Path' = $Path 'Method' = 'POST' 'Body' = $Body 'QueryParameters' = $QueryParameters 'EdgeRCFile' = $EdgeRCFile 'Section' = $Section 'AccountSwitchKey' = $AccountSwitchKey 'Debug' = ($PSBoundParameters.Debug -eq $true) } try { $Response = Invoke-AkamaiRequest @RequestParameters return $Response.Body.domains } catch { throw $_ } } } function Find-DOMDomain { [CmdletBinding()] Param( [Parameter(Mandatory, ParameterSetName = 'attributes', ValueFromPipelineByPropertyName)] [string[]] $DomainName, [Parameter(Mandatory, ParameterSetName = 'attributes', ValueFromPipelineByPropertyName)] [ValidateSet('HOST', 'WILDCARD', 'DOMAIN')] [string[]] $ValidationScope, [Parameter()] [switch] $IncludeAll, [Parameter(Mandatory, ParameterSetName = 'body')] $Body, [Parameter()] [string] $EdgeRCFile, [Parameter()] [string] $Section, [Parameter()] [string] $AccountSwitchKey ) process { $Path = "/domain-validation/v1/domains/search" $QueryParameters = @{ 'includeAll' = $PSBoundParameters.IncludeAll.IsPresent } if ($PSCmdlet.ParameterSetName -eq 'attributes') { $Body = @{ 'domains' = New-Object -TypeName System.Collections.Generic.List[Object] } for ($i = 0; $i -lt $DomainName.Count; $i++) { $DomainObject = @{ 'domainName' = $DomainName[$i] 'validationScope' = $ValidationScope[$i] } $Body.domains.Add($DomainObject) } } $RequestParameters = @{ 'Path' = $Path 'Method' = 'POST' 'Body' = $Body 'QueryParameters' = $QueryParameters 'EdgeRCFile' = $EdgeRCFile 'Section' = $Section 'AccountSwitchKey' = $AccountSwitchKey 'Debug' = ($PSBoundParameters.Debug -eq $true) } try { $Response = Invoke-AkamaiRequest @RequestParameters return $Response.Body.domains } catch { throw $_ } } } function Get-DOMDomain { [CmdletBinding()] Param( [Parameter(Mandatory, ParameterSetName = 'single', ValueFromPipeline, ValueFromPipelineByPropertyName)] [string] $DomainName, [Parameter(Mandatory, ParameterSetName = 'single')] [ValidateSet('HOST', 'WILDCARD', 'DOMAIN')] [string] $ValidationScope, [Parameter(ParameterSetName = 'single')] [switch] $IncludeDomainStatusHistory, [Parameter(ParameterSetName = 'All')] [switch] $Paginate, [Parameter(ParameterSetName = 'All')] [int] $Page, [Parameter(ParameterSetName = 'All')] [int] $PageSize = 1000, [Parameter()] [string] $EdgeRCFile, [Parameter()] [string] $Section, [Parameter()] [string] $AccountSwitchKey ) process { if ($DomainName) { $Path = "/domain-validation/v1/domains/$DomainName" $QueryParameters = @{ 'validationScope' = $ValidationScope 'includeDomainStatusHistory' = $PSBoundParameters.IncludeDomainStatusHistory.IsPresent } } else { $Path = "/domain-validation/v1/domains" $QueryParameters = @{ 'paginate' = $PSBoundParameters.Paginate.IsPresent 'page' = $PSBoundParameters.Page 'pageSize' = $PageSize } } $RequestParameters = @{ 'Path' = $Path 'Method' = 'GET' 'QueryParameters' = $QueryParameters 'EdgeRCFile' = $EdgeRCFile 'Section' = $Section 'AccountSwitchKey' = $AccountSwitchKey 'Debug' = ($PSBoundParameters.Debug -eq $true) } try { $Response = Invoke-AkamaiRequest @RequestParameters if ($DomainName) { return $Response.Body } else { return $Response.Body.domains } } catch { throw $_ } } } function New-DOMDomain { [CmdletBinding()] Param( [Parameter(Mandatory, ParameterSetName = 'attributes')] [string[]] $DomainName, [Parameter(Mandatory, ParameterSetName = 'attributes')] [ValidateSet('HOST', 'WILDCARD', 'DOMAIN')] [string[]] $ValidationScope, [Parameter(Mandatory, ValueFromPipeline, ParameterSetName = 'body')] $Body, [Parameter()] [string] $EdgeRCFile, [Parameter()] [string] $Section, [Parameter()] [string] $AccountSwitchKey ) process { $Path = "/domain-validation/v1/domains" if ($PSCmdlet.ParameterSetName -eq 'attributes') { $Body = @{ domains = New-Object -TypeName System.Collections.Generic.List[Object] } for ($i = 0; $i -lt $DomainName.Count; $i++) { $DomainObject = @{ 'domainName' = $DomainName[$i] 'validationScope' = $ValidationScope[$i] } $Body.domains.Add($DomainObject) } } $RequestParameters = @{ 'Path' = $Path 'Method' = 'POST' 'Body' = $Body 'EdgeRCFile' = $EdgeRCFile 'Section' = $Section 'AccountSwitchKey' = $AccountSwitchKey 'Debug' = ($PSBoundParameters.Debug -eq $true) } try { $Response = Invoke-AkamaiRequest @RequestParameters return $Response.Body } catch { throw $_ } } } function Remove-DOMDomain { [CmdletBinding()] Param( [Parameter(Mandatory, ValueFromPipeline, ValueFromPipelineByPropertyName)] [string[]] $DomainName, [Parameter(Mandatory, ValueFromPipeline, ValueFromPipelineByPropertyName)] [string[]] $ValidationScope, [Parameter()] [string] $EdgeRCFile, [Parameter()] [string] $Section, [Parameter()] [string] $AccountSwitchKey ) process { $Path = "/domain-validation/v1/domains" $Body = @{ 'domains' = New-Object -TypeName System.Collections.Generic.List[Object] } for ($i = 0; $i -lt 1; $i++) { $DomainObject = @{ 'domainName' = $DomainName[$i] 'validationScope' = $ValidationScope[$i] } $Body.domains.Add($DomainObject) } $RequestParameters = @{ 'Path' = $Path 'Method' = 'DELETE' 'Body' = $Body 'QueryParameters' = $QueryParameters 'EdgeRCFile' = $EdgeRCFile 'Section' = $Section 'AccountSwitchKey' = $AccountSwitchKey 'Debug' = ($PSBoundParameters.Debug -eq $true) } try { $Response = Invoke-AkamaiRequest @RequestParameters return $Response.Body } catch { throw $_ } } } # SIG # Begin signature block # MIIKmAYJKoZIhvcNAQcCoIIKiTCCCoUCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAAUdLOIpKyH2Jm # 9tlWP+Uz4+lG//Aub9QZeVCFMiwGO6CCB1owggdWMIIFPqADAgECAhAGRzH371Sh # X6hjGl1wSSyYMA0GCSqGSIb3DQEBCwUAMGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQK # Ew5EaWdpQ2VydCwgSW5jLjFBMD8GA1UEAxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBD # b2RlIFNpZ25pbmcgUlNBNDA5NiBTSEEzODQgMjAyMSBDQTEwHhcNMjYwMjI1MDAw # MDAwWhcNMjcwMzEwMjM1OTU5WjCB3jETMBEGCysGAQQBgjc8AgEDEwJVUzEZMBcG # CysGAQQBgjc8AgECEwhEZWxhd2FyZTEdMBsGA1UEDwwUUHJpdmF0ZSBPcmdhbml6 # YXRpb24xEDAOBgNVBAUTBzI5MzM2MzcxCzAJBgNVBAYTAlVTMRYwFAYDVQQIEw1N # YXNzYWNodXNldHRzMRIwEAYDVQQHEwlDYW1icmlkZ2UxIDAeBgNVBAoTF0FrYW1h # aSBUZWNobm9sb2dpZXMgSW5jMSAwHgYDVQQDExdBa2FtYWkgVGVjaG5vbG9naWVz # IEluYzCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBAJeMKuhiUI5WSRdG # IPhNWLpaVPlXbSazhGuvzZxTi623Ht46hiPejDtWB8F8dT2pd+nOWsx5NVgkv7x/ # Tz35cZcWVMDxq/K7wYe9R2GndGgfEL02/j5rslwHr8e6qFzy1axuL/xaGXuBTVrS # Qw25019l1KalUHwInKLIP7Hw1HLPTacyJNNTsYmOpZNqKIiQe9ivzBd7SuPU0cGi # 1YHUk4ZQh6Ig5tBx8XZYjTmzbiQr2WWwk/CufaoIPME5zAvmW99S05rAtOqvoUr7 # eoLUQ/TcMMA6eOliAbO5m0w/pv5YDgzhzt9hQez189zZNOkMO6AcHNitJzzsEvCg # 7fhPHxoXvasRJ0EaCEze0nuVakLPf+mGCLoZYGRctayOn4HP6LEEOGmAnQBZkwFR # 6zxk0hzAMOkK/p7MV9V6QwOuk9q7WKnIdzS/4RjRtXNxXb2fMNyBEwrwJhdmEhWF # 0eS0Wd6Uz3IbSr0+XH8FHLflQXFCkPcZKiGPgSCp8rTP3KHr6wIDAQABo4ICAjCC # Af4wHwYDVR0jBBgwFoAUaDfg67Y7+F8Rhvv+YXsIiGX0TkIwHQYDVR0OBBYEFKT3 # RICOlmcsnPu7KwUf9HL4YegLMD0GA1UdIAQ2MDQwMgYFZ4EMAQMwKTAnBggrBgEF # BQcCARYbaHR0cDovL3d3dy5kaWdpY2VydC5jb20vQ1BTMA4GA1UdDwEB/wQEAwIH # gDATBgNVHSUEDDAKBggrBgEFBQcDAzCBtQYDVR0fBIGtMIGqMFOgUaBPhk1odHRw # Oi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2lnbmlu # Z1JTQTQwOTZTSEEzODQyMDIxQ0ExLmNybDBToFGgT4ZNaHR0cDovL2NybDQuZGln # aWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZEc0Q29kZVNpZ25pbmdSU0E0MDk2U0hB # Mzg0MjAyMUNBMS5jcmwwgZQGCCsGAQUFBwEBBIGHMIGEMCQGCCsGAQUFBzABhhho # dHRwOi8vb2NzcC5kaWdpY2VydC5jb20wXAYIKwYBBQUHMAKGUGh0dHA6Ly9jYWNl # cnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRHNENvZGVTaWduaW5nUlNB # NDA5NlNIQTM4NDIwMjFDQTEuY3J0MAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQAD # ggIBAGSBrSnUReHUzGTy9VC6hy2oDSpu2QNu5j3o/uoaaAy2CgI0hVJRL/OfYinL # R4hJofuNNKORp2MWXpy52L5PCGtD6/Hf92bMkDl1AP6nXuplt5HvkFPh5kVDbQ7o # HfI1Pup2IOpKxb00UNwjtKy+38ZCX0dgkASP2vQFamBCG0eTaGUh/9ZH9rz11Nkr # 9p83Snz/3eW3vOeKAFL3S5RDEMkTvv09540mnzA4J5lKGES2eje/FhwCCQUQBvqC # voNFNZHyXvW9v8KqX/3CcN1LAtGCy4XnkFjQRPyn+o/OJv5M5yX2Rm5kq9dYpWnD # U2xgxMR1BZaDf+uDoqGsLo4OqbPV4Dftp2FDs8DHMD8xP6i/k4htaWShkdyjdijr # 9TBOi+pS9vNlcCKjwLq6aibcbkUk7ef3wxR5imhajsX22vy8Zd9ByAk07BJrccgg # JGczCtiKcD6LZtP3VjnqhYPSQ4jk6wCruqcTCTwwO7FrIROVrWb2Ro+ph+/a5Llj # 5ryLyp+6NAgtNwyrkp2WxZviLbh5AXnmg9Pnwrz64UE93LEjI23AWBJsLFdJTbis # Z/tTgozdVdPZf2Dy2k8xfYZoIq6V1oWiAoQCzb5B9nETV5NGjiMPskJ4GwnlzOvz # +4IgLQjl0V5I08Qw+3uvPQ8rHHMLbKgncTqSxqtZ73kItOztMYIClDCCApACAQEw # fTBpMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNV # BAMTOERpZ2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBTaWduaW5nIFJTQTQwOTYgU0hB # Mzg0IDIwMjEgQ0ExAhAGRzH371ShX6hjGl1wSSyYMA0GCWCGSAFlAwQCAQUAoGow # GQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEOMAwGCisG # AQQBgjcCARUwLwYJKoZIhvcNAQkEMSIEII83HRFdm0HWt1DE0CbR5Dx6wkhbu78s # DKF8c0vN2RxYMA0GCSqGSIb3DQEBAQUABIIBgAl8cSFQQeu4H0x1eB8XQ0tZeIBd # 1Ns3XRVmpG0FmFmolD3n/4F81etc272ibAOPbgqfB3lg0kLaGTypn6QkIqpFicno # azEVMzZvduIi5gh9c+qIzBHyehW9o/JElyUQcZujToG4mzFx0YWINsMGqMdroF17 # vgO/sK03nlxIrwgxfsj2MLz6Gr+Jpic8y4BqinXxGo8rFxzYJKNo+Dv8dBtHjoh0 # 9RJ8+pyOKFMi3odCwRxHp8HSlw4+mGrGEhjYbZKzpy6/65Pwme3HJCWyfOhrDQdp # ur+mH5fKrviOdE+WXwj/y7/1y5/u1COQwJG3p8vmtAXZG0Lz3N5Zuf91Iz8ct0gR # UQsNZ1yqufJlKZ4Ms/fopt2lhe9lFSFMPdq17cVQg7pnCTUNAX4U+rDKRkN47j8J # kM3aWdnco5yn6fuIF8tE6amOtybwdjOvVetBzg7tw1ueM+4BgtiI4ZdMHghS212j # 26mUpHoZ4clonUH2CindCNpM8ksJuc1mqZ5eGg== # SIG # End signature block |