Docs · static mirror — the interactive version loads with JavaScript.

DigitalOcean

Source: https://runstack.engineer/docs/toolkits/digital-ocean

Droplets, domains and DNS, firewalls, images, databases, Kubernetes, load balancers, volumes, SSH keys, tags, VPCs, and App Platform.

Tools (48):

ToolDescription
digitalOceanCreateDropletProvision a new Droplet (VM) with name, region, size, and image. The image, region, and size must be mutually compatible — the region must be listed in the available regions of the image. Returns the created Droplet.
digitalOceanListDropletsList all Droplets in the account with specs, status, IP addresses, region, image, and tags. Paginate with page/per_page (up to 200) and optionally filter by tag; a single request returns only one page.
digitalOceanRetrieveDropletGet detailed information about a Droplet by ID: status, specs, IPv4/IPv6 addresses, image, region, VPC, backups, attached volumes, and tags.
digitalOceanDeleteDropletPermanently delete a Droplet by ID. Deletion is irreversible — all data is lost. Confirm the ID with the user and verify a backup or snapshot exists first.
digitalOceanCreateDomainAdd a domain to DigitalOcean DNS for hosting and management, optionally with an initial A record pointing the apex at an IP address. The domain must be unique in the account.
digitalOceanListDomainsList all DNS domains in the account with TTLs and zone files. Paginate with page/per_page; a single request returns only one page.
digitalOceanRetrieveDomainGet complete details for a domain including TTL and full DNS zone file contents. Use to verify DNS configuration.
digitalOceanDeleteDomainPermanently delete a domain from DigitalOcean DNS. If it backs a Let’s Encrypt certificate, delete the certificate first and reconfigure dependent resources.
digitalOceanCreateDomainRecordCreate a DNS record (A, AAAA, CNAME, MX, TXT, NS, SRV, CAA) under a domain. Confirm the domain exists first. Use name "@" for the root domain.
digitalOceanListDomainRecordsList DNS records for a domain with pagination. Filter by record type (A, CNAME, MX, ...) or record name ('www', '@').
digitalOceanRetrieveDomainRecordGet a single DNS record by domain name and record ID. Use to fetch record details before updating or deleting.
digitalOceanUpdateDomainRecordUpdate any attribute of an existing DNS record (data, name, TTL, priority, port, weight, flags, tag). Confirm the record ID first.
digitalOceanDeleteDomainRecordDelete a DNS record by domain name and record ID. Returns success on 204 No Content.
digitalOceanCreateFirewallCreate a cloud firewall with inbound and outbound rules (at least one of each). Target Droplets by ID or tag, and optionally scope to a VPC. Supports tcp, udp, and icmp.
digitalOceanListFirewallsList all cloud firewalls with rules, associated Droplets, tags, and status. Use to audit network security or find firewall IDs.
digitalOceanDeleteFirewallDelete a firewall by ID once confirmed no longer needed. Droplets previously covered lose those rules.
digitalOceanCreateCustomImageImport a custom Linux VM disk image from a public URL (raw, qcow2, VHDX, VDI, VMDK; gzip/bzip2 ok) for later Droplet creation. Processing is asynchronous — monitor status via the returned image ID.
digitalOceanListImagesList distribution, application, and private images. Filter by type, private visibility, or tag; paginate for large inventories.
digitalOceanRetrieveImageGet detailed metadata for an image by numeric ID or slug (e.g. ubuntu-20-04-x64). Check regions and min disk size before creating Droplets from it.
digitalOceanDeleteImagePermanently delete a user-owned custom image or snapshot by numeric ID. Distribution and Marketplace images cannot be deleted (403).
digitalOceanListSnapshotsList Droplet and volume snapshots for backup inventory workflows. Filter by resource type and paginate through large sets.
digitalOceanCreateDatabaseClusterProvision a managed database cluster (PostgreSQL, MySQL, Valkey, MongoDB, Kafka, OpenSearch) with engine, version, region, size, and node count. Returns connection credentials; the cluster starts in creating status and takes minutes to come online.
digitalOceanListDatabasesList managed database clusters with pagination and optional tag filter. Iterate page/per_page to retrieve every cluster.
digitalOceanDeleteDatabaseClusterPermanently destroy a managed database cluster by UUID. Confirm it is no longer needed — all data is lost.
digitalOceanListDatabaseOptionsList valid engines, versions, regions, and sizes/layouts for new database clusters. Call this to discover allowed values before creating a cluster.
digitalOceanCreateKubernetesClusterCreate a managed Kubernetes (DOKS) cluster with name, region, version, and at least one node pool. Starts in provisioning state and takes minutes to run. List Kubernetes options first for valid regions, versions, and sizes.
digitalOceanListKubernetesClustersList all Kubernetes clusters with node pools and status. Paginate through every page to enumerate each cluster.
digitalOceanCreateLoadBalancerCreate a load balancer in a region with forwarding rules mapping entry to backend protocols and ports. Attach Droplets by ID or tag (mutually exclusive).
digitalOceanListLoadBalancersList all load balancers with IPs, forwarding rules, health checks, sticky sessions, Droplets, and regions. Paginate to cover every balancer.
digitalOceanDeleteLoadBalancerPermanently delete a load balancer by ID after confirming it. Backends stop receiving its traffic.
digitalOceanCreateVolumeProvision persistent block storage in a region that supports volumes (e.g. 100 GiB ext4 backup volume in nyc1). Optionally create from a snapshot or pre-format with a filesystem.
digitalOceanListVolumesList block storage volumes, optionally filtered by exact name and region. Paginate to cover every volume.
digitalOceanDeleteVolumePermanently delete a block storage volume by UUID. The volume must first be detached from all Droplets. Cannot be undone.
digitalOceanCreateSshKeyRegister an SSH public key (OpenSSH format) with the account so new Droplets can embed it for secure access. The key must not already exist on the account.
digitalOceanListSshKeysList account SSH keys with IDs, names, key material, and fingerprints. Use to find a key ID for Droplet creation.
digitalOceanDeleteSshKeyRemove an SSH key from the account by numeric ID or fingerprint after confirming ownership. Existing Droplets keep their embedded keys.
digitalOceanCreateTagCreate a tag for organizing Droplets, images, volumes, snapshots, and databases. Idempotent — returns the existing tag if the name is taken. Names allow letters, numbers, hyphens, underscores (1-255 chars).
digitalOceanListTagsList all account tags with per-resource-type counts. Paginate with page/per_page to retrieve every tag.
digitalOceanRetrieveTagGet a single tag by name with counts and last-tagged info for each grouped resource type.
digitalOceanDeleteTagDelete a tag; it is automatically removed from all tagged resources. Idempotent — deleting a missing tag still succeeds.
digitalOceanTagResourceAssign an existing tag to one or more resources (Droplets, volumes, images, databases, load balancers, firewalls, domains, etc.) in a single call.
digitalOceanUntagResourceRemove a tag from multiple resources in one call. Use to bulk-untag without deleting the tag itself.
digitalOceanCreateVpcCreate a Virtual Private Cloud in a region for isolating Droplets, databases, load balancers, and Kubernetes clusters. In-region VPC traffic is free. The first VPC per region becomes the default.
digitalOceanListVpcsInventory all VPCs on the account. Paginate with page/per_page (max 200) to retrieve the complete set.
digitalOceanRetrieveVpcGet a VPC by ID for configuration or auditing: CIDR range, region, default status, resolver IP, and timestamps.
digitalOceanUpdateVpcRename a VPC, change its description, or set it as the regional default.
digitalOceanDeleteVpcPermanently delete an empty, non-default VPC by ID. Confirm the ID first: deletion is irreversible, and VPCs with member resources or default status cannot be deleted.
digitalOceanListAppsList App Platform apps with metadata, live URLs, and deployment status. Use to discover app IDs by name or enumerate every app with pagination.