Sample code for 30+ languages & platforms
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

PowerShell
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)