PowerShell
PowerShell
Adobe Analytics Reporting API (1.4)
See more HTTP Misc Examples
Demonstrates a simple POST of JSON to the Adobe Analytics Reporting API (v1.4)Chilkat PowerShell Downloads
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"
$success = $false
# This requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
# In this example, replace "rsid" with your report suite id, and update the URL to use the correct endpoint
$url = "https://api.omniture.com/admin/1.4/rest/?method=Report.Queue"
$json = New-Object Chilkat.JsonObject
$json.UpdateString("reportDescription.reportSuiteID","rsid")
$json.UpdateString("reportDescription.dateGranularity","hour")
$http = New-Object Chilkat.Http
$dt = New-Object Chilkat.CkDateTime
$dt.SetFromCurrentSystemTime()
$timecreated = $dt.GetAsTimestamp($false)
$prng = New-Object Chilkat.Prng
$nonce = $prng.GenRandom(12,"hex")
$secret = "SECRET"
$sb = New-Object Chilkat.StringBuilder
$sb.Append($nonce)
$sb.Append($timecreated)
$sb.Append($secret)
$crypt = New-Object Chilkat.Crypt2
$crypt.HashAlgorithm = "sha1"
$crypt.EncodingMode = "base64"
$digest = $crypt.HashStringENC($sb.GetAsString())
$sbNonce = New-Object Chilkat.StringBuilder
$sbNonce.Append($nonce)
$sbNonce.Encode("base64")
$sb.Clear()
$sb.Append("UsernameToken Username=`"USERNAME`", PasswordDigest=`"")
$sb.Append($digest)
$sb.Append("`", Nonce=`"")
$sb.Append($sbNonce.GetAsString())
$sb.Append("`", Created=`"")
$sb.Append($timecreated)
$sb.Append("`"")
$($sb.GetAsString())
$http.SetRequestHeader("X-WSSE",$sb.GetAsString())
$resp = New-Object Chilkat.HttpResponse
$success = $http.HttpJson("POST",$url,$json,"text/json",$resp)
if ($success -eq $false) {
$($http.LastErrorText)
exit
}
$("Http Status code: " + $resp.StatusCode)
$("JSON response:")
$($resp.BodyStr)