How to load channel stats for affiliate

If you want to load channel stats report for affiliate, you can send grid request to class Pap_Affiliates_Reports_ChannelStatsGrid. Notice that you need to use affiliate login details for api login, because channel stats report is from affiliate panel.

include 'PapApi.class.php'; //the PapApi.class.php can be found at the PAP installation folder, in the 'api' directory $session = new Pap_Api_Session("http://your_pap_url/scripts/server.php"); if(!$session->login("","affiliatepassword", Pap_Api_Session::AFFILIATE)) { die("Cannot login. Message: ". $session->getMessage()); } $request = new Gpf_Rpc_GridRequest("Pap_Affiliates_Reports_ChannelStatsGrid", "getRows", $session); //columns which you want to load $request->addParam('columns', new Gpf_Rpc_Array(array(array('id'), array('channel'), array('impressionsRaw'), array('impressionsUnique'), array('clicksRaw'), array('ctrRaw'), array('clicksUnique'), array('ctrUnique'), array('salesCount'), array('salesTotal'), array('commissions')))); //Filter a certain date range $request->addFilter("datetime","D>=","2013-01-04"); //date from $request->addFilter("datetime","D<=","2013-03-05"); //date to
// send request try { $request->sendNow(); } catch(Exception $e) { die("API call error: ".$e->getMessage()); } // request was successful, get the grid result $grid = $request->getGrid(); // get recordset from the grid $recordset = $grid->getRecordset(); // iterate through the records foreach($recordset as $rec) { echo 'Name: '.$rec->get('channel').' impressionsRaw: '.$rec->get('impressionsRaw').' impressionsUnique: '.$rec->get('impressionsUnique').' clicksRaw: '.$rec->get('clicksRaw').' ctrRaw: '.$rec->get('ctrRaw').' clicksUnique: '.$rec->get('clicksUnique').' ctrUnique: '.$rec->get('ctrUnique').' salesCount: '.$rec->get('salesCount').' salesTotal: '.$rec->get('salesTotal').' commissions: '.$rec->get('commissions').'<br>'; }