How to Delete Snapshots

Snapshots are on-demand disk images of DigitalOcean Droplets and volumes saved to your account. Use them to create new Droplets and volumes with the same contents.


Snapshots remain in your account until you manually delete them. Deleting a snapshot does not affect the usability of any other snapshots.

Delete a Snapshot using Automation

How to delete a snapshot using the DigitalOcean CLI

To delete a snapshot via the command-line, follow these steps:

  1. Install doctl, the DigitalOcean command-line tool.

  2. Create a personal access token, and save it for use with doctl.

  3. Use the token to grant doctl access to your DigitalOcean account.

                  doctl auth init
                
  4. Finally, delete a snapshot with doctl compute snapshot delete. The basic usage looks like this, but you'll want to read the usage docs for more details:

                  doctl compute snapshot delete <snapshot-id>... [flags]
                

    The following example deletes a Droplet snapshot with ID 386734086

                       doctl compute snapshot delete 386734086
                    
How to delete a snapshot using the DigitalOcean API

To delete a snapshot using the DigitalOcean API, follow these steps:

  1. Create a personal access token, and save it for use with the API.

  2. Send a DELETE request to https://api.digitalocean.com/v2/snapshots/{snapshot_id}

    cURL

    To delete a snapshot with cURL, call:

    
                    curl -X DELETE \
      -H 'Content-Type: application/json' \
      -H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
      "https://api.digitalocean.com/v2/snapshots/fbe805e8-866b-11e6-96bf-000f53315a41"

    Go

    Go developers can use Godo, the official DigitalOcean V2 API client for Go. To delete a snapshot with Godo, use the following code:

    
                    import (
        "context"
        "os"
    
        "github.com/digitalocean/godo"
    )
    
    func main() {
        token := os.Getenv("DIGITALOCEAN_TOKEN")
    
        client := godo.NewFromToken(token)
        ctx := context.TODO()
    
        _, err := client.Snapshots.Delete(ctx, 'fbe805e8-866b-11e6-96bf-000f53315a41')
    }

    Ruby

    Ruby developers can use DropletKit, the official DigitalOcean V2 API client for Ruby. To delete a snapshot with DropletKit, use the following code:

    
                    require 'droplet_kit'
    token = ENV['DIGITALOCEAN_TOKEN']
    client = DropletKit::Client.new(access_token: token)
    
    client.snapshots.delete(id: 'fbe805e8-866b-11e6-96bf-000f53315a41')

    Python

    
                    import os
    from pydo import Client
    
    client = Client(token=os.environ.get("DIGITALOCEAN_TOKEN"))
    
    resp = client.snapshots.delete(snapshot_id="fbe805e8")

Delete a Snapshot using the Control Panel

To delete a snapshot from your account, in the control panel, click Images in the main navigation, then click Snapshots to view all snapshots in your account.

Snapshots are separated into two lists: one for Droplet snapshots and one for volume snapshots. To remove a snapshot, open its More menu and click Delete. In the confirmation window that opens, click Delete Snapshot to permanently delete the snapshot.