Skip to content

Add Vector Databases API spec for public preview#1181

Open
nbhoot157 wants to merge 2 commits into
digitalocean:mainfrom
nbhoot157:add-vector-db-spec
Open

Add Vector Databases API spec for public preview#1181
nbhoot157 wants to merge 2 commits into
digitalocean:mainfrom
nbhoot157:add-vector-db-spec

Conversation

@nbhoot157
Copy link
Copy Markdown

@nbhoot157 nbhoot157 commented May 26, 2026

Summary

Adds the Vector Databases API specification to the public API docs. All endpoints, models, responses, and curl examples follow the same pattern as the existing databases resource.

Endpoints added

GET /v2/vector-databases — List all vector databases
POST /v2/vector-databases — Create a vector database
GET /v2/vector-databases/{id} — Get a vector database
PUT /v2/vector-databases/{id} — Update config
DELETE /v2/vector-databases/{id} — Delete a vector database
POST /v2/vector-databases/{id}/resize — Resize
PUT /v2/vector-databases/{id}/tags — Update tags
GET /v2/vector-databases/{id}/credentials — Get admin credentials
GET /v2/vector-databases/{id}/backups — List backups
POST /v2/vector-databases/{id}/backups/{backup_id}/restore — Restore from backup
GET /v2/vector-databases/{id}/backups/{backup_id}/restore — Get restore status

11 endpoint definitions (vector_databases_*.yml)
6 models (vector_database, config, endpoints, backup, credentials, restore_status)
6 response definitions
11 curl examples
parameters.yml for path params
Wired into DigitalOcean-public.v2.yaml (tag, x-tagGroups, paths)

Validation
make bundle && make lint passes with 0 errors (5 pre-existing warnings, none from vector databases)
Source

Swagger spec: vectordb.swagger.json in Cthulhu (docode/src/do/teams/vector-db/public/)
Related ticket: KBAAS-265
Related godo PR: digitalocean/godo#1015 (merged)

curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $DIGITALOCEAN_TOKEN" \
-d '{"name": "my-vector-db", "region": "nyc3", "size": "medium", "tags": ["production"]}' \
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for now lets have the region be tor1 since thats all thats available rn

@@ -0,0 +1,15 @@
type: object

description: VectorDBEndpoints contains the connection endpoints for a vector database instance.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo

type: string
example: admin-user-abc123
description: >-
Weaviate DB user id from the cluster secret (opaque; matches what was
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lets not use weaviate here in case we add another more general db type in the future

weaviate_version:
type: string
example: '1.24.0'
description: The Weaviate version running on the vector database cluster.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Vector Database version*

type: string
example: my-db-abc123.vectordb.digitalocean.com:443
description: >-
gRPC endpoint (e.g. "my-db-abc123.vectordb.digitalocean.com:443").
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lets have a properly formatted grpc endpoint as an example. this isnt the right structure

vector_dbs:
- id: 9cc10173-e9ea-4176-9dbc-a4cee4c4ff30
name: my-vector-db
region: nyc3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tor1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants