Difference between revisions of "NATS4 API"
Line 8: | Line 8: | ||
In order to access NATS API your IP address must be in the ADMIN_API_ALLOWED_IPS list. You can add or remove IP addresses to this list via the Configurations Admin under the "Security" tab. | In order to access NATS API your IP address must be in the ADMIN_API_ALLOWED_IPS list. You can add or remove IP addresses to this list via the Configurations Admin under the "Security" tab. | ||
− | If you're also using [[ | + | If you're also using [[NATS4 Configuration Admin#Security|ADMIN_IPS]] to restrict access to your admin, you must also add the IP to that list, as this is also an admin page. |
== Authentication == | == Authentication == |
Revision as of 11:58, 18 June 2012
The NATS Admin API is accessible at http://<domain>/admin_api.php
- Replace <domain> with your NATS install domain name.
Gaining Access to the Admin API
In order to access NATS API your IP address must be in the ADMIN_API_ALLOWED_IPS list. You can add or remove IP addresses to this list via the Configurations Admin under the "Security" tab.
If you're also using ADMIN_IPS to restrict access to your admin, you must also add the IP to that list, as this is also an admin page.
Authentication
The NATS API uses HTTP Authentication where the username is the Affiliate username and the password is the Affiliate API key. To retrieve your API key simply select it from the login table of your NATS database or put in a support ticket and we can retrieve it for you.
Example
The easiest way to use SOAP when using PHP is using the NuSOAP Toolkit. Assuming you've downloaded the toolkit into a directory called nusoap, here is an example of how to connect:
<? require_once('nusoap/lib/nusoap.php'); $url = 'http://nats.site.com/admin_api.php'; // change to be the domain of your NATS install $username = 'NATSADMIN'; // your admin username $apikey = '3385e1b470b0864e27a9b648da6c0692'; // your api key $client = new nusoap_client($url.'?wsdl', true); $client->setCredentials($username,$apikey); // Check for an error $err = $client->getError(); if ($err) { // Display the error echo 'Constructor error' . $err . "\n"; exit; // At this point, you know the call that follows will fail }
To give a complete example of this, here's an example using the ping function. This is how to call it:
<? require_once('nusoap/lib/nusoap.php'); $url = 'http://nats.site.com/admin_api.php'; // change to be the domain of your NATS install $username = 'NATSADMIN'; // your admin username $apikey = '3385e1b470b0864e27a9b648da6c0692'; // your api key $client = new nusoap_client($url.'?wsdl', true); $client->setCredentials($username,$apikey); // Check for an error $err = $client->getError(); if ($err) { // Display the error echo 'Constructor error' . $err . "\n"; exit; // At this point, you know the call that follows will fail } $result = $client->call('ping', Array(), 'natsapiadmin_wsdl'); var_dump($result);
And this is the output:
bool(true)