Skip to content

List All Images

client.GPUDroplets.Images.List(ctx, query) (*GPUDropletImageListResponse, error)
get/v2/images

To list all of the images available on your account, send a GET request to /v2/images.

Filtering Results


It's possible to request filtered results by including certain query parameters.

Image Type

Either 1-Click Application or OS Distribution images can be filtered by using the type query parameter.

Important: The type query parameter does not directly relate to the type attribute.

To retrieve only distribution images, include the type query parameter set to distribution, /v2/images?type=distribution.

To retrieve only application images, include the type query parameter set to application, /v2/images?type=application.

User Images

To retrieve only the private images of a user, include the private query parameter set to true, /v2/images?private=true.

Tags

To list all images assigned to a specific tag, include the tag_name query parameter set to the name of the tag in your GET request. For example, /v2/images?tag_name=$TAG_NAME.

ParametersExpand Collapse
query GPUDropletImageListParams
Page param.Field[int64]optional

Which 'page' of paginated results to return.

minimum1
PerPage param.Field[int64]optional

Number of items returned per page

minimum1
maximum200
Private param.Field[bool]optional

Used to filter only user images.

TagName param.Field[string]optional

Used to filter images by a specific tag.

Type param.Field[GPUDropletImageListParamsType]optional

Filters results based on image type which can be either application or distribution.

const GPUDropletImageListParamsTypeApplication GPUDropletImageListParamsType = "application"
const GPUDropletImageListParamsTypeDistribution GPUDropletImageListParamsType = "distribution"
ReturnsExpand Collapse
type GPUDropletImageListResponse struct{…}
Images []Image
ID int64optional

A unique number that can be used to identify and reference a specific image.

CreatedAt Timeoptional

A time value given in ISO8601 combined date and time format that represents when the image was created.

formatdate-time
Description stringoptional

An optional free-form text field to describe an image.

Distribution ImageDistributionoptional

The name of a custom image's distribution. Currently, the valid values are Arch Linux, CentOS, CoreOS, Debian, Fedora, Fedora Atomic, FreeBSD, Gentoo, openSUSE, RancherOS, Rocky Linux, Ubuntu, and Unknown. Any other value will be accepted but ignored, and Unknown will be used in its place.

Accepts one of the following:
const ImageDistributionArchLinux ImageDistribution = "Arch Linux"
const ImageDistributionCentOs ImageDistribution = "CentOS"
const ImageDistributionCoreOs ImageDistribution = "CoreOS"
const ImageDistributionDebian ImageDistribution = "Debian"
const ImageDistributionFedora ImageDistribution = "Fedora"
const ImageDistributionFedoraAtomic ImageDistribution = "Fedora Atomic"
const ImageDistributionFreeBsd ImageDistribution = "FreeBSD"
const ImageDistributionGentoo ImageDistribution = "Gentoo"
const ImageDistributionOpenSuse ImageDistribution = "openSUSE"
const ImageDistributionRancherOs ImageDistribution = "RancherOS"
const ImageDistributionRockyLinux ImageDistribution = "Rocky Linux"
const ImageDistributionUbuntu ImageDistribution = "Ubuntu"
const ImageDistributionUnknown ImageDistribution = "Unknown"
ErrorMessage stringoptional

A string containing information about errors that may occur when importing a custom image.

MinDiskSize int64optional

The minimum disk size in GB required for a Droplet to use this image.

minimum0
Name stringoptional

The display name that has been given to an image. This is what is shown in the control panel and is generally a descriptive title for the image in question.

Public booloptional

This is a boolean value that indicates whether the image in question is public or not. An image that is public is available to all accounts. A non-public image is only accessible from your account.

Regions []ImageRegionoptional

This attribute is an array of the regions that the image is available in. The regions are represented by their identifying slug values.

Accepts one of the following:
const ImageRegionAms1 ImageRegion = "ams1"
const ImageRegionAms2 ImageRegion = "ams2"
const ImageRegionAms3 ImageRegion = "ams3"
const ImageRegionBlr1 ImageRegion = "blr1"
const ImageRegionFra1 ImageRegion = "fra1"
const ImageRegionLon1 ImageRegion = "lon1"
const ImageRegionNyc1 ImageRegion = "nyc1"
const ImageRegionNyc2 ImageRegion = "nyc2"
const ImageRegionNyc3 ImageRegion = "nyc3"
const ImageRegionSfo1 ImageRegion = "sfo1"
const ImageRegionSfo2 ImageRegion = "sfo2"
const ImageRegionSfo3 ImageRegion = "sfo3"
const ImageRegionSgp1 ImageRegion = "sgp1"
const ImageRegionTor1 ImageRegion = "tor1"
const ImageRegionSyd1 ImageRegion = "syd1"
SizeGigabytes float64optional

The size of the image in gigabytes.

formatfloat
Slug stringoptional

A uniquely identifying string that is associated with each of the DigitalOcean-provided public images. These can be used to reference a public image as an alternative to the numeric id.

Status ImageStatusoptional

A status string indicating the state of a custom image. This may be NEW, available, pending, deleted, or retired.

Accepts one of the following:
const ImageStatusNew ImageStatus = "NEW"
const ImageStatusAvailable ImageStatus = "available"
const ImageStatusPending ImageStatus = "pending"
const ImageStatusDeleted ImageStatus = "deleted"
const ImageStatusRetired ImageStatus = "retired"
Tags []stringoptional

A flat array of tag names as strings to be applied to the resource. Tag names may be for either existing or new tags.

Requires tag:create scope.

Type ImageTypeoptional

Describes the kind of image. It may be one of base, snapshot, backup, custom, or admin. Respectively, this specifies whether an image is a DigitalOcean base OS image, user-generated Droplet snapshot, automatically created Droplet backup, user-provided virtual machine image, or an image used for DigitalOcean managed resources (e.g. DOKS worker nodes).

Accepts one of the following:
const ImageTypeBase ImageType = "base"
const ImageTypeSnapshot ImageType = "snapshot"
const ImageTypeBackup ImageType = "backup"
const ImageTypeCustom ImageType = "custom"
const ImageTypeAdmin ImageType = "admin"

Information about the response itself.

Total int64optional

Number of objects returned by the request.

Accepts one of the following:
List All Images
package main

import (
  "context"
  "fmt"

  "github.com/stainless-sdks/-go"
  "github.com/stainless-sdks/-go/option"
)

func main() {
  client := gradient.NewClient(
    option.WithAccessToken("My Access Token"),
  )
  images, err := client.GPUDroplets.Images.List(context.TODO(), gradient.GPUDropletImageListParams{

  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", images.Images)
}
{
  "images": [
    {
      "id": 7555620,
      "name": "Nifty New Snapshot",
      "distribution": "Ubuntu",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "Another Snapshot",
      "distribution": "Ubuntu",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 63663980,
      "name": "20.04 (LTS) x64",
      "distribution": "Ubuntu",
      "slug": "ubuntu-20-04-x64",
      "public": true,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2020-05-15T05:47:50Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.36,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "A custom image",
      "distribution": "Arch Linux",
      "slug": null,
      "public": false,
      "regions": [
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "custom",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "An APP image",
      "distribution": "Fedora",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "A simple tagged image",
      "distribution": "CentOS",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [
        "simple-image"
      ],
      "status": "available",
      "error_message": ""
    }
  ],
  "links": {
    "pages": {}
  },
  "meta": {
    "total": 6
  }
}
Returns Examples
{
  "images": [
    {
      "id": 7555620,
      "name": "Nifty New Snapshot",
      "distribution": "Ubuntu",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "Another Snapshot",
      "distribution": "Ubuntu",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 63663980,
      "name": "20.04 (LTS) x64",
      "distribution": "Ubuntu",
      "slug": "ubuntu-20-04-x64",
      "public": true,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2020-05-15T05:47:50Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.36,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "A custom image",
      "distribution": "Arch Linux",
      "slug": null,
      "public": false,
      "regions": [
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "custom",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "An APP image",
      "distribution": "Fedora",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [],
      "status": "available",
      "error_message": ""
    },
    {
      "id": 7555621,
      "name": "A simple tagged image",
      "distribution": "CentOS",
      "slug": null,
      "public": false,
      "regions": [
        "nyc2",
        "nyc3"
      ],
      "created_at": "2014-11-04T22:23:02Z",
      "type": "snapshot",
      "min_disk_size": 20,
      "size_gigabytes": 2.34,
      "description": "",
      "tags": [
        "simple-image"
      ],
      "status": "available",
      "error_message": ""
    }
  ],
  "links": {
    "pages": {}
  },
  "meta": {
    "total": 6
  }
}