Please note: At this time, the
NS1 PHP
package is DEPRECATED and is not feature complete. We suggest using one of our other packages for production integrations.
This package provides a PHP SDK for accessing the NSONE DNS platform and includes both a simple NSONE REST API wrapper as well as a higher level interface for managing zones, records, data feeds, and more.
It requires PHP 5.3+ and the curl extension.
You'll need a REST API key. Login to the your account at http://my.nsone.net (or create a new, free account at http://nsone.net/signup). Click on Account in the top right, then Settings & Users. At the bottom, in the Manage API Keys section, click Add a New Key and set an appropriate name. If you wish, adjust permissions for this key.
We recommend using composer (http://getcomposer.org) to manage the nsone-php package. If you don't already have it, first install Composer into your project directory:
curl -sS https://getcomposer.org/installer | php
Edit (or create) composer.json in your project root to include nsone-php:
{
"require": {
"nsone/nsone-php": "~0.1"
}
}
Then in your project, make sure you require the composer autoloader:
require 'vendor/autoload.php';
For example, nsone.json
{
"default_key": "account1",
"verbosity": 5,
"keys": {
"account1": {
"key": "qACMD09OJXBxT7XOuRs8",
"desc": "account number 1"
},
"account2": {
"key": "qACMD09OJXBxT7XOwv9v",
"desc": "account number 2"
}
}
}
require 'vendor/autoload.php';
use NSONE\Client;
use NSONE\Config;
$config = new Config();
$config->loadFromFile('nsone.json');
$nsone = new Client(array('config' => $config));
$zone = $nsone->createZone('newzone2.com', array('nx_ttl' => 100));
$zone->update(array('nx_ttl' => 200));
print_r($zone->qps());
print_r($zone->usage());
$zone->delete();
$zone = $nsone->loadZone('test.com');
print_r($zone->qps());
Pull Requests and issues are welcome. See the NS1 Contribution Guidelines for more information.