Steampipe lets you query cloud APIs and services with SQL by exposing them as tables, with no ETL or separate database required.
digitalocean/godo
Go client library for the DigitalOcean V2 API, covering infrastructure resources and DigitalOcean Inference model calls.
- Stars
- 1,548
- Forks
- 408
- Open issues
- 53
- Last commit
- yesterday
What is it?
godo is a Go client library for the DigitalOcean V2 API. It wraps the REST endpoints in typed Go services, so developers can create and manage Droplets, Kubernetes clusters, volumes and other resources from Go code instead of hand-written HTTP calls. A client is created with an API token, and each part of the API is exposed as a service on that client.
The library also includes support for DigitalOcean Inference, with chat completions (including streaming), image generation, embeddings, model listing and batch inference through the same client. It also exposes Action Gateway resources for tools, toolbelts, MCP servers and sessions. Paginated endpoints are handled by following page or token links, and an optional retry configuration with exponential backoff covers 429 and 500-level responses.
Key features
- 01Typed Go services for Droplets, Kubernetes, volumes and other DigitalOcean resources
- 02Chat completions with streaming, image generation, embeddings and batch inference via DigitalOcean Inference
- 03Helpers for paginating list endpoints by page number or token
- 04Optional automatic retries with exponential backoff for 429 and 500-level responses
Use cases
- Automating DigitalOcean infrastructure provisioning from a Go application or internal tool
- Building Terraform-style or deployment scripts that manage Droplets and Kubernetes clusters
- Calling DigitalOcean-hosted models from Go services using the same client
Quick start
- 1
Install the Go module into your project
go get github.com/digitalocean/godo - 2
Import the package in your Go code
import "github.com/digitalocean/godo" - 3
Create a client with your DigitalOcean API token
Things to know
- The license is listed as NOASSERTION, so check the repository's license terms before use.
- Inference calls need a full-access token or a model access key; limited-scope tokens will get 401 errors.
Topics
FAQ
- What is godo?
- Go client library for the DigitalOcean V2 API, covering infrastructure resources and DigitalOcean Inference model calls. godo is a Go client library for the DigitalOcean V2 API. It wraps the REST endpoints in typed Go services, so developers can create and manage Droplets, Kubernetes clusters, volumes and other resources from Go code instead of hand-written HTTP calls. A client is created with an API token, and each part of the API is exposed as a service on that client.
- Is godo free to use? What license does it have?
- godo is open source under the Other license. Check the license terms before using it in commercial products.
- Is godo still maintained?
- Actively maintained. The last commit to godo was on Nov 6, 2026.
- What can I use godo for?
- Automating DigitalOcean infrastructure provisioning from a Go application or internal tool Building Terraform-style or deployment scripts that manage Droplets and Kubernetes clusters Calling DigitalOcean-hosted models from Go services using the same client
- How do I install godo?
- Install the Go module into your project: go get github.com/digitalocean/godo Import the package in your Go code: import "github.com/digitalocean/godo" Create a client with your DigitalOcean API token
- Where can I get godo?
- The source code and installation instructions are on GitHub: https://github.com/digitalocean/godo
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A desktop tool that automates downloading, starting and managing RWKV large language models, exposing an OpenAI-compatible API.
An unofficial Rust client library for the OpenAI API, also usable with OpenRouter endpoints.
Low-level Python core library that provides the AWS API client foundation under boto3 and the AWS CLI.
A Terraform provider that lets you create and manage Microsoft Azure resources through Azure Resource Manager as code.
Official TypeScript/JavaScript client library for the Cloudflare REST API, generated with Stainless.