Commands
Overview¶
Endpoint | Middleware | Title |
---|---|---|
POST /command/volume.Create | public | Create a volume |
POST /command/volume.VerifyIntegrity | public | Verify data integrity |
POST /command/volume.ChangeQuota | public | Change quota |
POST /command/volume.Rename | public | Rename |
POST /command/volume.ChangeDescription | public | Change description |
POST /command/volume.ChangeNotes | public | Change notes |
POST /command/volume.SetTopology | public | Set topology |
POST /command/volume.ChangeZone | public | Change zone |
POST /command/volume.SmartSetId | public | Set SMART ID |
POST /command/volume.SetTechnology | public | Set technology |
POST /command/volume.SetSerialNumber | public | Set serial number |
POST /command/volume.SetManufacturingDate | public | Set manufacturing date |
POST /command/volume.SetWarrantyEndDate | public | Set warranty end date |
POST /command/volume.MountLocal | public | Mount a local volume |
POST /command/volume.MountS3 | public | Mount AWS S3-compliant volume |
POST /command/volume.MountGoogleDrive | public | Mount Google Drive volume |
POST /command/volume.Unmount | public | Unmount |
POST /command/volume.MigrateData | public | Migrate data to another volume |
POST /command/volume.RemoveQueuedReplications | public | Remove queued replications |
POST /command/volume.MarkDataLost | public | Mark all volume data lost |
POST /command/volume.Decommission | public | Decommission the volume |
POST /command/directory.Create | public | + Directory |
POST /command/directory.Rename | public | Rename |
POST /command/directory.ChangeDescription | public | Change description |
POST /command/directory.SetType | public | Set directory type |
POST /command/directory.Move | public | Move |
POST /command/directory.PullTmdbMetadata | public | Metadata: pull from TMDb |
POST /command/directory.ChangeSensitivity | public | Change sensitivity |
POST /command/directory.ChangeReplicationPolicy | public | Change replication policy |
POST /command/directory.Delete | public | Delete |
POST /command/collection.Create | public | + Collection |
POST /command/collection.Move | public | Move |
POST /command/collection.Rate | public | Rate |
POST /command/collection.RefreshMetadataAutomatically | public | Refresh metadata automatically |
POST /command/collection.PullTmdbMetadata | public | Metadata: pull from TMDb |
POST /command/collection.PullIgdbMetadata | public | Metadata: pull from IGDB |
POST /command/collection.TriggerMediaScan | public | Metadata: refresh |
POST /command/collection.ChangeSensitivity | public | Change sensitivity |
POST /command/collection.MoveFilesIntoAnotherCollection | public | Move files to another collection |
POST /command/collection.DeleteFiles | public | Delete files |
POST /command/collection.Rename | public | Rename |
POST /command/collection.Delete | public | Delete |
POST /command/collection.ChangeDescription | public | Change description |
POST /command/collection.Tag | public | Tag |
POST /command/collection.Untag | public | Untag |
POST /command/replicationpolicy.Create | public | Create replication policy |
POST /command/replicationpolicy.Rename | public | Rename |
POST /command/replicationpolicy.ChangeMinZones | public | Change mininum zones |
POST /command/replicationpolicy.ChangeDesiredVolumes | public | Change desired volumes |
POST /command/node.SmartScan | public | SMART scan |
POST /command/node.CheckForUpdates | public | Check for updates |
POST /command/node.ChangeSmartBackend | public | Change SMART backend |
POST /command/node.InstallTlsCert | public | Install TLS cert |
POST /command/kek.GenerateOrImport | public | Generate or import key encryption key |
POST /command/database.ScanAbandoned | public | Scan for abandoned blobs |
POST /command/database.DiscoverReconcilableReplicationPolicies | public | Discover reconcilable replication policies |
POST /command/database.ReconcileReplicationPolicy | public | Replicate to volume |
POST /command/database.Backup | public | Backup database |
POST /command/database.BackupConfigure | public | Configure backup |
POST /command/integrityverificationjob.Resume | public | Resume |
POST /command/integrityverificationjob.Stop | public | Stop |
POST /command/config.SetTheMovieDbApikey | public | Set https://themoviedb.org API key |
POST /command/config.SetIgdbApikey | public | Set https://www.igdb.com API key |
POST /command/config.SetNetworkShareBaseUrl | public | Set network share baseurl |
POST /command/config.SetGrafanaUrl | public | Set Grafana URL |
POST /command/config.SetMediascannerState | public | Set media scanner state |
POST /command/fuse.UnmountAll | public | Unmount all cached mounts |
POST /command/config.SetFuseServerBaseurl | public | Set FUSE server baseurl |
POST /command/subsystem.Start | public | Start |
POST /command/subsystem.Stop | public | Stop |
POST /command/scheduledjob.Start | public | Start manually |
POST /command/scheduledjob.ChangeSchedule | public | Change schedule |
POST /command/scheduledjob.Enable | public | Enable |
POST /command/scheduledjob.Disable | public | Disable |
POST /command/apikey.Create | public | Create API key |
POST /command/apikey.Remove | public | Remove API key |
volume.Create¶
Field | Type | Required | Notes |
---|---|---|---|
Name | text | true | |
Quota | integer | true | 1 GiB = 1024 MiB. 1 TiB = 1048576 MiB |
Don't worry about this - you can change this later. |
volume.VerifyIntegrity¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Start | checkbox | true |
volume.ChangeQuota¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Quota | integer | true | 1 GiB = 1024 MiB. 1 TiB = 1048576 MiB |
volume.Rename¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Name | text | true |
volume.ChangeDescription¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Description | text | false |
volume.ChangeNotes¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Notes | multiline | false |
volume.SetTopology¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Enclosure | text | false | |
Slot | integer | false |
volume.ChangeZone¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Zone | text | true |
volume.SmartSetId¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
SmartId | text | false | Usually path to the Linux disk device |
volume.SetTechnology¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Technology | VolumeTechnology | true | disk-hdd |
volume.SetSerialNumber¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
SerialNumber | text | false |
volume.SetManufacturingDate¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
ManufacturingDate | date | false |
volume.SetWarrantyEndDate¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
WarrantyEndDate | date | false |
volume.MountLocal¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Path | text | true |
volume.MountS3¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Bucket | text | true | |
PathPrefix | text | true | If you don't want prefix, use "/" |
RegionId | text | true | |
AccessKeyId | text | true | |
AccessKeySecret | text | true |
volume.MountGoogleDrive¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
FolderId | text | true | |
ClientId | text | true | |
ClientSecret | text | true | |
AuthCode | text | false | This authorizes Varasto to access your Google Drive files |
volume.Unmount¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true |
volume.MigrateData¶
Field | Type | Required | Notes |
---|---|---|---|
From | integer | true | |
To | custom/integer | true |
volume.RemoveQueuedReplications¶
Field | Type | Required | Notes |
---|---|---|---|
From | integer | true |
volume.MarkDataLost¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
OnlyIfRedundancy | checkbox | true | Failsafe for you to reconsider if it losing last replica would come as a surprise. |
volume.Decommission¶
Field | Type | Required | Notes |
---|---|---|---|
Id | integer | true | |
Reason | text | true |
directory.Create¶
Field | Type | Required | Notes |
---|---|---|---|
Parent | text | true | |
Name | text | true |
directory.Rename¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Name | text | true |
directory.ChangeDescription¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Description | text | false |
directory.SetType¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Type | DirectoryType | true | Available values: generic,movies,series,games,podcasts |
directory.Move¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Directory | text | true |
directory.PullTmdbMetadata¶
Field | Type | Required | Notes |
---|---|---|---|
Directory | text | true | |
ForeignKey | custom/string | true |
directory.ChangeSensitivity¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Sensitivity | integer | true |
directory.ChangeReplicationPolicy¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Policy | custom/string | false |
directory.Delete¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true |
collection.Create¶
Field | Type | Required | Notes |
---|---|---|---|
ParentDir | text | true | |
Name | text | true |
collection.Move¶
Field | Type | Required | Notes |
---|---|---|---|
Collections | StringList | true | |
Directory | text | true |
collection.Rate¶
Field | Type | Required | Notes |
---|---|---|---|
Collection | text | true | |
Rating | integer | true |
collection.RefreshMetadataAutomatically¶
Field | Type | Required | Notes |
---|---|---|---|
Collections | StringList | true |
collection.PullTmdbMetadata¶
Field | Type | Required | Notes |
---|---|---|---|
Collection | text | true | |
ForeignKey | custom/string | true | |
ScrubName | checkbox | true | Renames your collection to the official name - if they're different |
collection.PullIgdbMetadata¶
Field | Type | Required | Notes |
---|---|---|---|
Collection | text | true | |
ForeignKey | custom/string | true | |
ScrubName | checkbox | true | Renames your collection to the official name - if they're different |
collection.TriggerMediaScan¶
Field | Type | Required | Notes |
---|---|---|---|
Collection | text | true | |
AllowDestructive | checkbox | true | If video files have thumbnail with same file base name, move it under metadata as actual thumbnail of that file - even persists across renames. |
collection.ChangeSensitivity¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Sensitivity | integer | true |
collection.MoveFilesIntoAnotherCollection¶
Field | Type | Required | Notes |
---|---|---|---|
Source | text | true | |
Files | StringList | true | |
Destination | text | true | Collection ID |
collection.DeleteFiles¶
Field | Type | Required | Notes |
---|---|---|---|
Source | text | true | |
Files | StringList | true |
collection.Rename¶
Field | Type | Required | Notes |
---|---|---|---|
Collection | text | true | |
Name | text | true |
collection.Delete¶
Field | Type | Required | Notes |
---|---|---|---|
Collection | text | true | |
Name | text | true |
collection.ChangeDescription¶
Field | Type | Required | Notes |
---|---|---|---|
Collection | text | true | |
Description | text | false |
collection.Tag¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Tag | text | true |
collection.Untag¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Tag | text | true |
replicationpolicy.Create¶
Field | Type | Required | Notes |
---|---|---|---|
Name | text | true | |
MinZones | integer | true |
replicationpolicy.Rename¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Name | text | true |
replicationpolicy.ChangeMinZones¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
MinZones | integer | true |
replicationpolicy.ChangeDesiredVolumes¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Volume1 | custom/integer | false | |
Volume2 | custom/integer | false | |
Volume3 | custom/integer | false | |
Volume4 | custom/integer | false |
node.SmartScan¶
Field | Type | Required | Notes |
---|---|---|---|
node.CheckForUpdates¶
Field | Type | Required | Notes |
---|---|---|---|
node.ChangeSmartBackend¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Backend | SmartBackend | true |
node.InstallTlsCert¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
TlsCertificate | multiline | true | |
TlsCertificatePrivateKey | multiline | false |
kek.GenerateOrImport¶
Field | Type | Required | Notes |
---|---|---|---|
Label | text | true | |
Data | multiline | false | If you want to import existing key, paste it here. Otherwise, a key will be generated for you. |
database.ScanAbandoned¶
Field | Type | Required | Notes |
---|---|---|---|
database.DiscoverReconcilableReplicationPolicies¶
Field | Type | Required | Notes |
---|---|---|---|
database.ReconcileReplicationPolicy¶
Field | Type | Required | Notes |
---|---|---|---|
Collections | StringList | true | |
Volume | custom/integer | true |
database.Backup¶
Field | Type | Required | Notes |
---|---|---|---|
database.BackupConfigure¶
Field | Type | Required | Notes |
---|---|---|---|
Bucket | text | true | |
BucketRegion | text | true | |
AccessKeyId | text | true | |
AccessKeySecret | text | true | |
EncryptionPublicKey | multiline | true | |
AlertmanagerBaseUrl | text | false | Only used if you're using lambda-alertmanager |
ConnectivityCheck | checkbox | true | Try to connect to S3 to validate connection details |
integrityverificationjob.Resume¶
Field | Type | Required | Notes |
---|---|---|---|
JobId | text | true |
integrityverificationjob.Stop¶
Field | Type | Required | Notes |
---|---|---|---|
JobId | text | true |
config.SetTheMovieDbApikey¶
Field | Type | Required | Notes |
---|---|---|---|
Apikey | text | false | |
Validation | checkbox | true | Makes a test request against the API to validate the key |
config.SetIgdbApikey¶
Field | Type | Required | Notes |
---|---|---|---|
Apikey | text | false | |
Validation | checkbox | true | Makes a test request against the API to validate the key |
config.SetNetworkShareBaseUrl¶
Field | Type | Required | Notes |
---|---|---|---|
Baseurl | text | false |
config.SetGrafanaUrl¶
Field | Type | Required | Notes |
---|---|---|---|
Url | text | false |
config.SetMediascannerState¶
Field | Type | Required | Notes |
---|---|---|---|
State | text | false |
fuse.UnmountAll¶
Field | Type | Required | Notes |
---|---|---|---|
config.SetFuseServerBaseurl¶
Field | Type | Required | Notes |
---|---|---|---|
Baseurl | text | false |
subsystem.Start¶
Field | Type | Required | Notes |
---|---|---|---|
Id | SubsystemId | true |
subsystem.Stop¶
Field | Type | Required | Notes |
---|---|---|---|
Id | SubsystemId | true |
scheduledjob.Start¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true |
scheduledjob.ChangeSchedule¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true | |
Schedule | text | true | https://godoc.org/github.com/robfig/cron |
scheduledjob.Enable¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true |
scheduledjob.Disable¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true |
apikey.Create¶
Field | Type | Required | Notes |
---|---|---|---|
Name | text | true | Describe where the key will be used. |
apikey.Remove¶
Field | Type | Required | Notes |
---|---|---|---|
Id | text | true |