maxcdn

MaxCDN API for Node.js

node-maxcdn

MaxCDN API for Node.js

     

$ npm install maxcdn
var MaxCDN = require('maxcdn');
var maxcdn = new MaxCDN('COMPANY_ALIAS', 'CONSUMER_KEY', 'CONSUMER_SECRET');
maxcdn.get('reports/stats.json/daily', function(err, results) {
    if (err) {
        console.trace(err);
        return;
    }
    console.dir(resultS);
});
var updates = {
    street1: '555 Some St.',
    street2: 'Suite #1'
};
maxcdn.put('account.json/address', updates, function(err, results) {
    if (err) {
        console.trace(err);
        return;
    }
    console.dir(resultS);
});
maxcdn.post('zones/pull.json', { name: 'testname', url: 'http://www.example.com' }, function(err, results) {
    if (err) {
        console.trace(err);
        return;
    }
    console.dir(results);
});

Has alias of maxcdn.delete.

var zoneId = '121212';
 
// full cache
maxcdn.del('zones/pull.json/'+zoneId+'/cache', function(err, results) {
    if (err) {
        console.trace(err);
        return;
    }
    if (results.code === 200) {
        console.log('SUCCESS!');
    }
});
 
// specific files
var files = { files: [ '/master.css', '/another.css' ] };
maxcdn.del('zones/pull.json/'+zoneId+'/cache', files, function(err, results) {
    if (err) {
        console.trace(err);
        return;
    }
    if (results[0].code === 200) {
        console.log('SUCCESS: %s', files.files[0]);
    }
    if (results[1].code === 200) {
        console.log('SUCCESS: %s', files.files[1]);
    }
});
$ make setup test
$ ALIAS=alias KEY=key SECRET=secret make setup int

Troubleshooting:

Ensure that you ALIAS, KEY and SECRET values are correct and that you're running integration on a host with a whitelisted IP address.