doapi

0.1.4 • Public • Published

NPM version Downloads

doapi

The doapi module allows you to communicate with the DigitalOcean API V2 from node.js in a promise friendly manner.

It also supports automatic request retries.

Installation

This module is published in NPM:

npm install doapi --save

The --save tells NPM to automatically add it to your package.json file

Usage

// Import a module
var DigitalOceanAPI = require('doapi');
 
// Create an instance with your API V2 credentials
var api = new DigitalOceanAPI({token: 'my_token'});
 
// Get things done
api.dropletGetAll().then(function (droplets) {
    console.log(droplets);
});

Config

new DigitalOceanAPI({
    token: 'my_token',
    itemsPerPage: 100, // default=100
    maxRetries: 5, // default=5
    raw: false // default=false
});

Pagination

you can pass pagination params into any method that has a body or query argument.

api.dropletGetAll({per_page: 1, page: 2}).then(function (droplets) {
    console.log(droplets);
});

Raw

if you set raw it will return the full response body with request info and ratelimiting details, the default is false.

api.accountGet(true)

would return

    {
        account: {
            droplet_limit: 25,
            email: 'email@domain.com',
            uuid: 'f5bbaffce3a8792421593a7075b486bafd66672f',
            email_verified: true
        },
        ratelimit: {
            limit: '5000',
            remaining: '4993',
            reset: '1434197547'
        },
        requestinfo: {
            id: 'a24427fd-0d43-9536-a206-zac22d2696e1',
            runtime: '0.038537'
         }
    }

and with raw set to false (the default), it would return

    {
        droplet_limit: 25,
        email: 'email@domain.com',
        uuid: 'f5bbaffce3a8792421593a7075b486bafd66672f',
        email_verified: true
    }

Debugging

we use the debug module so you can debug the http requests by doing the following

DEBUG=http node myfile.js

image

also all methods enforce type checking so invalid usage would result in errors like this

image

Methods

All methods follow the official API documentation.

Droplets

Account

Regions

Images

SSH keys

Sizes

Domains

Actions

Floating IPs

Package Sidebar

Install

npm i doapi

Weekly Downloads

10

Version

0.1.4

License

none

Last publish

Collaborators

  • icodeforlove