PowerShell
PowerShell
SNS Create Topic
See more Amazon SNS Examples
Creates a new SNS topic.See SNS CreateTopic for more information.
Chilkat PowerShell Downloads
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"
$success = $false
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
$rest = New-Object Chilkat.Rest
# Connect to the Amazon AWS REST server.
# such as https://sns.us-west-2.amazonaws.com/
$bTls = $true
$port = 443
$bAutoReconnect = $true
$success = $rest.Connect("sns.us-west-2.amazonaws.com",$port,$bTls,$bAutoReconnect)
# Provide AWS credentials for the REST call.
$authAws = New-Object Chilkat.AuthAws
$authAws.AccessKey = "AWS_ACCESS_KEY"
$authAws.SecretKey = "AWS_SECRET_KEY"
# the region should match our URL above..
$authAws.Region = "us-west-2"
$authAws.ServiceName = "sns"
$rest.SetAuthAws($authAws)
$rest.AddQueryParam("Action","CreateTopic")
$rest.AddQueryParam("Name","chilkat")
$responseXml = $rest.FullRequestNoBody("GET","/")
if ($rest.LastMethodSuccess -ne $true) {
$($rest.LastErrorText)
exit
}
# A successful response will have a status code equal to 200.
if ($rest.ResponseStatusCode -ne 200) {
$("response status code = " + $rest.ResponseStatusCode)
$("response status text = " + $rest.ResponseStatusText)
$("response header: " + $rest.ResponseHeader)
$("response body: " + $responseXml)
exit
}
# Examine the successful XML response.
$xml = New-Object Chilkat.Xml
$xml.LoadXml($responseXml)
$($xml.GetXml())
# To get the TopicArn or RequestId
$("TopicArn: " + $xml.ChilkatPath("CreateTopicResult|TopicArn|*"))
$("RequestId: " + $xml.ChilkatPath("ResponseMetadata|RequestId|*"))
# A sample successful response:
# <?xml version="1.0" encoding="utf-8" ?>
# <CreateTopicResponse xmlns="http://sns.amazonaws.com/doc/2010-03-31/">
# <CreateTopicResult>
# <TopicArn>arn:aws:sns:us-west-2:123491831234:chilkat</TopicArn>
# </CreateTopicResult>
# <ResponseMetadata>
# <RequestId>abcd1234-d61a-5115-83bd-abcdabcd6961</RequestId>
# </ResponseMetadata>
# </CreateTopicResponse>