Skip to main content

Database Commands

Manage VAMS databases and Amazon S3 bucket configurations. Databases are logical containers for organizing assets.


database list

List all databases in the VAMS system.

vamscli database list [OPTIONS]
OptionTypeRequiredDescription
--show-deletedFlagNoInclude deleted databases
--page-sizeINTEGERNoNumber of items per page
--max-itemsINTEGERNoMaximum total items to fetch (only with --auto-paginate, default: 10000)
--starting-tokenTEXTNoToken for manual pagination
--auto-paginateFlagNoAutomatically fetch all items
--json-outputFlagNoOutput raw JSON response
vamscli database list
vamscli database list --show-deleted
vamscli database list --auto-paginate
vamscli database list --auto-paginate --max-items 5000
vamscli database list --json-output

database get

Get details for a specific database.

vamscli database get [OPTIONS]
OptionTypeRequiredDescription
-d, --database-idTEXTYesDatabase ID to retrieve
--show-deletedFlagNoInclude deleted databases in search
--json-outputFlagNoOutput raw JSON response

Output includes database ID, description, creation date, asset count, default bucket information, metadata restriction status, and file upload extension restrictions.

vamscli database get -d my-database
vamscli database get -d my-database --json-output

database create

Create a new database in VAMS.

vamscli database create [OPTIONS]
OptionTypeRequiredDescription
-d, --database-idTEXTYesDatabase ID to create
--descriptionTEXTConditionalDatabase description (required unless using --json-input)
--default-bucket-idTEXTNoDefault bucket ID (prompts if not provided)
--restrict-metadata-outside-schemasFlagNoRestrict metadata to defined schemas only
--restrict-file-uploads-to-extensionsTEXTNoComma-separated list of allowed file extensions (e.g., .pdf,.docx,.jpg)
--json-inputTEXTNoJSON input file path or JSON string
--json-outputFlagNoOutput raw JSON response

JSON input format

{
"databaseId": "my-database",
"description": "Database description",
"defaultBucketId": "550e8400-e29b-41d4-a716-446655440000",
"restrictMetadataOutsideSchemas": true,
"restrictFileUploadsToExtensions": ".pdf,.docx,.jpg"
}

Examples

vamscli database create -d my-database --description "My Database"
vamscli database create -d my-database --description "My Database" --default-bucket-id "bucket-uuid"
vamscli database create -d my-database --description "My Database" --restrict-metadata-outside-schemas
vamscli database create -d my-database --description "My Database" --restrict-file-uploads-to-extensions ".pdf,.docx,.jpg"
vamscli database create -d my-database --json-input @database-config.json --json-output

database update

Update an existing database in VAMS.

vamscli database update [OPTIONS]
OptionTypeRequiredDescription
-d, --database-idTEXTYesDatabase ID to update
--descriptionTEXTNoNew database description
--default-bucket-idTEXTNoNew default bucket ID
--restrict-metadata-outside-schemasFlagNoEnable metadata restriction
--no-restrict-metadata-outside-schemasFlagNoDisable metadata restriction
--restrict-file-uploads-to-extensionsTEXTNoSet allowed file extensions
--clear-file-extensionsFlagNoClear file extension restrictions
--json-inputTEXTNoJSON input file path or JSON string
--json-outputFlagNoOutput raw JSON response
note

At least one field must be provided for update. The flags --restrict-metadata-outside-schemas and --no-restrict-metadata-outside-schemas are mutually exclusive, as are --restrict-file-uploads-to-extensions and --clear-file-extensions.

vamscli database update -d my-database --description "Updated description"
vamscli database update -d my-database --restrict-metadata-outside-schemas
vamscli database update -d my-database --no-restrict-metadata-outside-schemas
vamscli database update -d my-database --restrict-file-uploads-to-extensions ".pdf,.png"
vamscli database update -d my-database --clear-file-extensions

database delete

Delete a database from VAMS.

vamscli database delete [OPTIONS]
OptionTypeRequiredDescription
-d, --database-idTEXTYesDatabase ID to delete
--confirmFlagYesConfirm database deletion
--json-outputFlagNoOutput raw JSON response
Deletion Prerequisites

The database must not contain any active assets, workflows, or pipelines. Requires explicit --confirm flag and an interactive confirmation prompt.

vamscli database delete -d my-database --confirm

database list-buckets

List available Amazon S3 bucket configurations for use with databases.

vamscli database list-buckets [OPTIONS]
OptionTypeRequiredDescription
--page-sizeINTEGERNoNumber of items per page
--max-itemsINTEGERNoMaximum total items to fetch (only with --auto-paginate)
--starting-tokenTEXTNoToken for manual pagination
--auto-paginateFlagNoAutomatically fetch all items
--json-outputFlagNoOutput raw JSON response

Output includes bucket ID, bucket name, and base assets prefix.

vamscli database list-buckets
vamscli database list-buckets --auto-paginate
vamscli database list-buckets --json-output

Workflow Examples

Database with restrictions

# Create a database with strict metadata schema enforcement
vamscli database create -d schema-enforced-db \
--description "Schema-Enforced Database" \
--default-bucket-id "bucket-uuid" \
--restrict-metadata-outside-schemas

# Create a database that only accepts specific file types
vamscli database create -d documents-db \
--description "Documents Database" \
--default-bucket-id "bucket-uuid" \
--restrict-file-uploads-to-extensions ".pdf,.docx,.xlsx"

Automation with JSON

vamscli database create -d automated-db --json-input @database-config.json --json-output
vamscli database list --json-output > current-databases.json