From 1370a4aec9e9030bd9d7e6500d00fffa1d60883a Mon Sep 17 00:00:00 2001
From: francois parreaux-ey <parreaux-ey.francois@orange.fr>
Date: Tue, 21 Dec 2021 10:46:18 +0000
Subject: [PATCH] 6187-DS-RECORD-functions-for-API -> Update dns.inc.php and
 other related files

---
 interface/lib/classes/remote.d/dns.inc.php    | 22 +++++++++
 remoting_client/API-docs/dns_a_add.html       |  2 +-
 remoting_client/API-docs/dns_a_update.html    |  2 +-
 remoting_client/API-docs/dns_aaaa_add.html    |  2 +-
 remoting_client/API-docs/dns_aaaa_update.html |  2 +-
 remoting_client/API-docs/dns_alias_add.html   |  2 +-
 .../API-docs/dns_alias_update.html            |  2 +-
 remoting_client/API-docs/dns_cname_add.html   |  2 +-
 .../API-docs/dns_cname_update.html            |  2 +-
 remoting_client/API-docs/dns_ds_add.html      | 38 +++++++++++++++
 remoting_client/API-docs/dns_ds_delete.html   | 29 ++++++++++++
 remoting_client/API-docs/dns_ds_get.html      | 29 ++++++++++++
 remoting_client/API-docs/dns_ds_update.html   | 38 +++++++++++++++
 remoting_client/API-docs/dns_hinfo_add.html   |  2 +-
 .../API-docs/dns_hinfo_update.html            |  2 +-
 remoting_client/API-docs/dns_mx_add.html      |  2 +-
 remoting_client/API-docs/dns_mx_update.html   |  2 +-
 remoting_client/API-docs/dns_naptr_add.html   |  2 +-
 .../API-docs/dns_naptr_update.html            |  2 +-
 remoting_client/API-docs/dns_ns_add.html      |  2 +-
 remoting_client/API-docs/dns_ns_update.html   |  2 +-
 remoting_client/API-docs/dns_ptr_add.html     |  2 +-
 remoting_client/API-docs/dns_ptr_update.html  |  2 +-
 remoting_client/API-docs/dns_rp_add.html      |  2 +-
 remoting_client/API-docs/dns_rp_update.html   |  2 +-
 remoting_client/API-docs/dns_srv_add.html     |  2 +-
 remoting_client/API-docs/dns_srv_update.html  |  2 +-
 remoting_client/API-docs/dns_txt_add.html     |  2 +-
 remoting_client/API-docs/dns_txt_update.html  |  2 +-
 remoting_client/examples/dns_ds_add.php       | 47 +++++++++++++++++++
 remoting_client/examples/dns_ds_delete.php    | 35 ++++++++++++++
 remoting_client/examples/dns_ds_get.php       | 34 ++++++++++++++
 remoting_client/examples/dns_ds_update.php    | 42 +++++++++++++++++
 33 files changed, 338 insertions(+), 24 deletions(-)
 create mode 100644 remoting_client/API-docs/dns_ds_add.html
 create mode 100644 remoting_client/API-docs/dns_ds_delete.html
 create mode 100644 remoting_client/API-docs/dns_ds_get.html
 create mode 100644 remoting_client/API-docs/dns_ds_update.html
 create mode 100644 remoting_client/examples/dns_ds_add.php
 create mode 100644 remoting_client/examples/dns_ds_delete.php
 create mode 100644 remoting_client/examples/dns_ds_get.php
 create mode 100644 remoting_client/examples/dns_ds_update.php

diff --git a/interface/lib/classes/remote.d/dns.inc.php b/interface/lib/classes/remote.d/dns.inc.php
index 463b474cd1..4b1ade6f31 100644
--- a/interface/lib/classes/remote.d/dns.inc.php
+++ b/interface/lib/classes/remote.d/dns.inc.php
@@ -581,6 +581,28 @@ class remoting_dns extends remoting {
 
 	// ----------------------------------------------------------------------------------------------------------------
 
+	//* Get record details
+	public function dns_ds_get($session_id, $primary_id) {
+		return $this->dns_rr_get($session_id, $primary_id, 'DS');
+	}
+
+	//* Add a record
+	public function dns_ds_add($session_id, $client_id, $params, $update_serial=false) {
+		return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'DS');
+	}
+
+	//* Update a record
+	public function dns_ds_update($session_id, $client_id, $primary_id, $params, $update_serial=false) {
+		return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'DS');
+	}
+
+	//* Delete a record
+	public function dns_ds_delete($session_id, $primary_id, $update_serial=false) {
+		return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'DS');
+	}
+
+	// ----------------------------------------------------------------------------------------------------------------
+
 	//* Get record details
 	public function dns_ptr_get($session_id, $primary_id) {
 		return $this->dns_rr_get($session_id, $primary_id, 'PTR');
diff --git a/remoting_client/API-docs/dns_a_add.html b/remoting_client/API-docs/dns_a_add.html
index eaa7f8eb92..e7217bcdcf 100644
--- a/remoting_client/API-docs/dns_a_add.html
+++ b/remoting_client/API-docs/dns_a_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx''naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_a_update.html b/remoting_client/API-docs/dns_a_update.html
index b279c6d476..ccacab408b 100644
--- a/remoting_client/API-docs/dns_a_update.html
+++ b/remoting_client/API-docs/dns_a_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx''naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_aaaa_add.html b/remoting_client/API-docs/dns_aaaa_add.html
index 0f8e8b61d1..ea21b15361 100644
--- a/remoting_client/API-docs/dns_aaaa_add.html
+++ b/remoting_client/API-docs/dns_aaaa_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx''naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_aaaa_update.html b/remoting_client/API-docs/dns_aaaa_update.html
index 1ad798fd5d..94b60f4df4 100644
--- a/remoting_client/API-docs/dns_aaaa_update.html
+++ b/remoting_client/API-docs/dns_aaaa_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx''naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_alias_add.html b/remoting_client/API-docs/dns_alias_add.html
index d7d68dc64e..4bea3dea6f 100644
--- a/remoting_client/API-docs/dns_alias_add.html
+++ b/remoting_client/API-docs/dns_alias_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_alias_update.html b/remoting_client/API-docs/dns_alias_update.html
index e43e5c40f8..058654f2f7 100644
--- a/remoting_client/API-docs/dns_alias_update.html
+++ b/remoting_client/API-docs/dns_alias_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_cname_add.html b/remoting_client/API-docs/dns_cname_add.html
index 71b585a68e..afef2bd75c 100644
--- a/remoting_client/API-docs/dns_cname_add.html
+++ b/remoting_client/API-docs/dns_cname_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_cname_update.html b/remoting_client/API-docs/dns_cname_update.html
index 568091c7db..f066633104 100644
--- a/remoting_client/API-docs/dns_cname_update.html
+++ b/remoting_client/API-docs/dns_cname_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_ds_add.html b/remoting_client/API-docs/dns_ds_add.html
new file mode 100644
index 0000000000..9a6ffdec04
--- /dev/null
+++ b/remoting_client/API-docs/dns_ds_add.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html><head><title>ISPCOnfig 3 remote API documentation</title>
+
+  
+
+  
+  
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+  <link rel="stylesheet" type="text/css" href="definitionen.css">
+  <style type="text/css">
+  </style></head>
+
+<body>
+<div style="padding:40px">
+<h1>dns_ds_add(<span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$params</span>);</h1>
+<br>
+<p class="headgrp">Description: </p>
+<p class="margin"> Adds a dns authoritative nameserver record if <em>type</em> is <em>ds</em>.</p><br>
+<p class="headgrp">Input Variables: </p> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$params</span></p>
+<p class="headgrp">Parameters (in <span class="var">$params</span>): </p>
+<p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
+<p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> active&nbsp;&nbsp;(<span class="paratype">enum('n','y')</span>)</p>
+<p class="margin"> stamp&nbsp;&nbsp;(<span class="paratype">timestamp</span>)</p>
+<p class="margin"> serial&nbsp;&nbsp;(<span class="paratype">int(10)</span>)</p>
+<p class="headgrp">Output: </p> 
+<p class="margin"> Returns the ID of the newly added ds resource record.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/API-docs/dns_ds_delete.html b/remoting_client/API-docs/dns_ds_delete.html
new file mode 100644
index 0000000000..6e54496d0a
--- /dev/null
+++ b/remoting_client/API-docs/dns_ds_delete.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html><head><title>ISPCOnfig 3 remote API documentation</title>
+
+  
+
+  
+  
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+  <link rel="stylesheet" type="text/css" href="definitionen.css">
+  <style type="text/css">
+  </style></head>
+
+<body>
+<div style="padding:40px">
+<h1>dns_ds_delete(<span class="var">$session_id</span>, <span class="var">$primary_id</span>);</h1>
+<br>
+<p class="headgrp">Description: </p>
+<p class="margin"> Deletes target dns ds resource record.</p><br>
+<p class="headgrp">Input Variables: </p> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$primary_id</span></p>
+<p class="headgrp">Parameters (in <span class="var">$params</span>): </p>
+<p class="margin"> None</p>
+<p class="headgrp">Output: </p> 
+<p class="margin"> Returns the number of deleted records.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/API-docs/dns_ds_get.html b/remoting_client/API-docs/dns_ds_get.html
new file mode 100644
index 0000000000..f8d8785b54
--- /dev/null
+++ b/remoting_client/API-docs/dns_ds_get.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html><head><title>ISPCOnfig 3 remote API documentation</title>
+
+  
+
+  
+  
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+  <link rel="stylesheet" type="text/css" href="definitionen.css">
+  <style type="text/css">
+  </style></head>
+
+<body>
+<div style="padding:40px">
+<h1>dns_ds_get(<span class="var">$session_id</span>, <span class="var">$primary_id</span>);</h1>
+<br>
+<p class="headgrp">Description: </p>
+<p class="margin"> Retrieves information about target dns ds resource record.</p><br>
+<p class="headgrp">Input Variables: </p> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$primary_id</span></p>
+<p class="headgrp">Parameters (in <span class="var">$params</span>): </p>
+<p class="margin"> None</p>
+<p class="headgrp">Output: </p> 
+<p class="margin"> Returns all fields and values of the chosen dns ds resource record.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/API-docs/dns_ds_update.html b/remoting_client/API-docs/dns_ds_update.html
new file mode 100644
index 0000000000..6b04a847b9
--- /dev/null
+++ b/remoting_client/API-docs/dns_ds_update.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html><head><title>ISPCOnfig 3 remote API documentation</title>
+
+  
+
+  
+  
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+  <link rel="stylesheet" type="text/css" href="definitionen.css">
+  <style type="text/css">
+  </style></head>
+
+<body>
+<div style="padding:40px">
+<h1>dns_ds_update(<span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$primary_id</span>, <span class="var">$params</span>);</h1>
+<br>
+<b>Description: </b>
+<p class="margin"> Updates an authoritative nameserver record if <em>type</em> is <em>ds</em>.</p><br>
+<b>Input Variables: </b> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$primary_id</span>, <span class="var">$params</span></p>
+<b>Parameters (in <span style= "color:#A17FFF">$params</span>): </b>
+<p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
+<p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> active&nbsp;&nbsp;(<span class="paratype">enum('n','y')</span>)</p>
+<p class="margin"> stamp&nbsp;&nbsp;(<span class="paratype">timestamp</span>)</p>
+<p class="margin"> serial&nbsp;&nbsp;(<span class="paratype">int(10)</span>)</p>
+<b>Output: </b> 
+<p class="margin"> Returns the number of affected rows.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/API-docs/dns_hinfo_add.html b/remoting_client/API-docs/dns_hinfo_add.html
index c1bac26bdd..acd89b3d34 100644
--- a/remoting_client/API-docs/dns_hinfo_add.html
+++ b/remoting_client/API-docs/dns_hinfo_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_hinfo_update.html b/remoting_client/API-docs/dns_hinfo_update.html
index b2a266cef7..463b25b84a 100644
--- a/remoting_client/API-docs/dns_hinfo_update.html
+++ b/remoting_client/API-docs/dns_hinfo_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_mx_add.html b/remoting_client/API-docs/dns_mx_add.html
index d2c08877fe..e306b81a18 100644
--- a/remoting_client/API-docs/dns_mx_add.html
+++ b/remoting_client/API-docs/dns_mx_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_mx_update.html b/remoting_client/API-docs/dns_mx_update.html
index 81acd1f706..d75a8343d3 100644
--- a/remoting_client/API-docs/dns_mx_update.html
+++ b/remoting_client/API-docs/dns_mx_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_naptr_add.html b/remoting_client/API-docs/dns_naptr_add.html
index d691d65b3a..a8b5d966bf 100644
--- a/remoting_client/API-docs/dns_naptr_add.html
+++ b/remoting_client/API-docs/dns_naptr_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_naptr_update.html b/remoting_client/API-docs/dns_naptr_update.html
index 97f40f056f..98c4f03183 100644
--- a/remoting_client/API-docs/dns_naptr_update.html
+++ b/remoting_client/API-docs/dns_naptr_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_ns_add.html b/remoting_client/API-docs/dns_ns_add.html
index d231d37e50..8fd9564bbb 100644
--- a/remoting_client/API-docs/dns_ns_add.html
+++ b/remoting_client/API-docs/dns_ns_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_ns_update.html b/remoting_client/API-docs/dns_ns_update.html
index fa35029efd..32258a1504 100644
--- a/remoting_client/API-docs/dns_ns_update.html
+++ b/remoting_client/API-docs/dns_ns_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_ptr_add.html b/remoting_client/API-docs/dns_ptr_add.html
index 8e9a29a74a..d2331660d2 100644
--- a/remoting_client/API-docs/dns_ptr_add.html
+++ b/remoting_client/API-docs/dns_ptr_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_ptr_update.html b/remoting_client/API-docs/dns_ptr_update.html
index 026a44eee1..25097708ae 100644
--- a/remoting_client/API-docs/dns_ptr_update.html
+++ b/remoting_client/API-docs/dns_ptr_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_rp_add.html b/remoting_client/API-docs/dns_rp_add.html
index 3f2bde4fce..e20f5186c3 100644
--- a/remoting_client/API-docs/dns_rp_add.html
+++ b/remoting_client/API-docs/dns_rp_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_rp_update.html b/remoting_client/API-docs/dns_rp_update.html
index a1adbd289a..1e7a92db1f 100644
--- a/remoting_client/API-docs/dns_rp_update.html
+++ b/remoting_client/API-docs/dns_rp_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_srv_add.html b/remoting_client/API-docs/dns_srv_add.html
index 342965687b..5a2649cadb 100644
--- a/remoting_client/API-docs/dns_srv_add.html
+++ b/remoting_client/API-docs/dns_srv_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_srv_update.html b/remoting_client/API-docs/dns_srv_update.html
index d7caef2d60..8a2a6107bf 100644
--- a/remoting_client/API-docs/dns_srv_update.html
+++ b/remoting_client/API-docs/dns_srv_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_txt_add.html b/remoting_client/API-docs/dns_txt_add.html
index 11c3d89463..d99f790846 100644
--- a/remoting_client/API-docs/dns_txt_add.html
+++ b/remoting_client/API-docs/dns_txt_add.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/API-docs/dns_txt_update.html b/remoting_client/API-docs/dns_txt_update.html
index 9bb7f6ac30..374bede8fb 100644
--- a/remoting_client/API-docs/dns_txt_update.html
+++ b/remoting_client/API-docs/dns_txt_update.html
@@ -22,7 +22,7 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> zone&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ptr','rp','srv','txt')</span>)</p>
+<p class="margin"> type&nbsp;&nbsp;(<span class="paratype">enum('a','aaaa','alias','cname','hinfo','mx','naptr','ns','ds','ptr','rp','srv','txt')</span>)</p>
 <p class="margin"> data&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
 <p class="margin"> aux&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> ttl&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
diff --git a/remoting_client/examples/dns_ds_add.php b/remoting_client/examples/dns_ds_add.php
new file mode 100644
index 0000000000..b673150ec1
--- /dev/null
+++ b/remoting_client/examples/dns_ds_add.php
@@ -0,0 +1,47 @@
+<?php
+
+require 'soap_config.php';
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+		'uri'      => $soap_uri,
+		'trace' => 1,
+		'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username, $password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+
+	//* Set the function parameters. 
+	//* 'data' are given for example MUST be edited with appropriate DS record
+	$client_id = 1;
+	$params = array(
+		'server_id' => 1,
+		'zone' => 7,
+		'name' => 'nameserver',
+		'type' => 'ds',
+		'data' => '13456 13 2 0EXD84534054012XFN7880EDFR23Z56Y34GRC64KOY704DFTEV87AE A34ZDC45',
+		'aux' => '0',
+		'ttl' => '3600',
+		'active' => 'y',
+		'stamp' => 'CURRENT_TIMESTAMP',
+		'serial' => '1',
+	);
+
+	$id = $client->dns_ds_add($session_id, $client_id, $params);
+
+	echo "ID: ".$id."<br>";
+
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+
+
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
diff --git a/remoting_client/examples/dns_ds_delete.php b/remoting_client/examples/dns_ds_delete.php
new file mode 100644
index 0000000000..28794ca6fe
--- /dev/null
+++ b/remoting_client/examples/dns_ds_delete.php
@@ -0,0 +1,35 @@
+<?php
+
+require 'soap_config.php';
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+		'uri'      => $soap_uri,
+		'trace' => 1,
+		'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username, $password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+
+	//* Parameters
+	$id = 8;
+
+
+	$affected_rows = $client->dns_ds_delete($session_id, $id);
+
+	echo "Number of records that have been deleted: ".$affected_rows."<br>";
+
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+
+
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
diff --git a/remoting_client/examples/dns_ds_get.php b/remoting_client/examples/dns_ds_get.php
new file mode 100644
index 0000000000..6dffa18c10
--- /dev/null
+++ b/remoting_client/examples/dns_ds_get.php
@@ -0,0 +1,34 @@
+<?php
+
+require 'soap_config.php';
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+		'uri'      => $soap_uri,
+		'trace' => 1,
+		'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username, $password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+
+	//* Set the function parameters.
+	$id = 8;
+
+	$dns_record = $client->dns_ds_get($session_id, $id);
+
+	print_r($dns_record);
+
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+
+
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
diff --git a/remoting_client/examples/dns_ds_update.php b/remoting_client/examples/dns_ds_update.php
new file mode 100644
index 0000000000..94f5cb10a4
--- /dev/null
+++ b/remoting_client/examples/dns_ds_update.php
@@ -0,0 +1,42 @@
+<?php
+
+require 'soap_config.php';
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+		'uri'      => $soap_uri,
+		'trace' => 1,
+		'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username, $password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+
+	//* Parameters
+	$id = 8;
+	$client_id = 1;
+
+
+	//* Get the dns record
+	$dns_record = $client->dns_ds_get($session_id, $id);
+
+	//* Change active to inactive
+	$dns_record['active'] = 'n';
+
+	$affected_rows = $client->dns_ds_update($session_id, $client_id, $id, $dns_record);
+
+	echo "Number of records that have been changed in the database: ".$affected_rows."<br>";
+
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+
+
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
-- 
GitLab