Skip to main content

Databases API

The Databases API allows you to create, retrieve, update, and delete databases. Databases are the top-level organizational containers in VAMS that hold assets, pipelines, and workflows. Each database has an associated Amazon S3 bucket for asset storage.

Authorization

All endpoints require a valid JWT token in the Authorization header. Database endpoints enforce Casbin authorization using the database object type.


List all databases

Retrieves all databases.

GET /database

Query parameters

ParameterTypeRequiredDefaultDescription
maxItemsnumberNo100Maximum number of items to return
pageSizenumberNo100Number of items per page
startingTokenstringNonullPagination token from previous response
showDeletedstringNofalseInclude soft-deleted databases

Response

{
"message": {
"Items": [
{
"databaseId": "architecture-db",
"databaseName": "Architecture Database",
"description": "3D architectural models and floor plans",
"assetCount": 42,
"dateCreated": "\"March 15 2026 - 10:30:00\"",
"dateUpdated": "\"March 16 2026 - 14:20:00\""
}
],
"NextToken": null
}
}

Error responses

StatusDescription
403Not authorized
500Internal server error

Get a database

Retrieves a single database by its identifier.

GET /database/{databaseId}

Path parameters

ParameterTypeRequiredDescription
databaseIdstringYesDatabase identifier

Response

Returns a single database object in the same format as the items in the list response.

Error responses

StatusDescription
400Invalid databaseId format
403Not authorized
404Database not found
500Internal server error

Create a database

Creates a new database and its associated S3 storage bucket.

POST /database

Request body

FieldTypeRequiredDescription
databaseIdstringYesUnique database identifier (3-63 chars)
databaseNamestringYesHuman-readable database name
descriptionstringNoDescription of the database

Request body example

{
"databaseId": "architecture-db",
"databaseName": "Architecture Database",
"description": "3D architectural models and floor plans"
}

Response

{
"message": "Succeeded"
}

Error responses

StatusDescription
400Validation error or database already exists
403Not authorized
500Internal server error

Update a database

Updates database metadata.

PUT /database/{databaseId}

Path parameters

ParameterTypeRequiredDescription
databaseIdstringYesDatabase identifier

Request body

FieldTypeRequiredDescription
databaseNamestringNoUpdated database name
descriptionstringNoUpdated description

Request body example

{
"databaseName": "Architecture Database (v2)",
"description": "Updated 3D architectural models"
}

Response

{
"message": "Succeeded"
}

Delete a database

Soft-deletes a database.

DELETE /database/{databaseId}

Path parameters

ParameterTypeRequiredDescription
databaseIdstringYesDatabase identifier
Dependency check

A database cannot be deleted if it contains active assets, pipelines, or workflows. Remove all dependent resources before deleting the database.

Response

{
"message": "Database deleted"
}

Error responses

StatusDescription
400Database has active assets, pipelines, or workflows
403Not authorized
404Database not found
500Internal server error