DigitalOcean Services API

DigitalOcean Services API

Development

The DigitalOcean API allows you to manage Droplets and resources within the DigitalOcean cloud in a simple, programmatic way using conventional HTTP requests.

Visit APIπŸ” Alternatives

πŸ“š Documentation & Examples

Everything you need to integrate with DigitalOcean Services API

πŸš€ Quick Start Examples

DigitalOcean Services API Javascript Examplejavascript
// DigitalOcean Services API API Example
const response = await fetch('https://developers.digitalocean.com/documentation/v2/', {
    method: 'GET',
    headers: {
        'Content-Type': 'application/json'
    }
});

const data = await response.json();
console.log(data);

Introduction to DigitalOcean API

DigitalOcean provides a RESTful API that allows developers to manage Droplets (virtual machines), images, domains, and more through HTTP requests. The documentation for the DigitalOcean API is available at https://developers.digitalocean.com/documentation/v2/.

Authentication

Before making any API requests, you must first authenticate. DigitalOcean API uses OAuth2 for authentication and authorization. You will need a client ID and secret to use the API. You can create your OAuth2 client in the DigitalOcean control panel.

const digitalocean = require('digitalocean');
const client = digitalocean.client('your_access_token');

Examples

Droplets

List all Droplets

const digitalocean = require('digitalocean');
const client = digitalocean.client('your_access_token');

client.droplets.list().then((droplets) => {
    console.log(droplets);
}).catch((error) => {
    console.log(error.message);
});

Create a new Droplet

const digitalocean = require('digitalocean');
const client = digitalocean.client('your_access_token');

const dropletData = {
  "name": "example.com",
  "region": "nyc3",
  "size": "s-1vcpu-1gb",
  "image": "ubuntu-16-04-x64",
  "ssh_keys": null,
  "backups": false,
  "ipv6": true,
  "user_data": null,
  "private_networking": null,
  "volumes": null,
  "tags": [
    "web"
  ]
};

client.droplets.create(dropletData).then((droplet) => {
    console.log(droplet);
}).catch((error) => {
    console.log(error.message);
});

Delete a Droplet

const digitalocean = require('digitalocean');
const client = digitalocean.client('your_access_token');

const dropletId = 123456;

client.droplets.delete(dropletId).then(() => {
    console.log(`Droplet ${dropletId} was successfully deleted.`);
}).catch((error) => {
    console.log(error.message);
});

Domains

List all Domains

const digitalocean = require('digitalocean');
const client = digitalocean.client('your_access_token');

client.domains.list().then((domains) => {
    console.log(domains);
}).catch((error) => {
    console.log(error.message);
});

Create a new Domain

const digitalocean = require('digitalocean');
const client = digitalocean.client('your_access_token');

const domainData = {
    "name": "example.com",
    "ip_address": "203.0.113.0"
};

client.domains.create(domainData).then((domain) => {
    console.log(domain);
}).catch((error) => {
    console.log(error.message);
});

Delete a Domain

const digitalocean = require('digitalocean');
const client = digitalocean.client('your_access_token');

const domainName = "example.com";

client.domains.delete(domainName).then(() => {
    console.log(`Domain ${domainName} was successfully deleted.`);
}).catch((error) => {
    console.log(error.message);
});

Conclusion

The DigitalOcean API allows developers to automate the management of their infrastructure and provide self-service functionality to their users. This blog post has provided some examples of how this can be done using the API in JavaScript. For a complete list of available endpoints and methods, please refer to the official DigitalOcean API documentation.

Related APIs in Development