# Floating IPs
## Create
`client.gpuDroplets.floatingIPs.create(FloatingIPCreateParamsbody, RequestOptionsoptions?): FloatingIPCreateResponse`
**post** `/v2/floating_ips`
On creation, a floating IP must be either assigned to a Droplet or reserved to a region.
* To create a new floating IP assigned to a Droplet, send a POST
request to `/v2/floating_ips` with the `droplet_id` attribute.
* To create a new floating IP reserved to a region, send a POST request to
`/v2/floating_ips` with the `region` attribute.
### Parameters
- `FloatingIPCreateParams = AssignToDroplet | ReserveToRegion`
- `FloatingIPCreateParamsBase`
- `droplet_id: number`
The ID of the Droplet that the floating IP will be assigned to.
- `AssignToDroplet extends FloatingIPCreateParamsBase`
- `ReserveToRegion extends FloatingIPCreateParamsBase`
### Returns
- `FloatingIPCreateResponse`
- `floating_ip?: FloatingIP`
- `droplet?: unknown | Droplet`
The Droplet that the floating IP has been assigned to. When you query a floating IP, if it is assigned to a Droplet, the entire Droplet object will be returned. If it is not assigned, the value will be null.
Requires `droplet:read` scope.
- `unknown`
- `Droplet`
- `id: number`
A unique identifier for each Droplet instance. This is automatically generated upon Droplet creation.
- `backup_ids: Array`
An array of backup IDs of any backups that have been taken of the Droplet instance. Droplet backups are enabled at the time of the instance creation.
Requires `image:read` scope.
- `created_at: string`
A time value given in ISO8601 combined date and time format that represents when the Droplet was created.
- `disk: number`
The size of the Droplet's disk in gigabytes.
- `features: Array`
An array of features enabled on this Droplet.
- `image: Image`
The Droplet's image.
Requires `image:read` scope.
- `id?: number`
A unique number that can be used to identify and reference a specific image.
- `created_at?: string`
A time value given in ISO8601 combined date and time format that represents when the image was created.
- `description?: string`
An optional free-form text field to describe an image.
- `distribution?: "Arch Linux" | "CentOS" | "CoreOS" | 10 more`
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.
- `"Arch Linux"`
- `"CentOS"`
- `"CoreOS"`
- `"Debian"`
- `"Fedora"`
- `"Fedora Atomic"`
- `"FreeBSD"`
- `"Gentoo"`
- `"openSUSE"`
- `"RancherOS"`
- `"Rocky Linux"`
- `"Ubuntu"`
- `"Unknown"`
- `error_message?: string`
A string containing information about errors that may occur when importing
a custom image.
- `min_disk_size?: number | null`
The minimum disk size in GB required for a Droplet to use this image.
- `name?: string`
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?: boolean`
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?: Array<"ams1" | "ams2" | "ams3" | 12 more>`
This attribute is an array of the regions that the image is available in. The regions are represented by their identifying slug values.
- `"ams1"`
- `"ams2"`
- `"ams3"`
- `"blr1"`
- `"fra1"`
- `"lon1"`
- `"nyc1"`
- `"nyc2"`
- `"nyc3"`
- `"sfo1"`
- `"sfo2"`
- `"sfo3"`
- `"sgp1"`
- `"tor1"`
- `"syd1"`
- `size_gigabytes?: number | null`
The size of the image in gigabytes.
- `slug?: string | null`
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?: "NEW" | "available" | "pending" | 2 more`
A status string indicating the state of a custom image. This may be `NEW`,
`available`, `pending`, `deleted`, or `retired`.
- `"NEW"`
- `"available"`
- `"pending"`
- `"deleted"`
- `"retired"`
- `tags?: Array | null`
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?: "base" | "snapshot" | "backup" | 2 more`
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).
- `"base"`
- `"snapshot"`
- `"backup"`
- `"custom"`
- `"admin"`
- `locked: boolean`
A boolean value indicating whether the Droplet has been locked, preventing actions by users.
- `memory: number`
Memory of the Droplet in megabytes.
- `name: string`
The human-readable name set for the Droplet instance.
- `networks: Networks`
The details of the network that are configured for the Droplet instance. This is an object that contains keys for IPv4 and IPv6. The value of each of these is an array that contains objects describing an individual IP resource allocated to the Droplet. These will define attributes like the IP address, netmask, and gateway of the specific network depending on the type of network it is.
- `v4?: Array`
- `gateway?: string`
The gateway of the specified IPv4 network interface.
For private interfaces, a gateway is not provided. This is denoted by
returning `nil` as its value.
- `ip_address?: string`
The IP address of the IPv4 network interface.
- `netmask?: string`
The netmask of the IPv4 network interface.
- `type?: "public" | "private"`
The type of the IPv4 network interface.
- `"public"`
- `"private"`
- `v6?: Array`
- `gateway?: string`
The gateway of the specified IPv6 network interface.
- `ip_address?: string`
The IP address of the IPv6 network interface.
- `netmask?: number`
The netmask of the IPv6 network interface.
- `type?: "public"`
The type of the IPv6 network interface.
**Note**: IPv6 private networking is not currently supported.
- `"public"`
- `next_backup_window: DropletNextBackupWindow | null`
The details of the Droplet's backups feature, if backups are configured for the Droplet. This object contains keys for the start and end times of the window during which the backup will start.
- `end?: string`
A time value given in ISO8601 combined date and time format specifying the end of the Droplet's backup window.
- `start?: string`
A time value given in ISO8601 combined date and time format specifying the start of the Droplet's backup window.
- `region: Region`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created in this region.
- `features: Array`
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: Array`
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.
- `size: Size`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created with this size.
- `description: string`
A string describing the class of Droplets created from this size. For example: Basic, General Purpose, CPU-Optimized, Memory-Optimized, or Storage-Optimized.
- `disk: number`
The amount of disk space set aside for Droplets of this size. The value is represented in gigabytes.
- `memory: number`
The amount of RAM allocated to Droplets created of this size. The value is represented in megabytes.
- `price_hourly: number`
This describes the price of the Droplet size as measured hourly. The value is measured in US dollars.
- `price_monthly: number`
This attribute describes the monthly cost of this Droplet size if the Droplet is kept for an entire month. The value is measured in US dollars.
- `regions: Array`
An array containing the region slugs where this size is available for Droplet creates.
- `slug: string`
A human-readable string that is used to uniquely identify each size.
- `transfer: number`
The amount of transfer bandwidth that is available for Droplets created in this size. This only counts traffic on the public interface. The value is given in terabytes.
- `vcpus: number`
The number of CPUs allocated to Droplets of this size.
- `disk_info?: Array`
An array of objects containing information about the disks available to Droplets created with this size.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `size_slug: string`
The unique slug identifier for the size of this Droplet.
- `snapshot_ids: Array`
An array of snapshot IDs of any snapshots created from the Droplet instance.
Requires `image:read` scope.
- `status: "new" | "active" | "off" | "archive"`
A status string indicating the state of the Droplet instance. This may be "new", "active", "off", or "archive".
- `"new"`
- `"active"`
- `"off"`
- `"archive"`
- `tags: Array`
An array of Tags the Droplet has been tagged with.
Requires `tag:read` scope.
- `vcpus: number`
The number of virtual CPUs.
- `volume_ids: Array`
A flat array including the unique identifier for each Block Storage volume attached to the Droplet.
Requires `block_storage:read` scope.
- `disk_info?: Array`
An array of objects containing information about the disks available to the Droplet.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `kernel?: Kernel | null`
**Note**: All Droplets created after March 2017 use internal kernels by default.
These Droplets will have this attribute set to `null`.
The current [kernel](https://docs.digitalocean.com/products/droplets/how-to/kernel/)
for Droplets with externally managed kernels. This will initially be set to
the kernel of the base image when the Droplet is created.
- `id?: number`
A unique number used to identify and reference a specific kernel.
- `name?: string`
The display name of the kernel. This is shown in the web UI and is generally a descriptive title for the kernel in question.
- `version?: string`
A standard kernel version string representing the version, patch, and release information.
- `vpc_uuid?: string`
A string specifying the UUID of the VPC to which the Droplet is assigned.
Requires `vpc:read` scope.
- `ip?: string`
The public IP address of the floating IP. It also serves as its identifier.
- `locked?: boolean`
A boolean value indicating whether or not the floating IP has pending actions preventing new ones from being submitted.
- `project_id?: string`
The UUID of the project to which the reserved IP currently belongs.
Requires `project:read` scope.
- `region?: Region`
The region that the floating IP is reserved to. When you query a floating IP, the entire region object will be returned.
- `links?: Links`
- `actions?: Array`
- `id?: number`
A unique numeric ID that can be used to identify and reference an action.
- `href?: string`
A URL that can be used to access the action.
- `rel?: string`
A string specifying the type of the related action.
- `droplets?: Array`
- `id?: number`
A unique numeric ID that can be used to identify and reference an action.
- `href?: string`
A URL that can be used to access the action.
- `rel?: string`
A string specifying the type of the related action.
### Example
```typescript
import Gradient from '@digitalocean/gradient';
const client = new Gradient();
const floatingIP = await client.gpuDroplets.floatingIPs.create({ droplet_id: 2457247 });
console.log(floatingIP.floating_ip);
```
## Retrieve
`client.gpuDroplets.floatingIPs.retrieve(stringfloatingIP, RequestOptionsoptions?): FloatingIPRetrieveResponse`
**get** `/v2/floating_ips/{floating_ip}`
To show information about a floating IP, send a GET request to `/v2/floating_ips/$FLOATING_IP_ADDR`.
### Parameters
- `floatingIP: string`
### Returns
- `FloatingIPRetrieveResponse`
- `floating_ip?: FloatingIP`
- `droplet?: unknown | Droplet`
The Droplet that the floating IP has been assigned to. When you query a floating IP, if it is assigned to a Droplet, the entire Droplet object will be returned. If it is not assigned, the value will be null.
Requires `droplet:read` scope.
- `unknown`
- `Droplet`
- `id: number`
A unique identifier for each Droplet instance. This is automatically generated upon Droplet creation.
- `backup_ids: Array`
An array of backup IDs of any backups that have been taken of the Droplet instance. Droplet backups are enabled at the time of the instance creation.
Requires `image:read` scope.
- `created_at: string`
A time value given in ISO8601 combined date and time format that represents when the Droplet was created.
- `disk: number`
The size of the Droplet's disk in gigabytes.
- `features: Array`
An array of features enabled on this Droplet.
- `image: Image`
The Droplet's image.
Requires `image:read` scope.
- `id?: number`
A unique number that can be used to identify and reference a specific image.
- `created_at?: string`
A time value given in ISO8601 combined date and time format that represents when the image was created.
- `description?: string`
An optional free-form text field to describe an image.
- `distribution?: "Arch Linux" | "CentOS" | "CoreOS" | 10 more`
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.
- `"Arch Linux"`
- `"CentOS"`
- `"CoreOS"`
- `"Debian"`
- `"Fedora"`
- `"Fedora Atomic"`
- `"FreeBSD"`
- `"Gentoo"`
- `"openSUSE"`
- `"RancherOS"`
- `"Rocky Linux"`
- `"Ubuntu"`
- `"Unknown"`
- `error_message?: string`
A string containing information about errors that may occur when importing
a custom image.
- `min_disk_size?: number | null`
The minimum disk size in GB required for a Droplet to use this image.
- `name?: string`
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?: boolean`
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?: Array<"ams1" | "ams2" | "ams3" | 12 more>`
This attribute is an array of the regions that the image is available in. The regions are represented by their identifying slug values.
- `"ams1"`
- `"ams2"`
- `"ams3"`
- `"blr1"`
- `"fra1"`
- `"lon1"`
- `"nyc1"`
- `"nyc2"`
- `"nyc3"`
- `"sfo1"`
- `"sfo2"`
- `"sfo3"`
- `"sgp1"`
- `"tor1"`
- `"syd1"`
- `size_gigabytes?: number | null`
The size of the image in gigabytes.
- `slug?: string | null`
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?: "NEW" | "available" | "pending" | 2 more`
A status string indicating the state of a custom image. This may be `NEW`,
`available`, `pending`, `deleted`, or `retired`.
- `"NEW"`
- `"available"`
- `"pending"`
- `"deleted"`
- `"retired"`
- `tags?: Array | null`
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?: "base" | "snapshot" | "backup" | 2 more`
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).
- `"base"`
- `"snapshot"`
- `"backup"`
- `"custom"`
- `"admin"`
- `locked: boolean`
A boolean value indicating whether the Droplet has been locked, preventing actions by users.
- `memory: number`
Memory of the Droplet in megabytes.
- `name: string`
The human-readable name set for the Droplet instance.
- `networks: Networks`
The details of the network that are configured for the Droplet instance. This is an object that contains keys for IPv4 and IPv6. The value of each of these is an array that contains objects describing an individual IP resource allocated to the Droplet. These will define attributes like the IP address, netmask, and gateway of the specific network depending on the type of network it is.
- `v4?: Array`
- `gateway?: string`
The gateway of the specified IPv4 network interface.
For private interfaces, a gateway is not provided. This is denoted by
returning `nil` as its value.
- `ip_address?: string`
The IP address of the IPv4 network interface.
- `netmask?: string`
The netmask of the IPv4 network interface.
- `type?: "public" | "private"`
The type of the IPv4 network interface.
- `"public"`
- `"private"`
- `v6?: Array`
- `gateway?: string`
The gateway of the specified IPv6 network interface.
- `ip_address?: string`
The IP address of the IPv6 network interface.
- `netmask?: number`
The netmask of the IPv6 network interface.
- `type?: "public"`
The type of the IPv6 network interface.
**Note**: IPv6 private networking is not currently supported.
- `"public"`
- `next_backup_window: DropletNextBackupWindow | null`
The details of the Droplet's backups feature, if backups are configured for the Droplet. This object contains keys for the start and end times of the window during which the backup will start.
- `end?: string`
A time value given in ISO8601 combined date and time format specifying the end of the Droplet's backup window.
- `start?: string`
A time value given in ISO8601 combined date and time format specifying the start of the Droplet's backup window.
- `region: Region`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created in this region.
- `features: Array`
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: Array`
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.
- `size: Size`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created with this size.
- `description: string`
A string describing the class of Droplets created from this size. For example: Basic, General Purpose, CPU-Optimized, Memory-Optimized, or Storage-Optimized.
- `disk: number`
The amount of disk space set aside for Droplets of this size. The value is represented in gigabytes.
- `memory: number`
The amount of RAM allocated to Droplets created of this size. The value is represented in megabytes.
- `price_hourly: number`
This describes the price of the Droplet size as measured hourly. The value is measured in US dollars.
- `price_monthly: number`
This attribute describes the monthly cost of this Droplet size if the Droplet is kept for an entire month. The value is measured in US dollars.
- `regions: Array`
An array containing the region slugs where this size is available for Droplet creates.
- `slug: string`
A human-readable string that is used to uniquely identify each size.
- `transfer: number`
The amount of transfer bandwidth that is available for Droplets created in this size. This only counts traffic on the public interface. The value is given in terabytes.
- `vcpus: number`
The number of CPUs allocated to Droplets of this size.
- `disk_info?: Array`
An array of objects containing information about the disks available to Droplets created with this size.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `size_slug: string`
The unique slug identifier for the size of this Droplet.
- `snapshot_ids: Array`
An array of snapshot IDs of any snapshots created from the Droplet instance.
Requires `image:read` scope.
- `status: "new" | "active" | "off" | "archive"`
A status string indicating the state of the Droplet instance. This may be "new", "active", "off", or "archive".
- `"new"`
- `"active"`
- `"off"`
- `"archive"`
- `tags: Array`
An array of Tags the Droplet has been tagged with.
Requires `tag:read` scope.
- `vcpus: number`
The number of virtual CPUs.
- `volume_ids: Array`
A flat array including the unique identifier for each Block Storage volume attached to the Droplet.
Requires `block_storage:read` scope.
- `disk_info?: Array`
An array of objects containing information about the disks available to the Droplet.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `kernel?: Kernel | null`
**Note**: All Droplets created after March 2017 use internal kernels by default.
These Droplets will have this attribute set to `null`.
The current [kernel](https://docs.digitalocean.com/products/droplets/how-to/kernel/)
for Droplets with externally managed kernels. This will initially be set to
the kernel of the base image when the Droplet is created.
- `id?: number`
A unique number used to identify and reference a specific kernel.
- `name?: string`
The display name of the kernel. This is shown in the web UI and is generally a descriptive title for the kernel in question.
- `version?: string`
A standard kernel version string representing the version, patch, and release information.
- `vpc_uuid?: string`
A string specifying the UUID of the VPC to which the Droplet is assigned.
Requires `vpc:read` scope.
- `ip?: string`
The public IP address of the floating IP. It also serves as its identifier.
- `locked?: boolean`
A boolean value indicating whether or not the floating IP has pending actions preventing new ones from being submitted.
- `project_id?: string`
The UUID of the project to which the reserved IP currently belongs.
Requires `project:read` scope.
- `region?: Region`
The region that the floating IP is reserved to. When you query a floating IP, the entire region object will be returned.
### Example
```typescript
import Gradient from '@digitalocean/gradient';
const client = new Gradient();
const floatingIP = await client.gpuDroplets.floatingIPs.retrieve('45.55.96.47');
console.log(floatingIP.floating_ip);
```
## List
`client.gpuDroplets.floatingIPs.list(FloatingIPListParamsquery?, RequestOptionsoptions?): FloatingIPListResponse`
**get** `/v2/floating_ips`
To list all of the floating IPs available on your account, send a GET request to `/v2/floating_ips`.
### Parameters
- `query: FloatingIPListParams`
- `page?: number`
Which 'page' of paginated results to return.
- `per_page?: number`
Number of items returned per page
### Returns
- `FloatingIPListResponse`
- `meta: MetaProperties`
Information about the response itself.
- `total?: number`
Number of objects returned by the request.
- `floating_ips?: Array`
- `droplet?: unknown | Droplet`
The Droplet that the floating IP has been assigned to. When you query a floating IP, if it is assigned to a Droplet, the entire Droplet object will be returned. If it is not assigned, the value will be null.
Requires `droplet:read` scope.
- `unknown`
- `Droplet`
- `id: number`
A unique identifier for each Droplet instance. This is automatically generated upon Droplet creation.
- `backup_ids: Array`
An array of backup IDs of any backups that have been taken of the Droplet instance. Droplet backups are enabled at the time of the instance creation.
Requires `image:read` scope.
- `created_at: string`
A time value given in ISO8601 combined date and time format that represents when the Droplet was created.
- `disk: number`
The size of the Droplet's disk in gigabytes.
- `features: Array`
An array of features enabled on this Droplet.
- `image: Image`
The Droplet's image.
Requires `image:read` scope.
- `id?: number`
A unique number that can be used to identify and reference a specific image.
- `created_at?: string`
A time value given in ISO8601 combined date and time format that represents when the image was created.
- `description?: string`
An optional free-form text field to describe an image.
- `distribution?: "Arch Linux" | "CentOS" | "CoreOS" | 10 more`
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.
- `"Arch Linux"`
- `"CentOS"`
- `"CoreOS"`
- `"Debian"`
- `"Fedora"`
- `"Fedora Atomic"`
- `"FreeBSD"`
- `"Gentoo"`
- `"openSUSE"`
- `"RancherOS"`
- `"Rocky Linux"`
- `"Ubuntu"`
- `"Unknown"`
- `error_message?: string`
A string containing information about errors that may occur when importing
a custom image.
- `min_disk_size?: number | null`
The minimum disk size in GB required for a Droplet to use this image.
- `name?: string`
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?: boolean`
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?: Array<"ams1" | "ams2" | "ams3" | 12 more>`
This attribute is an array of the regions that the image is available in. The regions are represented by their identifying slug values.
- `"ams1"`
- `"ams2"`
- `"ams3"`
- `"blr1"`
- `"fra1"`
- `"lon1"`
- `"nyc1"`
- `"nyc2"`
- `"nyc3"`
- `"sfo1"`
- `"sfo2"`
- `"sfo3"`
- `"sgp1"`
- `"tor1"`
- `"syd1"`
- `size_gigabytes?: number | null`
The size of the image in gigabytes.
- `slug?: string | null`
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?: "NEW" | "available" | "pending" | 2 more`
A status string indicating the state of a custom image. This may be `NEW`,
`available`, `pending`, `deleted`, or `retired`.
- `"NEW"`
- `"available"`
- `"pending"`
- `"deleted"`
- `"retired"`
- `tags?: Array | null`
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?: "base" | "snapshot" | "backup" | 2 more`
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).
- `"base"`
- `"snapshot"`
- `"backup"`
- `"custom"`
- `"admin"`
- `locked: boolean`
A boolean value indicating whether the Droplet has been locked, preventing actions by users.
- `memory: number`
Memory of the Droplet in megabytes.
- `name: string`
The human-readable name set for the Droplet instance.
- `networks: Networks`
The details of the network that are configured for the Droplet instance. This is an object that contains keys for IPv4 and IPv6. The value of each of these is an array that contains objects describing an individual IP resource allocated to the Droplet. These will define attributes like the IP address, netmask, and gateway of the specific network depending on the type of network it is.
- `v4?: Array`
- `gateway?: string`
The gateway of the specified IPv4 network interface.
For private interfaces, a gateway is not provided. This is denoted by
returning `nil` as its value.
- `ip_address?: string`
The IP address of the IPv4 network interface.
- `netmask?: string`
The netmask of the IPv4 network interface.
- `type?: "public" | "private"`
The type of the IPv4 network interface.
- `"public"`
- `"private"`
- `v6?: Array`
- `gateway?: string`
The gateway of the specified IPv6 network interface.
- `ip_address?: string`
The IP address of the IPv6 network interface.
- `netmask?: number`
The netmask of the IPv6 network interface.
- `type?: "public"`
The type of the IPv6 network interface.
**Note**: IPv6 private networking is not currently supported.
- `"public"`
- `next_backup_window: DropletNextBackupWindow | null`
The details of the Droplet's backups feature, if backups are configured for the Droplet. This object contains keys for the start and end times of the window during which the backup will start.
- `end?: string`
A time value given in ISO8601 combined date and time format specifying the end of the Droplet's backup window.
- `start?: string`
A time value given in ISO8601 combined date and time format specifying the start of the Droplet's backup window.
- `region: Region`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created in this region.
- `features: Array`
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: Array`
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.
- `size: Size`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created with this size.
- `description: string`
A string describing the class of Droplets created from this size. For example: Basic, General Purpose, CPU-Optimized, Memory-Optimized, or Storage-Optimized.
- `disk: number`
The amount of disk space set aside for Droplets of this size. The value is represented in gigabytes.
- `memory: number`
The amount of RAM allocated to Droplets created of this size. The value is represented in megabytes.
- `price_hourly: number`
This describes the price of the Droplet size as measured hourly. The value is measured in US dollars.
- `price_monthly: number`
This attribute describes the monthly cost of this Droplet size if the Droplet is kept for an entire month. The value is measured in US dollars.
- `regions: Array`
An array containing the region slugs where this size is available for Droplet creates.
- `slug: string`
A human-readable string that is used to uniquely identify each size.
- `transfer: number`
The amount of transfer bandwidth that is available for Droplets created in this size. This only counts traffic on the public interface. The value is given in terabytes.
- `vcpus: number`
The number of CPUs allocated to Droplets of this size.
- `disk_info?: Array`
An array of objects containing information about the disks available to Droplets created with this size.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `size_slug: string`
The unique slug identifier for the size of this Droplet.
- `snapshot_ids: Array`
An array of snapshot IDs of any snapshots created from the Droplet instance.
Requires `image:read` scope.
- `status: "new" | "active" | "off" | "archive"`
A status string indicating the state of the Droplet instance. This may be "new", "active", "off", or "archive".
- `"new"`
- `"active"`
- `"off"`
- `"archive"`
- `tags: Array`
An array of Tags the Droplet has been tagged with.
Requires `tag:read` scope.
- `vcpus: number`
The number of virtual CPUs.
- `volume_ids: Array`
A flat array including the unique identifier for each Block Storage volume attached to the Droplet.
Requires `block_storage:read` scope.
- `disk_info?: Array`
An array of objects containing information about the disks available to the Droplet.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `kernel?: Kernel | null`
**Note**: All Droplets created after March 2017 use internal kernels by default.
These Droplets will have this attribute set to `null`.
The current [kernel](https://docs.digitalocean.com/products/droplets/how-to/kernel/)
for Droplets with externally managed kernels. This will initially be set to
the kernel of the base image when the Droplet is created.
- `id?: number`
A unique number used to identify and reference a specific kernel.
- `name?: string`
The display name of the kernel. This is shown in the web UI and is generally a descriptive title for the kernel in question.
- `version?: string`
A standard kernel version string representing the version, patch, and release information.
- `vpc_uuid?: string`
A string specifying the UUID of the VPC to which the Droplet is assigned.
Requires `vpc:read` scope.
- `ip?: string`
The public IP address of the floating IP. It also serves as its identifier.
- `locked?: boolean`
A boolean value indicating whether or not the floating IP has pending actions preventing new ones from being submitted.
- `project_id?: string`
The UUID of the project to which the reserved IP currently belongs.
Requires `project:read` scope.
- `region?: Region`
The region that the floating IP is reserved to. When you query a floating IP, the entire region object will be returned.
- `links?: PageLinks`
- `pages?: ForwardLinks | BackwardLinks | unknown`
- `ForwardLinks`
- `last?: string`
URI of the last page of the results.
- `next?: string`
URI of the next page of the results.
- `BackwardLinks`
- `first?: string`
URI of the first page of the results.
- `prev?: string`
URI of the previous page of the results.
- `unknown`
### Example
```typescript
import Gradient from '@digitalocean/gradient';
const client = new Gradient();
const floatingIPs = await client.gpuDroplets.floatingIPs.list();
console.log(floatingIPs.meta);
```
## Delete
`client.gpuDroplets.floatingIPs.delete(stringfloatingIP, RequestOptionsoptions?): void`
**delete** `/v2/floating_ips/{floating_ip}`
To delete a floating IP and remove it from your account, send a DELETE request
to `/v2/floating_ips/$FLOATING_IP_ADDR`.
A successful request will receive a 204 status code with no body in response.
This indicates that the request was processed successfully.
### Parameters
- `floatingIP: string`
### Example
```typescript
import Gradient from '@digitalocean/gradient';
const client = new Gradient();
await client.gpuDroplets.floatingIPs.delete('45.55.96.47');
```
## Domain Types
### Floating IP
- `FloatingIP`
- `droplet?: unknown | Droplet`
The Droplet that the floating IP has been assigned to. When you query a floating IP, if it is assigned to a Droplet, the entire Droplet object will be returned. If it is not assigned, the value will be null.
Requires `droplet:read` scope.
- `unknown`
- `Droplet`
- `id: number`
A unique identifier for each Droplet instance. This is automatically generated upon Droplet creation.
- `backup_ids: Array`
An array of backup IDs of any backups that have been taken of the Droplet instance. Droplet backups are enabled at the time of the instance creation.
Requires `image:read` scope.
- `created_at: string`
A time value given in ISO8601 combined date and time format that represents when the Droplet was created.
- `disk: number`
The size of the Droplet's disk in gigabytes.
- `features: Array`
An array of features enabled on this Droplet.
- `image: Image`
The Droplet's image.
Requires `image:read` scope.
- `id?: number`
A unique number that can be used to identify and reference a specific image.
- `created_at?: string`
A time value given in ISO8601 combined date and time format that represents when the image was created.
- `description?: string`
An optional free-form text field to describe an image.
- `distribution?: "Arch Linux" | "CentOS" | "CoreOS" | 10 more`
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.
- `"Arch Linux"`
- `"CentOS"`
- `"CoreOS"`
- `"Debian"`
- `"Fedora"`
- `"Fedora Atomic"`
- `"FreeBSD"`
- `"Gentoo"`
- `"openSUSE"`
- `"RancherOS"`
- `"Rocky Linux"`
- `"Ubuntu"`
- `"Unknown"`
- `error_message?: string`
A string containing information about errors that may occur when importing
a custom image.
- `min_disk_size?: number | null`
The minimum disk size in GB required for a Droplet to use this image.
- `name?: string`
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?: boolean`
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?: Array<"ams1" | "ams2" | "ams3" | 12 more>`
This attribute is an array of the regions that the image is available in. The regions are represented by their identifying slug values.
- `"ams1"`
- `"ams2"`
- `"ams3"`
- `"blr1"`
- `"fra1"`
- `"lon1"`
- `"nyc1"`
- `"nyc2"`
- `"nyc3"`
- `"sfo1"`
- `"sfo2"`
- `"sfo3"`
- `"sgp1"`
- `"tor1"`
- `"syd1"`
- `size_gigabytes?: number | null`
The size of the image in gigabytes.
- `slug?: string | null`
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?: "NEW" | "available" | "pending" | 2 more`
A status string indicating the state of a custom image. This may be `NEW`,
`available`, `pending`, `deleted`, or `retired`.
- `"NEW"`
- `"available"`
- `"pending"`
- `"deleted"`
- `"retired"`
- `tags?: Array | null`
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?: "base" | "snapshot" | "backup" | 2 more`
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).
- `"base"`
- `"snapshot"`
- `"backup"`
- `"custom"`
- `"admin"`
- `locked: boolean`
A boolean value indicating whether the Droplet has been locked, preventing actions by users.
- `memory: number`
Memory of the Droplet in megabytes.
- `name: string`
The human-readable name set for the Droplet instance.
- `networks: Networks`
The details of the network that are configured for the Droplet instance. This is an object that contains keys for IPv4 and IPv6. The value of each of these is an array that contains objects describing an individual IP resource allocated to the Droplet. These will define attributes like the IP address, netmask, and gateway of the specific network depending on the type of network it is.
- `v4?: Array`
- `gateway?: string`
The gateway of the specified IPv4 network interface.
For private interfaces, a gateway is not provided. This is denoted by
returning `nil` as its value.
- `ip_address?: string`
The IP address of the IPv4 network interface.
- `netmask?: string`
The netmask of the IPv4 network interface.
- `type?: "public" | "private"`
The type of the IPv4 network interface.
- `"public"`
- `"private"`
- `v6?: Array`
- `gateway?: string`
The gateway of the specified IPv6 network interface.
- `ip_address?: string`
The IP address of the IPv6 network interface.
- `netmask?: number`
The netmask of the IPv6 network interface.
- `type?: "public"`
The type of the IPv6 network interface.
**Note**: IPv6 private networking is not currently supported.
- `"public"`
- `next_backup_window: DropletNextBackupWindow | null`
The details of the Droplet's backups feature, if backups are configured for the Droplet. This object contains keys for the start and end times of the window during which the backup will start.
- `end?: string`
A time value given in ISO8601 combined date and time format specifying the end of the Droplet's backup window.
- `start?: string`
A time value given in ISO8601 combined date and time format specifying the start of the Droplet's backup window.
- `region: Region`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created in this region.
- `features: Array`
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: Array`
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.
- `size: Size`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created with this size.
- `description: string`
A string describing the class of Droplets created from this size. For example: Basic, General Purpose, CPU-Optimized, Memory-Optimized, or Storage-Optimized.
- `disk: number`
The amount of disk space set aside for Droplets of this size. The value is represented in gigabytes.
- `memory: number`
The amount of RAM allocated to Droplets created of this size. The value is represented in megabytes.
- `price_hourly: number`
This describes the price of the Droplet size as measured hourly. The value is measured in US dollars.
- `price_monthly: number`
This attribute describes the monthly cost of this Droplet size if the Droplet is kept for an entire month. The value is measured in US dollars.
- `regions: Array`
An array containing the region slugs where this size is available for Droplet creates.
- `slug: string`
A human-readable string that is used to uniquely identify each size.
- `transfer: number`
The amount of transfer bandwidth that is available for Droplets created in this size. This only counts traffic on the public interface. The value is given in terabytes.
- `vcpus: number`
The number of CPUs allocated to Droplets of this size.
- `disk_info?: Array`
An array of objects containing information about the disks available to Droplets created with this size.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `size_slug: string`
The unique slug identifier for the size of this Droplet.
- `snapshot_ids: Array`
An array of snapshot IDs of any snapshots created from the Droplet instance.
Requires `image:read` scope.
- `status: "new" | "active" | "off" | "archive"`
A status string indicating the state of the Droplet instance. This may be "new", "active", "off", or "archive".
- `"new"`
- `"active"`
- `"off"`
- `"archive"`
- `tags: Array`
An array of Tags the Droplet has been tagged with.
Requires `tag:read` scope.
- `vcpus: number`
The number of virtual CPUs.
- `volume_ids: Array`
A flat array including the unique identifier for each Block Storage volume attached to the Droplet.
Requires `block_storage:read` scope.
- `disk_info?: Array`
An array of objects containing information about the disks available to the Droplet.
- `size?: Size`
- `amount?: number`
The amount of space allocated to the disk.
- `unit?: string`
The unit of measure for the disk size.
- `type?: "local" | "scratch"`
The type of disk. All Droplets contain a `local` disk. Additionally, GPU Droplets can also have a `scratch` disk for non-persistent data.
- `"local"`
- `"scratch"`
- `gpu_info?: GPUInfo`
An object containing information about the GPU capabilities of Droplets created with this size.
- `count?: number`
The number of GPUs allocated to the Droplet.
- `model?: string`
The model of the GPU.
- `vram?: Vram`
- `amount?: number`
The amount of VRAM allocated to the GPU.
- `unit?: string`
The unit of measure for the VRAM.
- `kernel?: Kernel | null`
**Note**: All Droplets created after March 2017 use internal kernels by default.
These Droplets will have this attribute set to `null`.
The current [kernel](https://docs.digitalocean.com/products/droplets/how-to/kernel/)
for Droplets with externally managed kernels. This will initially be set to
the kernel of the base image when the Droplet is created.
- `id?: number`
A unique number used to identify and reference a specific kernel.
- `name?: string`
The display name of the kernel. This is shown in the web UI and is generally a descriptive title for the kernel in question.
- `version?: string`
A standard kernel version string representing the version, patch, and release information.
- `vpc_uuid?: string`
A string specifying the UUID of the VPC to which the Droplet is assigned.
Requires `vpc:read` scope.
- `ip?: string`
The public IP address of the floating IP. It also serves as its identifier.
- `locked?: boolean`
A boolean value indicating whether or not the floating IP has pending actions preventing new ones from being submitted.
- `project_id?: string`
The UUID of the project to which the reserved IP currently belongs.
Requires `project:read` scope.
- `region?: Region`
The region that the floating IP is reserved to. When you query a floating IP, the entire region object will be returned.
# Actions
## Create
`client.gpuDroplets.floatingIPs.actions.create(stringfloatingIP, ActionCreateParamsbody, RequestOptionsoptions?): ActionCreateResponse`
**post** `/v2/floating_ips/{floating_ip}/actions`
To initiate an action on a floating IP send a POST request to
`/v2/floating_ips/$FLOATING_IP/actions`. In the JSON body to the request,
set the `type` attribute to on of the supported action types:
| Action | Details |
| ---------- | ------------------------------------- |
| `assign` | Assigns a floating IP to a Droplet |
| `unassign` | Unassign a floating IP from a Droplet |
### Parameters
- `floatingIP: string`
- `ActionCreateParams = FloatingIPActionUnassign | FloatingIPActionAssign`
- `ActionCreateParamsBase`
- `type: "assign" | "unassign"`
The type of action to initiate for the floating IP.
- `"assign"`
- `"unassign"`
- `FloatingIPActionUnassign extends ActionCreateParamsBase`
- `FloatingIPActionAssign extends ActionCreateParamsBase`
### Returns
- `ActionCreateResponse`
- `action?: Action`
- `project_id?: string`
The UUID of the project to which the reserved IP currently belongs.
### Example
```typescript
import Gradient from '@digitalocean/gradient';
const client = new Gradient();
const action = await client.gpuDroplets.floatingIPs.actions.create('45.55.96.47', { type: 'assign' });
console.log(action.action);
```
## Retrieve
`client.gpuDroplets.floatingIPs.actions.retrieve(numberactionID, ActionRetrieveParamsparams, RequestOptionsoptions?): ActionRetrieveResponse`
**get** `/v2/floating_ips/{floating_ip}/actions/{action_id}`
To retrieve the status of a floating IP action, send a GET request to `/v2/floating_ips/$FLOATING_IP/actions/$ACTION_ID`.
### Parameters
- `actionID: number`
- `params: ActionRetrieveParams`
- `floating_ip: string`
A floating IP address.
### Returns
- `ActionRetrieveResponse`
- `action?: Action`
- `project_id?: string`
The UUID of the project to which the reserved IP currently belongs.
### Example
```typescript
import Gradient from '@digitalocean/gradient';
const client = new Gradient();
const action = await client.gpuDroplets.floatingIPs.actions.retrieve(36804636, {
floating_ip: '45.55.96.47',
});
console.log(action.action);
```
## List
`client.gpuDroplets.floatingIPs.actions.list(stringfloatingIP, RequestOptionsoptions?): ActionListResponse`
**get** `/v2/floating_ips/{floating_ip}/actions`
To retrieve all actions that have been executed on a floating IP, send a GET request to `/v2/floating_ips/$FLOATING_IP/actions`.
### Parameters
- `floatingIP: string`
### Returns
- `ActionListResponse`
- `meta: MetaProperties`
Information about the response itself.
- `total?: number`
Number of objects returned by the request.
- `actions?: Array`
- `id?: number`
A unique numeric ID that can be used to identify and reference an action.
- `completed_at?: string | null`
A time value given in ISO8601 combined date and time format that represents when the action was completed.
- `region?: Region`
- `available: boolean`
This is a boolean value that represents whether new Droplets can be created in this region.
- `features: Array`
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: Array`
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.
- `region_slug?: string | null`
A human-readable string that is used as a unique identifier for each region.
- `resource_id?: number | null`
A unique identifier for the resource that the action is associated with.
- `resource_type?: string`
The type of resource that the action is associated with.
- `started_at?: string`
A time value given in ISO8601 combined date and time format that represents when the action was initiated.
- `status?: "in-progress" | "completed" | "errored"`
The current status of the action. This can be "in-progress", "completed", or "errored".
- `"in-progress"`
- `"completed"`
- `"errored"`
- `type?: string`
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.
- `links?: PageLinks`
- `pages?: ForwardLinks | BackwardLinks | unknown`
- `ForwardLinks`
- `last?: string`
URI of the last page of the results.
- `next?: string`
URI of the next page of the results.
- `BackwardLinks`
- `first?: string`
URI of the first page of the results.
- `prev?: string`
URI of the previous page of the results.
- `unknown`
### Example
```typescript
import Gradient from '@digitalocean/gradient';
const client = new Gradient();
const actions = await client.gpuDroplets.floatingIPs.actions.list('45.55.96.47');
console.log(actions.meta);
```