NAME

Regru::API::Domain - REG.API v2 domain names management

VERSION

version 0.051

DESCRIPTION

REG.API domain names management methods such as applying registration, initiating transfer to REG.RU, update administrative contacts, placing bids on freeing domain names, retrive/update DNS servers for domain and many others.

ATTRIBUTES

namespace

Always returns the name of category: domain. For internal uses only.

REG.API METHODS

nop

For testing purposes. Scope: everyone. Typical usage:

$resp = $client->domain->nop(
    dname => 'sonic-screwdriver.com',
);

Returns success response.

More info at Domain management: nop.

get_prices

Get prices for domain registration/renewal in all available zones. Scope: everyone. Typical usage:

$resp = $client->domain->get_prices;

# or
$resp = $client->domain->get_prices(
    currency => 'USD',
);

Additional options might be passed to this method. Returns a list available zones and cost of domain registration/renewal onto the minimal required term.

More info at Domain management: get_prices.

get_suggest

Gets the domain names suggestions for given word or two (as additional parameter). Scope: partners. Typical usage:

$resp = $client->domain->get_suggest(
    word => 'teselecta',
    tlds => 'ru',
    tlds => 'com',
);

Returns a list of alternatives and its availability in given zones. Result set is limited to 100 items.

More info at Domain management: get_suggest.

get_premium

Gets a list of the premium domains available for registration. Scope: partners. Typical usage:

$resp = $client->domain->get_premium(
    tld     => 'ru',     # default zone
    tld     => 'orgcyr', # IDN @ .ORG
    limit   => 10,
);

Answer contains a list each element of it contains premium domain name and its price.

More info at Domain management: get_premium.

get_deleted

Gets a list of freeing domain names in zones .ru, .su and .рф. This one similar to the Deleted Domains page. Scope: partners. Typical usage:

$resp = $client->domain->get_deleted(
    tlds            => 'ru',            # look up .ru
    tlds            => 'su',            # look up .su
    deleted_from    => '2013-10-01',
    deleted_to      => '2013-11-01',
    min_pr          => 2,               # Google PR
    min_cy          => 1,               # Yandex CY
);

Answer will contains a field domains with a list of domain names that satisfied by request criteria. Also each element will includes domain status, first registration date, freeing date and values of ranks (Google PR and Yandex CY). Maximum returned elements in list equals to 50000.

More info at Domain management: get_deleted.

check

Use this method to check availability of a domain name for registration. Scope: partners. Typical usage:

$resp = $client->domain->check(
    domain_name => 'trenzalore.net',
);

# or
$resp = $client->domain->check(
    domains => [
        { dname => 'apalapucia.com' },
        { dname => 'gallifrey.ru' },
    ],
);

Response answer contains domains field with list of hashes providing information about domain names and their availability or error code.

More info at Domain management: check.

create

Apply for domain name registration. Scope: clients. Typical usage:

$resp = $client->domain->create(
    domain_name => 'messaline.ru',
    contacts => {
        # set of contact fields goes here (depends on zone)
        ...
    },
    nss => {
        ns0     => 'ns1.messaline.ru',
        ns0ip   => '172.16.10.1',       # The glue record for the name server at the same domain
        ns1     => 'ns2.messaline.com',
    },
);

Successful response will contains a list of domains and billing information.

More info at Domain management: create.

transfer

Apply for a transfer of a domain name from foreign registrar. Scope: clients. Typical usage:

$resp = $client->domain->transfer(
    authinfo    => 'f8gL-rGi/*8_VB',
    domain_name => 'midnight.net',
);

This method has request fields similar to #create method call. For the most part of the international zones such as .com, .net, .org should be provided transfer key by specifying parameter authinfo.

More info at Domain management: transfer.

get_rereg_data

Gets a list of freeing domain names and their details. Scope: partners. Typical usage:

$resp = $client->domain->get_rereg_data(
    min_pr      => 2,
    max_chars   => 5,
    sort        => 'price',
);

Returns a domain names list for the given parameters.

More info at Domain management: get_rereg_data.

set_rereg_bids

Places a bid or bids for the freeing domain names. Scope: clients. Typical usage:

$resp = $client->domain->set_rereg_bids(
    contacts => {
        # similar to apply domain name registration
        ...
    },
    nss => {
        # this one too
        ...
    },
    domains => [
        { dname => 'pyrovilia.su', price => 400 },
        { dname => 'saturnyne.ru', price => 225 },
    ],
);

Answer will be contains a list of domain names and their bid status. Additionally a payment status for the placed bids will be returned.

More info at Domain management: set_rereg_bids.

get_user_rereg_bids

Gets the bids placed on. Scope: clients. Typical usage:

$resp = $client->domain->get_user_rereg_bids;

Returns a list of a domain names for which user has placed bids on.

More info at Domain management: get_user_rereg_bids.

get_docs_upload_uri

Gets a link for uploading registrant identification documents (only for .RU, .SU and .РФ zones). Scope: clients. Typical usage:

$resp = $client->domain->get_docs_upload_uri(
    dname => 'test.ru',
);

Answer will be contains an url that should be used to upload documents.

More info at Domain management: get_docs_upload_uri.

update_contacts

Make changes of the domain name contact data. Scope: clients. Typical usage:

$resp = $client->domain->update_contacts(
    domains => [
        { dname => 'griffoth.com' },
        { dname => 'jahoo.net' },
    ],
    contacts => {
        # XXX keys of the contacts data may differ from zone to zone

        # Domain name Owner contact data (o_*)
        o_company       => 'Private person',
        o_first_name    => 'Madame',
        o_last_name     => 'Kovarian',
        o_email         => 'patch-lady@kovarian.com',
        ...
        o_country_code  => 'US',
        ...

        # Domain name Administrative contact data (a_*)
        ...

        # Domain name Technical contact data (t_*)
        ...

        # Domain name Billing contact data (b_*)
        ...

        # Additional data
        private_person_flag => 1,
    },
);

Answer will contains a domains field with list of domain names each item consist of dname, service_id and/or error_code parameters.

More info at Domain management: update_contacts.

update_private_person_flag

Change settings of the Private Person and Total Private Person flags (show/hide contact data in WHOIS answers). Scope: clients. Typical usage:

$resp = $client->domain->update_private_person_flag(
    domains => [
        { dname => 'griffoth.com' },
        { dname => 'jahoo.net' },
    ],
    private_person_flag => 1, # or 0, to expose contacts data
);

Answer will contains a domains field with list of domain names and operation status.

More info at Domain management: update_private_person_flag.

register_ns

Domain name server registration in the NSI registry ((for internatonal domains only). Scope: clients. Typical usage:

$resp = $client->domain->register_ns(
    domain_name => 'griffoth.com',
    ns0         => 'ns1.griffoth.com',
    ns0ip       => '172.20.21.1',
);

Answer will contains a resp field with a detailed response from the NSI registry, typically a hash. Available in sussessful resposnses only.

More info at Domain management: register_ns.

delete_ns

Deletion of a domain name server from the NSI registry (for international domains only). Scope: clients. Typical usage:

$resp = $client->domain->delete_ns(
    domain_name => 'griffoth.com',
    ns0         => 'ns1.griffoth.com',
    ns0ip       => '172.20.21.1',
);

Answer will contains a resp field with a detailed response from the NSI registry, typically a hash. Available in sussessful resposnses only.

More info at Domain management: delete_ns.

get_nss

Retrive a domane name servers for domain name(s). Scope: clients. Typical usage:

$resp = $client->domain->get_nss(
    domain_name => 'griffoth.com',
);

# or
$resp = $client->domain->get_nss(
    domains => [
        { dname => 'griffoth.com' },
        { dname => 'jahoo.net' },
    ],
);

Answer will contains a list of domain names and nameservers (and ip addresses if any) and/or error codes.

More info at Domain management: get_nss.

update_nss

Change DNS servers of the domain name. Also this function enables/disables domain name delegation (for partners only). Scope: clients/partners. Typical usage:

$resp = $client->domain->update_nss(
    domains => [
        { dname => 'koorharn.ru' },
        { dname => 'stormcage.ru' },
    ],
    nss => {
        ns0 => 'ns1.barcelona.net',
        ns1 => 'ns2.barcelona.org',
        ns3 => 'ns3.barcelona.com',
    },
);

Answer will contains a list of domain names with the parameters dname, service_id and/or a service identification error_code.

More info at Domain management: update_nss.

delegate

Turn on a domain name delegation flag. Scope: partners. Typical usage:

$resp = $client->domain->delegate(
    domains => [
        { dname => 'koorharn.ru' },
        { dname => 'stormcage.ru' },
    ],
);

Answer will contains a list of domain names with the parameters dname, service_id and/or a service identification error_code.

More info at Domain management: delegate.

undelegate

Turn off a domain name delegation flag. Scope: partners. Typical usage:

$resp = $client->domain->undelegate(
    domains => [
        { dname => 'koorharn.ru' },
        { dname => 'stormcage.ru' },
    ],
);

Answer will contains a list of domain names with the parameters dname, service_id and/or a service identification error_code.

More info at Domain management: undelegate.

transfer_to_another_account

Transfer a domain name to another account within REG.RU. Scope: partners. Typical usage:

$resp = $client->domain->transfer_to_another_account(
    domain_name   => 'stormcage.ru',
    new_user_name => 'river-song',
);

Answer will contains a list of domain names transferred to another account. In case of success, the field result there will be the request_is_sent value for each domain name in the result field, otherwise an error code will be returned.

More info at Domain management: transfer_to_another_account.

look_at_entering_list

Show the list of domain names transferred to current account. Scope: partners. Typical usage:

$resp = $client->domain->look_at_entering_list;

Answer will contains a list of messages about domain names transfer. Each message contains an ID and the name of the transferred domain. Upon each transfer domain names are assigned to new user ID.

More info at Domain management: look_at_entering_list.

accept_or_refuse_entering_list

Accept or decline domain names transferred to current account. Scope: partners. Typical usage:

$resp = $client->domain->accept_or_refuse_entering_list(
    dname       => 'stormcage.ru',
    id          => 895901,
    action_type => 'accept', # accept/refuse; yes/no; 1/0
);

Answer will contains a list of domain names with result for each domain name.

More info at Domain management: accept_or_refuse_entering_list.

cancel_transfer

Shut down transfers of the domain names. Scope: partners. Typical usage:

$resp = $client->domain->cancel_transfer(
    domains => [
        { dname => 'koorharn.ru' },
        { dname => 'stormcage.ru' },
    ],
);

Answer will contains a list of domain names with result for each domain name.

More info at Domain management: cancel_transfer.

request_to_transfer

Send request to transfer a domain name to foreign registrar. Scope: partners. Typical usage:

$resp = $client->domain->cancel_transfer(
    domain_name => 'felspoon.com',
);

Answer will contains a list of domain names with result for each domain name.

More info at Domain management: request_to_transfer.

SEE ALSO

Regru::API

Regru::API::Role::Client

REG.API Domain management

REG.API Common error codes

BUGS

Please report any bugs or feature requests on the bugtracker website https://github.com/regru/regru-api-perl/issues

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHORS

  • Polina Shubina <shubina@reg.ru>

  • Anton Gerasimov <a.gerasimov@reg.ru>

COPYRIGHT AND LICENSE

This software is copyright (c) 2013 by REG.RU LLC.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.