Ascio Web Service v3

Perl CreateOrder - NameserverUpdate

Replaces the nameserver 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 Tech Contact, DnsSec and Nameservers in one request.

For .com, .net and some other TLDs glue records are needed. Please contact support for help.

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

Perl example

use SOAP::Lite;
use Date::Format;
$proxy = "https://aws.demo.ascio.com/v3/AscioService.svc";
$namespace = "http://www.ascio.com/2007/01";
$soap = SOAP::Lite
    ->on_action( sub { "CreateOrder" } )
    ->proxy($proxy)
    ->ns("http://www.ascio.com/2013/02", "v3")
    ->ns("http://www.ascio.com/2013/02/AscioService", "service");
    
# Please enter your ascio-credentials here

my $header = SOAP::Header->new(
            name =>"v3:SecurityHeaderDetails",
            value => {"v3:Account" => "username", "v3:Password" =>"password"} 
        );
$soap->autotype(0);
$method = SOAP::Data->name("service:CreateOrder")->attr({xmlns => $namespace});

#KeyValue
$keyValue =  \SOAP::Data->value(
	SOAP::Data->name('v3:Key','Title'),
	SOAP::Data->name('v3:Value','Mr.')
);

#Extensions
$techExtensions =  \SOAP::Data->value(
);

#Contact
$tech =  \SOAP::Data->value(
	SOAP::Data->name('v3:FirstName','John'),
	SOAP::Data->name('v3:LastName','Doe'),
	SOAP::Data->name('v3:OrgName','Ascio'),
	SOAP::Data->name('v3:Address1','Address1Test'),
	SOAP::Data->name('v3:Address2','Address2Test'),
	SOAP::Data->name('v3:City','CityTest'),
	SOAP::Data->name('v3:State','StateTest'),
	SOAP::Data->name('v3:PostalCode','888349'),
	SOAP::Data->name('v3:CountryCode','DK'),
	SOAP::Data->name('v3:Phone','+45.123456789'),
	SOAP::Data->name('v3:Fax','+45.987654321'),
	SOAP::Data->name('v3:Email','test@testemail.com'),
	SOAP::Data->name('v3:Type','owner'),
	SOAP::Data->name('v3:Details','DetailsTest'),
	SOAP::Data->name('v3:OrganisationNumber','OrganisationNumberTest'),
	SOAP::Data->name('v3:Extensions',$techExtensions)
);

#NameServer
$nameServer1 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','ns1.ascio.net'),
	SOAP::Data->name('v3:IpAddress','64.98.148.24'),
	SOAP::Data->name('v3:IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer2 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','ns2.ascio.net'),
	SOAP::Data->name('v3:IpAddress','216.40.47.100'),
	SOAP::Data->name('v3:IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer3 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','ns3.ascio.net'),
	SOAP::Data->name('v3:IpAddress','64.98.148.25'),
	SOAP::Data->name('v3:IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer4 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','ns4.ascio.net'),
	SOAP::Data->name('v3:IpAddress','216.40.47.101'),
	SOAP::Data->name('v3:IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer5 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer6 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer7 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer8 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer9 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer10 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer11 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServer
$nameServer12 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123'),
	SOAP::Data->name('v3:HostName','HostNameTest'),
	SOAP::Data->name('v3:IpAddress','IpAddressTest'),
	SOAP::Data->name('v3:IpV6Address','IpV6AddressTest'),
	SOAP::Data->name('v3:Details','DetailsTest')
);

#NameServers
$nameServers =  \SOAP::Data->value(
	SOAP::Data->name('v3:NameServer1',$nameServer1),
	SOAP::Data->name('v3:NameServer2',$nameServer2),
	SOAP::Data->name('v3:NameServer3',$nameServer3),
	SOAP::Data->name('v3:NameServer4',$nameServer4),
	SOAP::Data->name('v3:NameServer5',$nameServer5),
	SOAP::Data->name('v3:NameServer6',$nameServer6),
	SOAP::Data->name('v3:NameServer7',$nameServer7),
	SOAP::Data->name('v3:NameServer8',$nameServer8),
	SOAP::Data->name('v3:NameServer9',$nameServer9),
	SOAP::Data->name('v3:NameServer10',$nameServer10),
	SOAP::Data->name('v3:NameServer11',$nameServer11),
	SOAP::Data->name('v3:NameServer12',$nameServer12)
);

#DnsSecKey
$dnsSecKey1 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123')
);

#DnsSecKey
$dnsSecKey2 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123')
);

#DnsSecKey
$dnsSecKey3 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123')
);

#DnsSecKey
$dnsSecKey4 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123')
);

#DnsSecKey
$dnsSecKey5 =  \SOAP::Data->value(
	SOAP::Data->name('v3:Handle','JD123')
);

#DnsSecKeys
$dnsSecKeys =  \SOAP::Data->value(
	SOAP::Data->name('v3:DnsSecKey1',$dnsSecKey1),
	SOAP::Data->name('v3:DnsSecKey2',$dnsSecKey2),
	SOAP::Data->name('v3:DnsSecKey3',$dnsSecKey3),
	SOAP::Data->name('v3:DnsSecKey4',$dnsSecKey4),
	SOAP::Data->name('v3:DnsSecKey5',$dnsSecKey5)
);

#Domain
$domain =  \SOAP::Data->value(
	SOAP::Data->name('v3:Name','ascio-is-great.com'),
	SOAP::Data->name('v3:Tech',$tech),
	SOAP::Data->name('v3:NameServers',$nameServers),
	SOAP::Data->name('v3:DnsSecKeys',$dnsSecKeys),
	SOAP::Data->name('v3:MasterNameServerIp','MasterNameServerIpTest')
);

#DomainOrderRequest
$request =  \SOAP::Data->value(
	SOAP::Data->name('v3:Type','NameserverUpdate'),
	SOAP::Data->name('v3:TransactionComment','TransactionCommentTest'),
	SOAP::Data->name('v3:Domain',$domain)
);
@query = (
	SOAP::Data->name("service:request" => $request)->attr({"xsi:type" => "v3:DomainOrderRequest"})
);
$result = $soap->call($method => @query, $header);
unless ($result->fault) {
	$response = $result->valueof("//CreateOrderResponse/CreateOrderResult");
	print "ResultCode : $response->{'ResultCode'}\r\n";
	print "Message : $response->{'ResultMessage'}\r\n";
	print "Values: ", join(", ", $result->valueof("//CreateOrderResponse/CreateOrderResult/Errors/[>0]")), "\n";
	if ($response->{"ResultCode"} == 200) {
		$order = $result->valueof("//CreateOrderResponse/order");
		print "OrderId : $order->{'OrderId'}\r\n";
	}
}
else {
	print join ", ",
	$result->faultcode,
	$result->faultstring,
	$result->faultdetail;
}
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.