View Single Post
Old 12th April 2013, 23:55
MaddinXx MaddinXx is offline
Senior Member
Join Date: Jul 2011
Location: Switzerland
Posts: 200
Thanks: 26
Thanked 65 Times in 48 Posts
Default Remote API: Updating DB but not entry in interface


Today I've written a small script to check mailserver availability. If it's down, it runs a php script which connect's to the remote API.


// login credentials
$username = 'XXX;
$password = 'XXX';

// CP URLs
$soap_location = 'https://XXX/remote/index.php';
$soap_uri = 'https://XXX/remote/';

// remote API client
$client = new SoapClient(
		'location' => $soap_location,
		'uri' => $soap_uri,
		'trace' => 1,
		'exceptions' => 1

	// login to ISPConfig
	if($session_id = $client->login($username,$password)) {
		echo "Logged successfull. Session ID:". $session_id;

	// DNS record ID
	$id = XXX;
	$client_id = 1;

	// get the DNS record
	$dns_record = $client->dns_cname_get($session_id, $id);

	// new value
	if ($dns_record['data'] != 'XXX')
		$dns_record['data'] = 'XXX';

		// update the DNS record
		$affected_rows = $client->dns_cname_update($session_id, $client_id, $id, $dns_record);

		echo "Number of records that have been changed in the database: ". $affected_rows;

	// logout
	if($client->logout($session_id)) {
		echo 'Logged out.<br />';
catch (SoapFault $e)
	die('SOAP Error: '.$e->getMessage());
	echo "Please contact the server administator";
It's created a job within ISPConfig queue and the DB changes as well. However, the interface shows the old entry and it also does not seem to fire the server's event to update the BIND files.

E.g. the changes are written to DB - and that's it.

Do I have to add something else?

Thanks a lot!
Reply With Quote
Sponsored Links