wiki:NetOpenSRS

Net::OpenSRS

This module is now maintained by  Freeside.

This is a wrapper interface to the DNS portions of the Tucows OpenSRS HTTPS XML API.

The client library distributed by OpenSRS can be difficult to integrate into a custom environment, and their web interface becomes quickly tedious with heavy usage. This is a clean and relatively quick library to perform the most common API methods described in the OpenSRS API documentation.

Downloads

You can download the latest version from  CPAN.

Installation

Install via the regular perl module methods:

perl Makefile.pl
make
make install

Documentation

Full help and API can be found via perldoc Net::OpenSRS.

Here are some examples for quick reference!

use Net::OpenSRS;

my $key = 'Your_API_Key_From_The_Reseller_Interface';
my $srs = Net::OpenSRS->new();

$srs->environment('live');
$srs->set_key( $key );

$srs->set_manage_auth( 'manage_username', 'manage_password' );

my $cookie = $srs->get_cookie( 'spime.net' );
if ($cookie) {
    print "Cookie:  $cookie\n";
} else {
    print $srs->last_response() . "\n";
}

# do a batch of domain locks
$srs->bulk_lock([ 'example.com', 'example.net', ... ]);

# renew a domain
my $result = $srs->renew_domain( 'example.com' );
...