Ascio Web Service v3

PHP 5 Classes CreateOrder - NameserverUpdate (Nameserver Update)

Replaces the DnsSec with a new handle. There are 2 ways to submit the new Nameserver:

  • Submit a Handle-ID. The handle linked to the domain will be replaced
  • Submit new data. A new handle will be created. The handle linked to the domain will be replaced

With the Nameserver Update, it is possible to change DnsSec.

CreateOrderResponse CreateOrder(SecurityHeaderDetails $securityHeader,CreateOrderRequest $request)

Response codes

ResultCodeMessageValue
200Order validated
200Order received
400Order not validatedMessages
401Authorization failed
405Access denied

CreateOrder Request

PropertyType
request

CreateOrderResponse

PropertyDescription
CreateOrderResult
OrderInfo
ResultCodeExample: 1
ResultMessage
Errors

Used in Classes

PropertyValue
OrderTypeNameserverUpdate
requestDomainOrderRequest
Examplednssec

PHP 5 Classes example

<?php
namespace ascio\v3\examples;
require("../service/autoload.php");
require("../../lib/AscioConfig.php");
use ascio\v3 as ascio;
use ascio\lib as lib;
function nameserverUpdateExample() {
	$config = new lib\Config();
	$env = $config->get("testing"); //testing or live
	$credentials = array("Account"=>$env->getAccount(), "Password" => $env->getPassword());
	$headers = [];
	$headers[] = new \SoapHeader("http://www.ascio.com/2013/02","SecurityHeaderDetails", $credentials, false);
	$headers[] = new \SoapHeader("http://www.ascio.com/2013/02","ImpersonationHeaderDetails", ["TransactionAccount" => "mysubaccount"], false);	
	$ascioClient = new ascio\AscioService(array("trace" => true),$env->getWsdl("v3"));
	$ascioClient->__setSoapHeaders($headers);

	$nameServer1 =  new ascio\NameServer();
	$nameServer1->setHandle("JD123");
	$nameServer1->setHostName("ns1.ascio.net");
	$nameServer1->setIpAddress("64.98.148.24");
	$nameServer1->setIpV6Address("xxxx:xxxx:xxx:xxx:xxxx");
	$nameServer1->setDetails("DetailsTest");

	$nameServer2 =  new ascio\NameServer();
	$nameServer2->setHandle("JD123");
	$nameServer2->setHostName("ns2.ascio.net");
	$nameServer2->setIpAddress("216.40.47.100");
	$nameServer2->setIpV6Address("xxxx:xxxx:xxx:xxx:xxxx");
	$nameServer2->setDetails("DetailsTest");

	$nameServer3 =  new ascio\NameServer();
	$nameServer3->setHandle("JD123");
	$nameServer3->setHostName("ns3.ascio.net");
	$nameServer3->setIpAddress("64.98.148.25");
	$nameServer3->setIpV6Address("xxxx:xxxx:xxx:xxx:xxxx");
	$nameServer3->setDetails("DetailsTest");

	$nameServer4 =  new ascio\NameServer();
	$nameServer4->setHandle("JD123");
	$nameServer4->setHostName("ns4.ascio.net");
	$nameServer4->setIpAddress("216.40.47.101");
	$nameServer4->setIpV6Address("xxxx:xxxx:xxx:xxx:xxxx");
	$nameServer4->setDetails("DetailsTest");

	$nameServer5 =  new ascio\NameServer();
	$nameServer5->setHandle("JD123");
	$nameServer5->setHostName("HostNameTest");
	$nameServer5->setIpAddress("IpAddressTest");
	$nameServer5->setIpV6Address("IpV6AddressTest");
	$nameServer5->setDetails("DetailsTest");

	$nameServer6 =  new ascio\NameServer();
	$nameServer6->setHandle("JD123");
	$nameServer6->setHostName("HostNameTest");
	$nameServer6->setIpAddress("IpAddressTest");
	$nameServer6->setIpV6Address("IpV6AddressTest");
	$nameServer6->setDetails("DetailsTest");

	$nameServer7 =  new ascio\NameServer();
	$nameServer7->setHandle("JD123");
	$nameServer7->setHostName("HostNameTest");
	$nameServer7->setIpAddress("IpAddressTest");
	$nameServer7->setIpV6Address("IpV6AddressTest");
	$nameServer7->setDetails("DetailsTest");

	$nameServer8 =  new ascio\NameServer();
	$nameServer8->setHandle("JD123");
	$nameServer8->setHostName("HostNameTest");
	$nameServer8->setIpAddress("IpAddressTest");
	$nameServer8->setIpV6Address("IpV6AddressTest");
	$nameServer8->setDetails("DetailsTest");

	$nameServer9 =  new ascio\NameServer();
	$nameServer9->setHandle("JD123");
	$nameServer9->setHostName("HostNameTest");
	$nameServer9->setIpAddress("IpAddressTest");
	$nameServer9->setIpV6Address("IpV6AddressTest");
	$nameServer9->setDetails("DetailsTest");

	$nameServer10 =  new ascio\NameServer();
	$nameServer10->setHandle("JD123");
	$nameServer10->setHostName("HostNameTest");
	$nameServer10->setIpAddress("IpAddressTest");
	$nameServer10->setIpV6Address("IpV6AddressTest");
	$nameServer10->setDetails("DetailsTest");

	$nameServer11 =  new ascio\NameServer();
	$nameServer11->setHandle("JD123");
	$nameServer11->setHostName("HostNameTest");
	$nameServer11->setIpAddress("IpAddressTest");
	$nameServer11->setIpV6Address("IpV6AddressTest");
	$nameServer11->setDetails("DetailsTest");

	$nameServer12 =  new ascio\NameServer();
	$nameServer12->setHandle("JD123");
	$nameServer12->setHostName("HostNameTest");
	$nameServer12->setIpAddress("IpAddressTest");
	$nameServer12->setIpV6Address("IpV6AddressTest");
	$nameServer12->setDetails("DetailsTest");

	$nameServers =  new ascio\NameServers();
	$nameServers->setNameServer1($nameServer1);
	$nameServers->setNameServer2($nameServer2);
	$nameServers->setNameServer3($nameServer3);
	$nameServers->setNameServer4($nameServer4);
	$nameServers->setNameServer5($nameServer5);
	$nameServers->setNameServer6($nameServer6);
	$nameServers->setNameServer7($nameServer7);
	$nameServers->setNameServer8($nameServer8);
	$nameServers->setNameServer9($nameServer9);
	$nameServers->setNameServer10($nameServer10);
	$nameServers->setNameServer11($nameServer11);
	$nameServers->setNameServer12($nameServer12);

	$dnsSecKey1 =  new ascio\DnsSecKey();
	$dnsSecKey1->setHandle("JD123");

	$dnsSecKey2 =  new ascio\DnsSecKey();
	$dnsSecKey2->setHandle("JD123");

	$dnsSecKey3 =  new ascio\DnsSecKey();
	$dnsSecKey3->setHandle("JD123");

	$dnsSecKey4 =  new ascio\DnsSecKey();
	$dnsSecKey4->setHandle("JD123");

	$dnsSecKey5 =  new ascio\DnsSecKey();
	$dnsSecKey5->setHandle("JD123");

	$dnsSecKeys =  new ascio\DnsSecKeys();
	$dnsSecKeys->setDnsSecKey1($dnsSecKey1);
	$dnsSecKeys->setDnsSecKey2($dnsSecKey2);
	$dnsSecKeys->setDnsSecKey3($dnsSecKey3);
	$dnsSecKeys->setDnsSecKey4($dnsSecKey4);
	$dnsSecKeys->setDnsSecKey5($dnsSecKey5);

	$domain =  new ascio\Domain();
	$domain->setNameServers($nameServers);
	$domain->setDnsSecKeys($dnsSecKeys);
	$domain->setMasterNameServerIp("MasterNameServerIpTest");

	$request =  new ascio\DomainOrderRequest();
	$request->setType(ascio\OrderType::NameserverUpdate);
	$request->setTransactionComment("TransactionCommentTest");
	$request->setDomain($domain);
	echo "start validate\n";
	$validateOrder = new  ascio\ValidateOrder($request);
	try {
		$response = $ascioClient->ValidateOrder($validateOrder);
	} catch (\Exception $e) {
		echo ("[".$e->faultcode . "] ". $e->faultstring);
		return;
	}
	echo "end validate\n";
	
	if ($response->getValidateOrderResult()->getResultCode() == 200) {
		echo "Validation: OK\r\n";
		try {
			$createOrderResponse = $ascioClient->CreateOrder(new ascio\CreateOrder($request));
		} catch (\Exception $e) {
			echo ("[".$e->faultcode . "] ". $e->faultstring);
			return;
		}
		echo "Create Order: ".$createOrderResponse->CreateOrderResult->getResultCode() . " " . $createOrderResponse->CreateOrderResult->getResultMessage() . "\r\n";
		if ($createOrderResponse->CreateOrderResult->getResultCode() == 200) {
			echo "OrderId : " . $createOrderResponse->CreateOrderResult->getOrderInfo()->getOrderId() . "\r\n";
			echo "Order Status : " . $createOrderResponse->CreateOrderResult->getOrderInfo()->getStatus() . "\r\n";
		} else {
			echo ($response->CreateOrderResult->getResultMessage()."\n");
			foreach($createOrderResponse->CreateOrderResult->getErrors() as $error) {
				echo $error."\n";
				return $response;
			}
		}
		return $createOrderResponse;
	} else {
		echo ($response->getValidateOrderResult()->getResultMessage()."\n");
		if ($response->getValidateOrderResult()->getErrors()) {
			foreach($response->getValidateOrderResult()->getErrors()->getString() as $error) {
				 echo $error."\n";
			}
		}
		return $response;
	}
}
nameserverUpdateExample();
WSDL for AWS v3
https://aws.demo.ascio.com/v3/aws.wsdl (OTE)
https://aws.ascio.com/v3/aws.wsdl (Live)
Please configure the IP-Whitelisting in the portal/demo-portal.