Skip to content
  • Auto
  • Light
  • Dark

Shared

Shared

ModelsExpand Collapse
Action { id, completed_at, region, 6 more }
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.

formatdate-time
region?: Region { available, features, name, 2 more }
available: boolean

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

features: Array<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: Array<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.

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.

formatdate-time
status?: "in-progress" | "completed" | "errored"

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

Accepts one of the following:
"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.

The linked actions can be used to check the status of a Droplet's create event.

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

A URL that can be used to access the action.

formaturi

A string specifying the type of the related action.

Links to other pages

Information about how to reach other pages

First page

Last page

Next page

Previous page

APIMeta { page, pages, total }

Meta information about the data set

page?: number

The current page

formatint64
pages?: number

Total number of pages

formatint64
total?: number

Total amount of items over all pages

formatint64

URI of the first page of the results.

URI of the previous page of the results.

ChatCompletionChunk { id, choices, created, 3 more }

Represents a streamed chunk of a chat completion response returned by the model, based on the provided input.

id: string

A unique identifier for the chat completion. Each chunk has the same ID.

choices: Array<Choice>

A list of chat completion choices. Can contain more than one elements if n is greater than 1. Can also be empty for the last chunk if you set stream_options: {"include_usage": true}.

delta: Delta { content, reasoning_content, refusal, 2 more }

A chat completion delta generated by streamed model responses.

content?: string | null

The contents of the chunk message.

reasoning_content?: string | null

The reasoning content generated by the model.

refusal?: string | null

The refusal message generated by the model.

role?: "developer" | "user" | "assistant"

The role of the author of this message.

Accepts one of the following:
"developer"
"user"
"assistant"
tool_calls?: Array<ToolCall>
index: number
id?: string

The ID of the tool call.

function?: Function { arguments, name }

A chunk of a function that the model called.

arguments?: string

The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function.

name?: string

The name of the function to call.

type?: "function"

The type of the tool. Currently, only function is supported.

Accepts one of the following:
"function"
finish_reason: "stop" | "length" | "tool_calls" | "content_filter" | null

The reason the model stopped generating tokens. This will be stop if the model hit a natural stop point or a provided stop sequence, or length if the maximum number of tokens specified in the request was reached, tool_calls if the model called a tool.

Accepts one of the following:
"stop"
"length"
"tool_calls"
"content_filter"
index: number

The index of the choice in the list of choices.

logprobs?: Logprobs | null

Log probability information for the choice.

content: Array<ChatCompletionTokenLogprob { token, bytes, logprob, top_logprobs } > | null

A list of message content tokens with log probability information.

token: string

The token.

bytes: Array<number> | null

A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be null if there is no bytes representation for the token.

logprob: number

The log probability of this token, if it is within the top 20 most likely tokens. Otherwise, the value -9999.0 is used to signify that the token is very unlikely.

top_logprobs: Array<TopLogprob>

List of the most likely tokens and their log probability, at this token position. In rare cases, there may be fewer than the number of requested top_logprobs returned.

token: string

The token.

bytes: Array<number> | null

A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be null if there is no bytes representation for the token.

logprob: number

The log probability of this token, if it is within the top 20 most likely tokens. Otherwise, the value -9999.0 is used to signify that the token is very unlikely.

refusal: Array<ChatCompletionTokenLogprob { token, bytes, logprob, top_logprobs } > | null

A list of message refusal tokens with log probability information.

token: string

The token.

bytes: Array<number> | null

A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be null if there is no bytes representation for the token.

logprob: number

The log probability of this token, if it is within the top 20 most likely tokens. Otherwise, the value -9999.0 is used to signify that the token is very unlikely.

top_logprobs: Array<TopLogprob>

List of the most likely tokens and their log probability, at this token position. In rare cases, there may be fewer than the number of requested top_logprobs returned.

token: string

The token.

bytes: Array<number> | null

A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be null if there is no bytes representation for the token.

logprob: number

The log probability of this token, if it is within the top 20 most likely tokens. Otherwise, the value -9999.0 is used to signify that the token is very unlikely.

created: number

The Unix timestamp (in seconds) of when the chat completion was created. Each chunk has the same timestamp.

model: string

The model to generate the completion.

object: "chat.completion.chunk"

The object type, which is always chat.completion.chunk.

Accepts one of the following:
"chat.completion.chunk"
usage?: CompletionUsage { completion_tokens, prompt_tokens, total_tokens } | null

An optional field that will only be present when you set stream_options: {"include_usage": true} in your request. When present, it contains a null value except for the last chunk which contains the token usage statistics for the entire request.

NOTE: If the stream is interrupted or cancelled, you may not receive the final usage chunk which contains the total token usage for the request.

completion_tokens: number

Number of tokens in the generated completion.

prompt_tokens: number

Number of tokens in the prompt.

total_tokens: number

Total number of tokens used in the request (prompt + completion).

ChatCompletionTokenLogprob { token, bytes, logprob, top_logprobs }
token: string

The token.

bytes: Array<number> | null

A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be null if there is no bytes representation for the token.

logprob: number

The log probability of this token, if it is within the top 20 most likely tokens. Otherwise, the value -9999.0 is used to signify that the token is very unlikely.

top_logprobs: Array<TopLogprob>

List of the most likely tokens and their log probability, at this token position. In rare cases, there may be fewer than the number of requested top_logprobs returned.

token: string

The token.

bytes: Array<number> | null

A list of integers representing the UTF-8 bytes representation of the token. Useful in instances where characters are represented by multiple tokens and their byte representations must be combined to generate the correct text representation. Can be null if there is no bytes representation for the token.

logprob: number

The log probability of this token, if it is within the top 20 most likely tokens. Otherwise, the value -9999.0 is used to signify that the token is very unlikely.

CompletionUsage { completion_tokens, prompt_tokens, total_tokens }

Usage statistics for the completion request.

completion_tokens: number

Number of tokens in the generated completion.

prompt_tokens: number

Number of tokens in the prompt.

total_tokens: number

Total number of tokens used in the request (prompt + completion).

DiskInfo { size, type }
size?: Size { amount, unit }
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.

Accepts one of the following:
"local"
"scratch"
Droplet { id, backup_ids, created_at, 20 more }
id: number

A unique identifier for each Droplet instance. This is automatically generated upon Droplet creation.

backup_ids: Array<number>

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.

formatdate-time
disk: number

The size of the Droplet's disk in gigabytes.

features: Array<string>

An array of features enabled on this Droplet.

image: Image { id, created_at, description, 11 more }

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.

formatdate-time
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.

Accepts one of the following:
"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.

minimum0
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.

Accepts one of the following:
"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.

formatfloat
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.

Accepts one of the following:
"NEW"
"available"
"pending"
"deleted"
"retired"
tags?: Array<string> | 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).

Accepts one of the following:
"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.

multipleOf8
name: string

The human-readable name set for the Droplet instance.

networks: Networks { v4, v6 }

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<NetworkV4 { gateway, ip_address, netmask, type } >
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.

formatipv4
netmask?: string

The netmask of the IPv4 network interface.

formatipv4
type?: "public" | "private"

The type of the IPv4 network interface.

Accepts one of the following:
"public"
"private"
v6?: Array<NetworkV6 { gateway, ip_address, netmask, type } >
gateway?: string

The gateway of the specified IPv6 network interface.

formatipv6
ip_address?: string

The IP address of the IPv6 network interface.

formatipv6
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.

Accepts one of the following:
"public"
next_backup_window: DropletNextBackupWindow { end, start } | 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.

formatdate-time
start?: string

A time value given in ISO8601 combined date and time format specifying the start of the Droplet's backup window.

formatdate-time
region: Region { available, features, name, 2 more }
available: boolean

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

features: Array<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: Array<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.

size: Size { available, description, disk, 9 more }
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.

multipleOf8
minimum8
price_hourly: number

This describes the price of the Droplet size as measured hourly. The value is measured in US dollars.

formatfloat
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.

formatfloat
regions: Array<string>

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.

formatfloat
vcpus: number

The number of CPUs allocated to Droplets of this size.

disk_info?: Array<DiskInfo { size, type } >

An array of objects containing information about the disks available to Droplets created with this size.

size?: Size { amount, unit }
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.

Accepts one of the following:
"local"
"scratch"
gpu_info?: GPUInfo { count, model, vram }

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, unit }
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<number>

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".

Accepts one of the following:
"new"
"active"
"off"
"archive"
tags: Array<string>

An array of Tags the Droplet has been tagged with.
Requires tag:read scope.

vcpus: number

The number of virtual CPUs.

volume_ids: Array<string>

A flat array including the unique identifier for each Block Storage volume attached to the Droplet.
Requires block_storage:read scope.

disk_info?: Array<DiskInfo { size, type } >

An array of objects containing information about the disks available to the Droplet.

size?: Size { amount, unit }
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.

Accepts one of the following:
"local"
"scratch"
gpu_info?: GPUInfo { count, model, vram }

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, unit }
amount?: number

The amount of VRAM allocated to the GPU.

unit?: string

The unit of measure for the VRAM.

Deprecatedkernel?: Kernel { id, name, version } | 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 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.

DropletNextBackupWindow { end, start }
end?: string

A time value given in ISO8601 combined date and time format specifying the end of the Droplet's backup window.

formatdate-time
start?: string

A time value given in ISO8601 combined date and time format specifying the start of the Droplet's backup window.

formatdate-time
FirewallRuleTarget { addresses, droplet_ids, kubernetes_ids, 2 more }
addresses?: Array<string>

An array of strings containing the IPv4 addresses, IPv6 addresses, IPv4 CIDRs, and/or IPv6 CIDRs to which the firewall will allow traffic.

droplet_ids?: Array<number>

An array containing the IDs of the Droplets to which the firewall will allow traffic.

kubernetes_ids?: Array<string>

An array containing the IDs of the Kubernetes clusters to which the firewall will allow traffic.

load_balancer_uids?: Array<string>

An array containing the IDs of the load balancers to which the firewall will allow traffic.

tags?: Array<string> | null

A flat array of tag names as strings to be applied to the resource. Tag names must exist in order to be referenced in a request.

Requires tag:create and tag:read scopes.

URI of the last page of the results.

URI of the next page of the results.

GarbageCollection { blobs_deleted, created_at, freed_bytes, 4 more }
blobs_deleted?: number

The number of blobs deleted as a result of this garbage collection.

created_at?: string

The time the garbage collection was created.

formatdate-time
freed_bytes?: number

The number of bytes freed as a result of this garbage collection.

registry_name?: string

The name of the container registry.

status?: "requested" | "waiting for write JWTs to expire" | "scanning manifests" | 5 more

The current status of this garbage collection.

Accepts one of the following:
"requested"
"waiting for write JWTs to expire"
"scanning manifests"
"deleting unreferenced blobs"
"cancelling"
"failed"
"succeeded"
"cancelled"
updated_at?: string

The time the garbage collection was last updated.

formatdate-time
uuid?: string

A string specifying the UUID of the garbage collection.

GPUInfo { count, model, vram }

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, unit }
amount?: number

The amount of VRAM allocated to the GPU.

unit?: string

The unit of measure for the VRAM.

Image { id, created_at, description, 11 more }
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.

formatdate-time
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.

Accepts one of the following:
"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.

minimum0
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.

Accepts one of the following:
"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.

formatfloat
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.

Accepts one of the following:
"NEW"
"available"
"pending"
"deleted"
"retired"
tags?: Array<string> | 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).

Accepts one of the following:
"base"
"snapshot"
"backup"
"custom"
"admin"
ImageGenCompletedEvent { b64_json, background, created_at, 5 more }

Emitted when image generation has completed and the final image is available.

b64_json: string

Base64-encoded image data, suitable for rendering as an image.

background: "transparent" | "opaque" | "auto"

The background setting for the generated image.

Accepts one of the following:
"transparent"
"opaque"
"auto"
created_at: number

The Unix timestamp when the event was created.

output_format: "png" | "webp" | "jpeg"

The output format for the generated image.

Accepts one of the following:
"png"
"webp"
"jpeg"
quality: "low" | "medium" | "high" | "auto"

The quality setting for the generated image.

Accepts one of the following:
"low"
"medium"
"high"
"auto"
size: "1024x1024" | "1024x1536" | "1536x1024" | "auto"

The size of the generated image.

Accepts one of the following:
"1024x1024"
"1024x1536"
"1536x1024"
"auto"
type: "image_generation.completed"

The type of the event. Always image_generation.completed.

Accepts one of the following:
"image_generation.completed"
usage: Usage { input_tokens, input_tokens_details, output_tokens, total_tokens }

For gpt-image-1 only, the token usage information for the image generation.

input_tokens: number

The number of tokens (images and text) in the input prompt.

input_tokens_details: InputTokensDetails { image_tokens, text_tokens }

The input tokens detailed information for the image generation.

image_tokens: number

The number of image tokens in the input prompt.

text_tokens: number

The number of text tokens in the input prompt.

output_tokens: number

The number of image tokens in the output image.

total_tokens: number

The total number of tokens (images and text) used for the image generation.

ImageGenPartialImageEvent { b64_json, background, created_at, 5 more }

Emitted when a partial image is available during image generation streaming.

b64_json: string

Base64-encoded partial image data, suitable for rendering as an image.

background: "transparent" | "opaque" | "auto"

The background setting for the requested image.

Accepts one of the following:
"transparent"
"opaque"
"auto"
created_at: number

The Unix timestamp when the event was created.

output_format: "png" | "webp" | "jpeg"

The output format for the requested image.

Accepts one of the following:
"png"
"webp"
"jpeg"
partial_image_index: number

0-based index for the partial image (streaming).

quality: "low" | "medium" | "high" | "auto"

The quality setting for the requested image.

Accepts one of the following:
"low"
"medium"
"high"
"auto"
size: "1024x1024" | "1024x1536" | "1536x1024" | "auto"

The size of the requested image.

Accepts one of the following:
"1024x1024"
"1024x1536"
"1536x1024"
"auto"
type: "image_generation.partial_image"

The type of the event. Always image_generation.partial_image.

Accepts one of the following:
"image_generation.partial_image"
ImageGenStreamEvent = ImageGenPartialImageEvent { b64_json, background, created_at, 5 more } | ImageGenCompletedEvent { b64_json, background, created_at, 5 more }

Emitted when a partial image is available during image generation streaming.

Accepts one of the following:
ImageGenPartialImageEvent { b64_json, background, created_at, 5 more }

Emitted when a partial image is available during image generation streaming.

b64_json: string

Base64-encoded partial image data, suitable for rendering as an image.

background: "transparent" | "opaque" | "auto"

The background setting for the requested image.

Accepts one of the following:
"transparent"
"opaque"
"auto"
created_at: number

The Unix timestamp when the event was created.

output_format: "png" | "webp" | "jpeg"

The output format for the requested image.

Accepts one of the following:
"png"
"webp"
"jpeg"
partial_image_index: number

0-based index for the partial image (streaming).

quality: "low" | "medium" | "high" | "auto"

The quality setting for the requested image.

Accepts one of the following:
"low"
"medium"
"high"
"auto"
size: "1024x1024" | "1024x1536" | "1536x1024" | "auto"

The size of the requested image.

Accepts one of the following:
"1024x1024"
"1024x1536"
"1536x1024"
"auto"
type: "image_generation.partial_image"

The type of the event. Always image_generation.partial_image.

Accepts one of the following:
"image_generation.partial_image"
ImageGenCompletedEvent { b64_json, background, created_at, 5 more }

Emitted when image generation has completed and the final image is available.

b64_json: string

Base64-encoded image data, suitable for rendering as an image.

background: "transparent" | "opaque" | "auto"

The background setting for the generated image.

Accepts one of the following:
"transparent"
"opaque"
"auto"
created_at: number

The Unix timestamp when the event was created.

output_format: "png" | "webp" | "jpeg"

The output format for the generated image.

Accepts one of the following:
"png"
"webp"
"jpeg"
quality: "low" | "medium" | "high" | "auto"

The quality setting for the generated image.

Accepts one of the following:
"low"
"medium"
"high"
"auto"
size: "1024x1024" | "1024x1536" | "1536x1024" | "auto"

The size of the generated image.

Accepts one of the following:
"1024x1024"
"1024x1536"
"1536x1024"
"auto"
type: "image_generation.completed"

The type of the event. Always image_generation.completed.

Accepts one of the following:
"image_generation.completed"
usage: Usage { input_tokens, input_tokens_details, output_tokens, total_tokens }

For gpt-image-1 only, the token usage information for the image generation.

input_tokens: number

The number of tokens (images and text) in the input prompt.

input_tokens_details: InputTokensDetails { image_tokens, text_tokens }

The input tokens detailed information for the image generation.

image_tokens: number

The number of image tokens in the input prompt.

text_tokens: number

The number of text tokens in the input prompt.

output_tokens: number

The number of image tokens in the output image.

total_tokens: number

The total number of tokens (images and text) used for the image generation.

Kernel { id, name, version }

Note: All Droplets created after March 2017 use internal kernels by default. These Droplets will have this attribute set to null.

The current 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.

MetaProperties { total }

Information about the response itself.

total?: number

Number of objects returned by the request.

NetworkV4 { gateway, ip_address, netmask, type }
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.

formatipv4
netmask?: string

The netmask of the IPv4 network interface.

formatipv4
type?: "public" | "private"

The type of the IPv4 network interface.

Accepts one of the following:
"public"
"private"
NetworkV6 { gateway, ip_address, netmask, type }
gateway?: string

The gateway of the specified IPv6 network interface.

formatipv6
ip_address?: string

The IP address of the IPv6 network interface.

formatipv6
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.

Accepts one of the following:
"public"
Accepts one of the following:

URI of the last page of the results.

URI of the next page of the results.

URI of the first page of the results.

URI of the previous page of the results.

Region { available, features, name, 2 more }
available: boolean

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

features: Array<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: Array<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.

Size { available, description, disk, 9 more }
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.

multipleOf8
minimum8
price_hourly: number

This describes the price of the Droplet size as measured hourly. The value is measured in US dollars.

formatfloat
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.

formatfloat
regions: Array<string>

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.

formatfloat
vcpus: number

The number of CPUs allocated to Droplets of this size.

disk_info?: Array<DiskInfo { size, type } >

An array of objects containing information about the disks available to Droplets created with this size.

size?: Size { amount, unit }
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.

Accepts one of the following:
"local"
"scratch"
gpu_info?: GPUInfo { count, model, vram }

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, unit }
amount?: number

The amount of VRAM allocated to the GPU.

unit?: string

The unit of measure for the VRAM.

Snapshots { id, created_at, min_disk_size, 6 more }
id: string

The unique identifier for the snapshot.

created_at: string

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

formatdate-time
min_disk_size: number

The minimum size in GB required for a volume or Droplet to use this snapshot.

name: string

A human-readable name for the snapshot.

regions: Array<string>

An array of the regions that the snapshot is available in. The regions are represented by their identifying slug values.

resource_id: string

The unique identifier for the resource that the snapshot originated from.

resource_type: "droplet" | "volume"

The type of resource that the snapshot originated from.

Accepts one of the following:
"droplet"
"volume"
size_gigabytes: number

The billable size of the snapshot in gigabytes.

formatfloat
tags: Array<string> | null

An array of Tags the snapshot has been tagged with.

Requires tag:read scope.

Subscription { created_at, tier, updated_at }
created_at?: string

The time at which the subscription was created.

formatdate-time
tier?: SubscriptionTierBase { allow_storage_overage, included_bandwidth_bytes, included_repositories, 5 more }
allow_storage_overage?: boolean

A boolean indicating whether the subscription tier supports additional storage above what is included in the base plan at an additional cost per GiB used.

included_bandwidth_bytes?: number

The amount of outbound data transfer included in the subscription tier in bytes.

included_repositories?: number

The number of repositories included in the subscription tier. 0 indicates that the subscription tier includes unlimited repositories.

included_storage_bytes?: number

The amount of storage included in the subscription tier in bytes.

monthly_price_in_cents?: number

The monthly cost of the subscription tier in cents.

name?: string

The name of the subscription tier.

slug?: string

The slug identifier of the subscription tier.

storage_overage_price_in_cents?: number

The price paid in cents per GiB for additional storage beyond what is included in the subscription plan.

updated_at?: string

The time at which the subscription was last updated.

formatdate-time
SubscriptionTierBase { allow_storage_overage, included_bandwidth_bytes, included_repositories, 5 more }
allow_storage_overage?: boolean

A boolean indicating whether the subscription tier supports additional storage above what is included in the base plan at an additional cost per GiB used.

included_bandwidth_bytes?: number

The amount of outbound data transfer included in the subscription tier in bytes.

included_repositories?: number

The number of repositories included in the subscription tier. 0 indicates that the subscription tier includes unlimited repositories.

included_storage_bytes?: number

The amount of storage included in the subscription tier in bytes.

monthly_price_in_cents?: number

The monthly cost of the subscription tier in cents.

name?: string

The name of the subscription tier.

slug?: string

The slug identifier of the subscription tier.

storage_overage_price_in_cents?: number

The price paid in cents per GiB for additional storage beyond what is included in the subscription plan.

VpcPeering { id, created_at, name, 2 more }
id?: string

A unique ID that can be used to identify and reference the VPC peering.

formatuuid
created_at?: string

A time value given in ISO8601 combined date and time format.

formatdate-time
name?: string

The name of the VPC peering. Must be unique within the team and may only contain alphanumeric characters and dashes.

status?: "PROVISIONING" | "ACTIVE" | "DELETING"

The current status of the VPC peering.

Accepts one of the following:
"PROVISIONING"
"ACTIVE"
"DELETING"
vpc_ids?: Array<string>

An array of the two peered VPCs IDs.