PHP Extension
PHP Extension
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 PHP Extension Downloads
<?php
include("chilkat.php");
$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 CkJsonObject();
$json->UpdateString('reportDescription.reportSuiteID','rsid');
$json->UpdateString('reportDescription.dateGranularity','hour');
$http = new CkHttp();
$dt = new CkDateTime();
$dt->SetFromCurrentSystemTime();
$timecreated = $dt->getAsTimestamp(false);
$prng = new CkPrng();
$nonce = $prng->genRandom(12,'hex');
$secret = 'SECRET';
$sb = new CkStringBuilder();
$sb->Append($nonce);
$sb->Append($timecreated);
$sb->Append($secret);
$crypt = new CkCrypt2();
$crypt->put_HashAlgorithm('sha1');
$crypt->put_EncodingMode('base64');
$digest = $crypt->hashStringENC($sb->getAsString());
$sbNonce = new CkStringBuilder();
$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('\'');
print $sb->getAsString() . "\n";
$http->SetRequestHeader('X-WSSE',$sb->getAsString());
$resp = new CkHttpResponse();
$success = $http->HttpJson('POST',$url,$json,'text/json',$resp);
if ($success == false) {
print $http->lastErrorText() . "\n";
exit;
}
print 'Http Status code: ' . $resp->get_StatusCode() . "\n";
print 'JSON response:' . "\n";
print $resp->bodyStr() . "\n";
?>