Skip to content

Acting on Tagged Droplets

client.GPUDroplets.Actions.BulkInitiate(ctx, params) (*GPUDropletActionBulkInitiateResponse, error)
post/v2/droplets/actions

Some actions can be performed in bulk on tagged Droplets. The actions can be initiated by sending a POST to /v2/droplets/actions?tag_name=$TAG_NAME with the action arguments.

Only a sub-set of action types are supported:

  • power_cycle
  • power_on
  • power_off
  • shutdown
  • enable_ipv6
  • enable_backups
  • disable_backups
  • snapshot (also requires image:create permission)
ParametersExpand Collapse
params GPUDropletActionBulkInitiateParams

Body param: The type of action to initiate for the Droplet.

const GPUDropletActionBulkInitiateParamsDropletActionTypeEnableBackups GPUDropletActionBulkInitiateParamsDropletActionType = "enable_backups"
const GPUDropletActionBulkInitiateParamsDropletActionTypeDisableBackups GPUDropletActionBulkInitiateParamsDropletActionType = "disable_backups"
const GPUDropletActionBulkInitiateParamsDropletActionTypeReboot GPUDropletActionBulkInitiateParamsDropletActionType = "reboot"
const GPUDropletActionBulkInitiateParamsDropletActionTypePowerCycle GPUDropletActionBulkInitiateParamsDropletActionType = "power_cycle"
const GPUDropletActionBulkInitiateParamsDropletActionTypeShutdown GPUDropletActionBulkInitiateParamsDropletActionType = "shutdown"
const GPUDropletActionBulkInitiateParamsDropletActionTypePowerOff GPUDropletActionBulkInitiateParamsDropletActionType = "power_off"
const GPUDropletActionBulkInitiateParamsDropletActionTypePowerOn GPUDropletActionBulkInitiateParamsDropletActionType = "power_on"
const GPUDropletActionBulkInitiateParamsDropletActionTypeRestore GPUDropletActionBulkInitiateParamsDropletActionType = "restore"
const GPUDropletActionBulkInitiateParamsDropletActionTypePasswordReset GPUDropletActionBulkInitiateParamsDropletActionType = "password_reset"
const GPUDropletActionBulkInitiateParamsDropletActionTypeResize GPUDropletActionBulkInitiateParamsDropletActionType = "resize"
const GPUDropletActionBulkInitiateParamsDropletActionTypeRebuild GPUDropletActionBulkInitiateParamsDropletActionType = "rebuild"
const GPUDropletActionBulkInitiateParamsDropletActionTypeRename GPUDropletActionBulkInitiateParamsDropletActionType = "rename"
const GPUDropletActionBulkInitiateParamsDropletActionTypeChangeKernel GPUDropletActionBulkInitiateParamsDropletActionType = "change_kernel"
const GPUDropletActionBulkInitiateParamsDropletActionTypeEnableIpv6 GPUDropletActionBulkInitiateParamsDropletActionType = "enable_ipv6"
const GPUDropletActionBulkInitiateParamsDropletActionTypeSnapshot GPUDropletActionBulkInitiateParamsDropletActionType = "snapshot"
TagName param.Field[string]optional

Query param: Used to filter Droplets by a specific tag. Can not be combined with name or type.
Requires tag:read scope.

ReturnsExpand Collapse
type GPUDropletActionBulkInitiateResponse struct{…}
Actions []Actionoptional
ID int64optional

A unique numeric ID that can be used to identify and reference an action.

CompletedAt Timeoptional

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

formatdate-time
Region Regionoptional
Available bool

This is a boolean value that represents whether new Droplets can be created in this region.

Features []string

This attribute is set to an array which contains features available in this region

Name string

The display name of the region. This will be a full name that is used in the control panel and other interfaces.

Sizes []string

This attribute is set to an array which contains the identifying slugs for the sizes available in this region. sizes:read is required to view.

Slug string

A human-readable string that is used as a unique identifier for each region.

RegionSlug stringoptional

A human-readable string that is used as a unique identifier for each region.

ResourceID int64optional

A unique identifier for the resource that the action is associated with.

ResourceType stringoptional

The type of resource that the action is associated with.

StartedAt Timeoptional

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

formatdate-time
Status ActionStatusoptional

The current status of the action. This can be "in-progress", "completed", or "errored".

Accepts one of the following:
const ActionStatusInProgress ActionStatus = "in-progress"
const ActionStatusCompleted ActionStatus = "completed"
const ActionStatusErrored ActionStatus = "errored"
Type stringoptional

This is the type of action that the object represents. For example, this could be "transfer" to represent the state of an image transfer action.

Acting on Tagged Droplets
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"),
  )
  response, err := client.GPUDroplets.Actions.BulkInitiate(context.TODO(), gradient.GPUDropletActionBulkInitiateParams{

  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.Actions)
}
{
  "actions": [
    {
      "id": 36804636,
      "completed_at": "2020-11-14T16:30:06Z",
      "region": {
        "available": true,
        "features": [
          "private_networking",
          "backups",
          "ipv6",
          "metadata",
          "install_agent",
          "storage",
          "image_transfer"
        ],
        "name": "New York 3",
        "sizes": [
          "s-1vcpu-1gb",
          "s-1vcpu-2gb",
          "s-1vcpu-3gb",
          "s-2vcpu-2gb",
          "s-3vcpu-1gb",
          "s-2vcpu-4gb",
          "s-4vcpu-8gb",
          "s-6vcpu-16gb",
          "s-8vcpu-32gb",
          "s-12vcpu-48gb",
          "s-16vcpu-64gb",
          "s-20vcpu-96gb",
          "s-24vcpu-128gb",
          "s-32vcpu-192g"
        ],
        "slug": "nyc3"
      },
      "region_slug": "nyc3",
      "resource_id": 3164444,
      "resource_type": "droplet",
      "started_at": "2020-11-14T16:29:21Z",
      "status": "completed",
      "type": "create"
    }
  ]
}
Returns Examples
{
  "actions": [
    {
      "id": 36804636,
      "completed_at": "2020-11-14T16:30:06Z",
      "region": {
        "available": true,
        "features": [
          "private_networking",
          "backups",
          "ipv6",
          "metadata",
          "install_agent",
          "storage",
          "image_transfer"
        ],
        "name": "New York 3",
        "sizes": [
          "s-1vcpu-1gb",
          "s-1vcpu-2gb",
          "s-1vcpu-3gb",
          "s-2vcpu-2gb",
          "s-3vcpu-1gb",
          "s-2vcpu-4gb",
          "s-4vcpu-8gb",
          "s-6vcpu-16gb",
          "s-8vcpu-32gb",
          "s-12vcpu-48gb",
          "s-16vcpu-64gb",
          "s-20vcpu-96gb",
          "s-24vcpu-128gb",
          "s-32vcpu-192g"
        ],
        "slug": "nyc3"
      },
      "region_slug": "nyc3",
      "resource_id": 3164444,
      "resource_type": "droplet",
      "started_at": "2020-11-14T16:29:21Z",
      "status": "completed",
      "type": "create"
    }
  ]
}