Ascio Web Service v2
Perl CreateOrder
OrderTypes
Contact_Update | Update contacts: Admin, Tech, Billing and Reseller. Please provice at least Admin,Tech and Billing contacts for this OrderType. You need to use Registrant_Details_Update or Owner_Change to update the registrant. Contact_Update example |
---|---|
Change_Locks | You can change the TransferLock, DeleteLock and UpdateLocks. TransferLock: The domain can't be transfered. DeleteLock: The domain can't be deleted. UpdateLock: The domain can't be updated. |
Delete_Domain | The domain is deleted immediatly. The recommend process is to expire the domain instead of deleting it. |
Registrant_Details_Update | You can change all details, that don't change the identity of the person/company. Don't change: FirstName, LastName, OrgName, RegistrantNumber. Registrant_Details_Update example |
Expire_Domain | The domain is deleted at the expire-date (+threshold). Ascio uses AutoRenew, so you need to explicitly expire the domain, if you don't want it to be auto-renewed. The process is: Register or Transfer, Expire. This will stop the domain from being autorenewed. If the domain is expiring, you need to use unexpire, if you want the domain to be renewed at the expire-date. Don't use Renew to unexpire a domain |
Nameserver_Update | For updating nameserver. Please be aware that the glue-record must be set properly for some TLDs. Please contact partnerservice if you need help with this. Nameserver_Update example |
Owner_Change | Change the owner of the domain. Do this, if Registrant Details Update doesn't work, because important social data has changed. Owner_Change example |
Queue_Domain | Queue the domain. Please specify the Queue-Phase in Order.Options. You can find more information about the Queue-Phase in the TLD-Kit. |
Register_Domain | Registers a domain. |
Renew_Domain | Add xxx Years to your expire-date. Must be allowed by the registry. Please read the TLD-Kit to see details. |
Restore_Domain | Restores a deleted domains. Is only possible for weeks after deletion. |
Transfer_Domain | Transfers a domain. You need to provide full data, that is the same as the original data. If trade is possible, then you can provide different data and an owner-change is done during the transfer. Transfers without data are possible for: com, net, org, biz, info, us, cc, cn, com.cn, net.cn, org.cn, tv some others. |
Unexpire_Domain | Unexpire a domain that is expiring. If you want to simulate auto-expire, then use unexpire for your renews. |
Transfer_Away | The transfer away is triggered by Ascio. Only exception: If you need to set a registrar-id like for co.uk, you can use the Transfer_Away and set the new registrar-id in the options. |
Autorenew_Domain | This order-type is triggered by Ascio. For ICANN domains it is used, to spawn the ERRP process. If your planning to send you own ERRP messages, you can wait for our autorenew and then send it. UploadMessage will prevent Ascio from sending out ERRP mails. |
Autodelete_Domain | This order-type is triggered by Ascio. For ICANN domains it is used, to spawn the ERRP process. If your planning to send you own ERRP messages, you can wait for our autorenew and then send it. UploadMessage will prevent Ascio from sending out ERRP mails. |
Defensive_Registration | A blocking registration that isn't delegated |
Name_Watch | |
Domain_Details_Update | Update domain properties. Linked handles like Contacts, Nameservers and other Objects can't be modified with this command. |
Import_Domain | |
Partner_Change | Move a domain to another Ascio account. Please contact Partnerservice to the the permissions. |
Support | |
DeQueue | |
Update_AuthInfo | Update the AuthCode for the domain. Normally the Code is generated by Ascio, but for some TLDs, like .de you need to provide the Authcode with the order |
Response CreateOrder(string sessionId,Order order)
Response codes
ResultCode | Message | Value |
---|---|---|
200 | Order validated | |
200 | Order received | |
400 | Order not validated | Messages |
401 | Authorization failed | |
405 | Access denied |
CreateOrder Request
Property | Description |
---|---|
sessionId | Example: o58t9fjgw9bjarp6q7byv13e |
order |
CreateOrderResponse
Property |
---|
CreateOrderResult |
order |
Perl example
use SOAP::Lite;
use Date::Format;
$proxy = "https://aws.demo.ascio.com/2012/01/01/AscioService.svc";
$namespace = "http://www.ascio.com/2007/01";
$soap = SOAP::Lite->on_action( sub { "http://www.ascio.com/2007/01/IOrderService/CreateOrder" } )->proxy($proxy);
$soap->autotype(0);
$method = SOAP::Data->name("CreateOrder")->attr({xmlns => $namespace});
#Registrant
$registrant = \SOAP::Data->value(
SOAP::Data->name('Name','ascio-is-great.com'),
SOAP::Data->name('OrgName','Ascio'),
SOAP::Data->name('Address1','Address1Test'),
SOAP::Data->name('Address2','Address2Test'),
SOAP::Data->name('City','CityTest'),
SOAP::Data->name('State','StateTest'),
SOAP::Data->name('PostalCode','888349'),
SOAP::Data->name('CountryCode','DK'),
SOAP::Data->name('Email',"administrator@ascio-test-domain.com"),
SOAP::Data->name('Phone','+45.123456789'),
SOAP::Data->name('Fax','+45.987654321'),
SOAP::Data->name('RegistrantType','C1'),
SOAP::Data->name('VatNumber','VatNumberTest'),
SOAP::Data->name('NexusCategory','NexusCategoryTest'),
SOAP::Data->name('RegistrantNumber','abc123445'),
SOAP::Data->name('Details','DetailsTest')
);
#Contact
$adminContact = \SOAP::Data->value(
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('Handle','JD123'),
SOAP::Data->name('FirstName','John'),
SOAP::Data->name('LastName','Doe'),
SOAP::Data->name('OrgName','Ascio'),
SOAP::Data->name('Address1','Address1Test'),
SOAP::Data->name('Address2','Address2Test'),
SOAP::Data->name('PostalCode','888349'),
SOAP::Data->name('City','CityTest'),
SOAP::Data->name('State','StateTest'),
SOAP::Data->name('CountryCode','DK'),
SOAP::Data->name('Email',"administrator@ascio-test-domain.com"),
SOAP::Data->name('Phone','+45.123456789'),
SOAP::Data->name('Fax','+45.987654321'),
SOAP::Data->name('Type','owner'),
SOAP::Data->name('Details','DetailsTest'),
SOAP::Data->name('OrganisationNumber','OrganisationNumberTest')
);
#Contact
$techContact = \SOAP::Data->value(
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('Handle','JD123'),
SOAP::Data->name('FirstName','John'),
SOAP::Data->name('LastName','Doe'),
SOAP::Data->name('OrgName','Ascio'),
SOAP::Data->name('Address1','Address1Test'),
SOAP::Data->name('Address2','Address2Test'),
SOAP::Data->name('PostalCode','888349'),
SOAP::Data->name('City','CityTest'),
SOAP::Data->name('State','StateTest'),
SOAP::Data->name('CountryCode','DK'),
SOAP::Data->name('Email',"administrator@ascio-test-domain.com"),
SOAP::Data->name('Phone','+45.123456789'),
SOAP::Data->name('Fax','+45.987654321'),
SOAP::Data->name('Type','owner'),
SOAP::Data->name('Details','DetailsTest'),
SOAP::Data->name('OrganisationNumber','OrganisationNumberTest')
);
#Contact
$billingContact = \SOAP::Data->value(
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('Handle','JD123'),
SOAP::Data->name('FirstName','John'),
SOAP::Data->name('LastName','Doe'),
SOAP::Data->name('OrgName','Ascio'),
SOAP::Data->name('Address1','Address1Test'),
SOAP::Data->name('Address2','Address2Test'),
SOAP::Data->name('PostalCode','888349'),
SOAP::Data->name('City','CityTest'),
SOAP::Data->name('State','StateTest'),
SOAP::Data->name('CountryCode','DK'),
SOAP::Data->name('Email',"administrator@ascio-test-domain.com"),
SOAP::Data->name('Phone','+45.123456789'),
SOAP::Data->name('Fax','+45.987654321'),
SOAP::Data->name('Type','owner'),
SOAP::Data->name('Details','DetailsTest'),
SOAP::Data->name('OrganisationNumber','OrganisationNumberTest')
);
#Contact
$resellerContact = \SOAP::Data->value(
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('Handle','JD123'),
SOAP::Data->name('FirstName','John'),
SOAP::Data->name('LastName','Doe'),
SOAP::Data->name('OrgName','Ascio'),
SOAP::Data->name('Address1','Address1Test'),
SOAP::Data->name('Address2','Address2Test'),
SOAP::Data->name('PostalCode','888349'),
SOAP::Data->name('City','CityTest'),
SOAP::Data->name('State','StateTest'),
SOAP::Data->name('CountryCode','DK'),
SOAP::Data->name('Email',"administrator@ascio-test-domain.com"),
SOAP::Data->name('Phone','+45.123456789'),
SOAP::Data->name('Fax','+45.987654321'),
SOAP::Data->name('Type','owner'),
SOAP::Data->name('Details','DetailsTest'),
SOAP::Data->name('OrganisationNumber','OrganisationNumberTest')
);
#NameServer
$nameServer1 = \SOAP::Data->value(
SOAP::Data->name('HostName','ns1.ascio.net'),
SOAP::Data->name('IpAddress','64.98.148.24'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer2 = \SOAP::Data->value(
SOAP::Data->name('HostName','ns2.ascio.net'),
SOAP::Data->name('IpAddress','216.40.47.100'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer3 = \SOAP::Data->value(
SOAP::Data->name('HostName','ns3.ascio.net'),
SOAP::Data->name('IpAddress','64.98.148.25'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer4 = \SOAP::Data->value(
SOAP::Data->name('HostName','ns4.ascio.net'),
SOAP::Data->name('IpAddress','216.40.47.101'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','xxxx:xxxx:xxx:xxx:xxxx'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer5 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer6 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer7 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer8 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer9 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer10 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer11 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServer
$nameServer12 = \SOAP::Data->value(
SOAP::Data->name('HostName','HostNameTest'),
SOAP::Data->name('IpAddress','IpAddressTest'),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('IpV6Address','IpV6AddressTest'),
SOAP::Data->name('Details','DetailsTest')
);
#NameServers
$nameServers = \SOAP::Data->value(
SOAP::Data->name('NameServer1',$nameServer1),
SOAP::Data->name('NameServer2',$nameServer2),
SOAP::Data->name('NameServer3',$nameServer3),
SOAP::Data->name('NameServer4',$nameServer4),
SOAP::Data->name('NameServer5',$nameServer5),
SOAP::Data->name('NameServer6',$nameServer6),
SOAP::Data->name('NameServer7',$nameServer7),
SOAP::Data->name('NameServer8',$nameServer8),
SOAP::Data->name('NameServer9',$nameServer9),
SOAP::Data->name('NameServer10',$nameServer10),
SOAP::Data->name('NameServer11',$nameServer11),
SOAP::Data->name('NameServer12',$nameServer12)
);
#TradeMark
$trademark = \SOAP::Data->value(
SOAP::Data->name('Name','ascio-is-great.com'),
SOAP::Data->name('Country','DK'),
SOAP::Data->name('Date',time2str('%Y-%m-%dT%H:%M:%SZ', time, 'EST')),
SOAP::Data->name('Number','NumberTest'),
SOAP::Data->name('Type','owner'),
SOAP::Data->name('Contact','ContactTest'),
SOAP::Data->name('ContactLanguage','ContactLanguageTest'),
SOAP::Data->name('DocumentationLanguage','DocumentationLanguageTest'),
SOAP::Data->name('SecondContact','SecondContactTest'),
SOAP::Data->name('ThirdContact','ThirdContactTest'),
SOAP::Data->name('RegDate',time2str('%Y-%m-%dT%H:%M:%SZ', time, 'EST'))
);
#DnsSecKey
$dnsSecKey1 = \SOAP::Data->value(
SOAP::Data->name('Handle','JD123')
);
#DnsSecKey
$dnsSecKey2 = \SOAP::Data->value(
SOAP::Data->name('Handle','JD123')
);
#DnsSecKey
$dnsSecKey3 = \SOAP::Data->value(
SOAP::Data->name('Handle','JD123')
);
#DnsSecKey
$dnsSecKey4 = \SOAP::Data->value(
SOAP::Data->name('Handle','JD123')
);
#DnsSecKey
$dnsSecKey5 = \SOAP::Data->value(
SOAP::Data->name('Handle','JD123')
);
#DnsSecKeys
$dnsSecKeys = \SOAP::Data->value(
SOAP::Data->name('DnsSecKey1',$dnsSecKey1),
SOAP::Data->name('DnsSecKey2',$dnsSecKey2),
SOAP::Data->name('DnsSecKey3',$dnsSecKey3),
SOAP::Data->name('DnsSecKey4',$dnsSecKey4),
SOAP::Data->name('DnsSecKey5',$dnsSecKey5)
);
#Extension
$extension = \SOAP::Data->value(
SOAP::Data->name('Key','Title'),
SOAP::Data->name('Value','Mr.')
);
#Extensions
$extensions = \SOAP::Data->value(
);
#PrivacyProxy
$privacyProxy = \SOAP::Data->value(
SOAP::Data->name('Type','None'),
SOAP::Data->name('PrivacyAdmin','false'),
SOAP::Data->name('PrivacyTech','false'),
SOAP::Data->name('PrivacyBilling','false'),
SOAP::Data->name('Extensions',$extensions)
);
#Domain
$domain = \SOAP::Data->value(
SOAP::Data->name('DomainName','testdomain123.com'),
SOAP::Data->name('DomainHandle','DomainHandleTest'),
SOAP::Data->name('RegPeriod',1),
SOAP::Data->name('RenewPeriod',1),
SOAP::Data->name('Status','StatusTest'),
SOAP::Data->name('AuthInfo','X4FF!zu'),
SOAP::Data->name('ExpDate',time2str('%Y-%m-%dT%H:%M:%SZ', time, 'EST')),
SOAP::Data->name('EncodingType','EncodingTypeTest'),
SOAP::Data->name('DomainPurpose','DomainPurposeTest'),
SOAP::Data->name('Comment','CommentTest'),
SOAP::Data->name('TransferLock','Unlock'),
SOAP::Data->name('DeleteLock','Unlock'),
SOAP::Data->name('UpdateLock','Unlock'),
SOAP::Data->name('QueueType','QueueTypeTest'),
SOAP::Data->name('Registrant',$registrant),
SOAP::Data->name('AdminContact',$adminContact),
SOAP::Data->name('TechContact',$techContact),
SOAP::Data->name('BillingContact',$billingContact),
SOAP::Data->name('ResellerContact',$resellerContact),
SOAP::Data->name('NameServers',$nameServers),
SOAP::Data->name('Trademark',$trademark),
SOAP::Data->name('DnsSecKeys',$dnsSecKeys),
SOAP::Data->name('PrivacyProxy',$privacyProxy),
SOAP::Data->name('DomainType','DomainTypeTest'),
SOAP::Data->name('DiscloseSocialData','true')
);
#Order
$order = \SOAP::Data->value(
SOAP::Data->name('Type','NotSet'),
SOAP::Data->name('AccountReference','AccountReferenceTest'),
SOAP::Data->name('Status','NotSet'),
SOAP::Data->name('TransactionComment','TransactionCommentTest'),
SOAP::Data->name('Comments','RegistrarTag'),
SOAP::Data->name('Options','OptionsTest'),
SOAP::Data->name('LocalPresence','off'),
SOAP::Data->name('Batch','BatchTest'),
SOAP::Data->name('Documentation','DocumentationTest'),
SOAP::Data->name('Domain',$domain),
SOAP::Data->name('AgreedPrice',5000)
);
@query = (
SOAP::Data->name("sessionId" => $sessionId),
SOAP::Data->name("order" => $order)
);
$result = $soap->call($method => @query);
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 v2
https://aws.demo.ascio.com/2012/01/01/AscioService.wsdl (OTE)
https://aws.ascio.com/2012/01/01/AscioService.wsdl (Live)
Please configure the IP-Whitelisting in the portal/demo-portal.
https://aws.demo.ascio.com/2012/01/01/AscioService.wsdl (OTE)
https://aws.ascio.com/2012/01/01/AscioService.wsdl (Live)
Please configure the IP-Whitelisting in the portal/demo-portal.