IO-EPP
view release on metacpan or search on metacpan
lib/IO/EPP/Verisign.pm view on Meta::CPAN
For more information, see L<IO::EPP::Base/get_contact_info>.
An Example
my ( $answ, $msg ) = make_request( 'get_contact_info', { tld => 'name', cont_id => '5555LECTU555' } );
# answer
{
'int' => {
'city' => 'Moscow',
'country_code' => 'RU',
'name' => 'Protection of Private Person',
'postcode' => '125000',
'addr' => 'PO box 01, Protection Service',
'state' => undef
},
'roid' => '22222100_CONTACT_NAME-VRSN',
'cre_date' => '2020-01-11 11:11:11',
'email' => [
'my@private.ru'
],
'upd_date' => '2020-01-11 11:11:11',
'fax' => [
'+7.4951111111'
],
'creater' => 'login',
'authinfo' => 'HF+B5ON$,qUDkyYW',
'code' => '1000',
'owner' => 'LOGIN',
'msg' => 'Command completed successfully',
'phone' => [
'+7.4951111111'
],
'updater' => 'login',
'cont_id' => '5555LECTU555',
'statuses' => {
'ok' => '+'
}
};
=cut
sub get_contact_info {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::get_contact_info( $params );
}
=head2 update_contact
.com/.net/.edu zones are not currently supported.
For more information, see L<IO::EPP::Base/update_contact>.
=cut
sub update_contact {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::update_contact( $params );
}
=head2 delete_contact
.com/.net/.edu zones are not currently supported.
For more information, see L<IO::EPP::Base/delete_contact>.
=cut
sub delete_contact {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::delete_contact( $params );
}
sub check_nss {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::check_nss( $params );
}
=head2 create_ns
Within a single server, all NS-s are shared, that is,
if you register NS for the .com tld, it will be available for the .net tld as well.
For details, see L<IO::EPP::Base/create_ns>.
=cut
sub create_ns {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::create_ns( $params );
}
sub get_ns_info {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::get_ns_info( $params );
}
sub update_ns {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
$params->{no_empty_chg} = 1 unless $params->{chg};
return $self->SUPER::update_ns( $params );
}
sub delete_ns {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::delete_ns( $params );
}
=head2 check_domains
With a single request, you can check availability in all zones of this server at once,
if they have accreditation
In the example, accreditation is not available in the .edu tld.
The .info tld belongs to a different registry.
my ( $answ, $msg ) = make_request( 'check_domains', {
tld => 'com',
domains => [ 'qwerty.com', 'bjdwferbkr-e3jd0hf.net', 'bjk8bj-kewew.edu', 'xn--xx.com', 'hiebw.info' ]
} );
# answer
{
'msg' => 'Command completed successfully',
'qwerty.com' => {
'reason' => 'Domain exists',
'avail' => '0'
},
'hiebw.info' => {
'reason' => 'Not an authoritative TLD',
'avail' => '0'
},
'bjk8bj-kewew.edu' => {
'reason' => 'Not authorized',
'avail' => '0'
},
'code' => '1000',
'xn--xx.com' => {
'reason' => 'Invalid punycode encoding',
'avail' => '0'
},
'bjdwferbkr-e3jd0hf.net' => {
'avail' => '1'
}
};
For details, see L<IO::EPP::Base/check_domains>.
=cut
lib/IO/EPP/Verisign.pm view on Meta::CPAN
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::transfer( $params );
}
=head2 get_domain_info
For details, see L<IO::EPP::Base/check_domains>.
An Example
my ( $answ, $msg, $conn ) = make_request( 'get_domain_info', { dname => 'llll.com' } );
# answer
{
'msg' => 'Command completed successfully',
'owner' => '1000',
'hosts' => [
'ns2.llll.com',
'ns1.llll.com'
],
'roid' => '2222489946_DOMAIN_COM-VRSN',
'exp_date' => '2020-01-01 01:01:01',
'cre_date' => '2018-01-01 01:01:01',
'nss' => [
'ns1.rrr.ru',
'ns2.rrr.ru'
],
'dname' => 'llll.com',
'updater' => 'login',
'upd_date' => '2019-12-30 13:17:54',
'creater' => 'login',
'authinfo' => 'AAA:8k.o5*p"_pAA',
'statuses' => {
'clientTransferProhibited' => '+'
},
'code' => 1000
};
=cut
sub get_domain_info {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::get_domain_info( $params );
}
sub renew_domain {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::renew_domain( $params );
}
sub update_domain {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::update_domain( $params );
}
=head2 delete_domain
You can delete a domain only if it does not have NS-s that are used by other domains.
If there are such NS-s, they should be renamed using the C<< update_ns( chg => { new_name => 'new.ns.xxxx.com' } ) >>,
For details see L<IO::EPP::Base/update_ns>.
For more information about C<delete>, see L<IO::EPP::Base/delete_domain>
=cut
sub delete_domain {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext};
return $self->SUPER::delete_domain( $params );
}
=head2 restore_domain
First call of restore â request
INPUT:
params with key:
C<dname> â domain name
OUTPUT:
see L<IO::EPP::Base/simple_request>.
=cut
sub restore_domain {
my ( $self, $params ) = @_;
$params->{extension} = $self->{namestore_ext} .
" <rgp:update $rgp_ext>
<rgp:restore op=\"request\"/>
</rgp:update>\n";
return $self->SUPER::update_domain( $params );
}
=head2 confirmations_restore_domain
Secont call of restore â confirmation
INPUT:
params with keys:
( run in 0.583 second using v1.01-cache-2.11-cpan-f56aa216473 )