Skip to content

Types

Constants

const value
RootFolderId root
RootPathDotBase64FIXME Lg==
BannerPath .sto/banner.jpg
StoDirMetaName .stodirmeta
MetadataHomepage homepage
MetadataPreviousName previous_name
MetadataImdbId imdb.com:title:id
MetadataOverview overview
MetadataReleaseDate release_date
MetadataTheMovieDbMovieId themoviedb.org:movie:id
MetadataTheMovieDbTvEpisodeId themoviedb.org:tv:episode:id
MetadataTheMovieDbTvId themoviedb.org:tv:id
MetadataSteamAppId steampowered.com:app:id
MetadataYoutubeId youtube.com:video:id
MetadataGogSlug gog.com:slug
MetadataGooglePlayApp play.google.com:app:id
MetadataAppleAppStoreApp apps.apple.com:app:id
MetadataRedditSlug reddit.com:subreddit:slug
MetadataWikipediaSlug en.wikipedia.org:slug
MetadataIgdbGameId igdb.com:game:id
MetadataTitle title
MetadataVideoRevenueDollars video.revenue_dollars
MetadataVideoRuntimeMins video.runtime_mins
CfgTheMovieDbApikey themoviedb_apikey
CfgIgdbApikey igdb_apikey
CfgFuseServerBaseUrl fuseserver_baseurl
CfgNetworkShareBaseUrl networkshare_baseurl
CfgUbackupConfig ubackup_config
CfgUpdateStatusAt update_status_at
CfgNodeTlsCertKey node_tls_cert_key
CfgGrafanaUrl grafana_url
CfgMediascannerState mediascanner_state
HeadRevisionId head

enum HealthStatus

  • pass
  • warn
  • fail

enum DirectoryType

  • generic
  • movies
  • series
  • games
  • podcasts

enum VolumeTechnology

  • disk-hdd
  • disk-ssd
  • cloud

enum VolumeDriverKind

  • local-fs
  • googledrive
  • aws-s3

enum SubsystemId

  • mediascanner
  • fuse-projector

enum ScheduledJobKind

  • smartpoll
  • versionupdatecheck
  • metadatabackup

enum SmartBackend

  • SmartCtl
  • SmartCtlViaDocker

enum HealthKind

  • SoftwareUpdates
  • TlsCertificate
  • Volume
  • Mount
  • Smart
  • VolumeReplication
  • ReplicationPolicies
  • ScheduledJobs
  • Subsystems
  • VolumeIntegrity

enum DocRef

  • docs/index.md
  • docs/content/games/index.md
  • docs/content/generic-files/index.md
  • docs/content/movies/index.md
  • docs/content/tvshows/index.md
  • docs/data-interfaces/client/index.md
  • docs/data-interfaces/network-folders/index.md
  • docs/install/update/index.md
  • docs/security/encryption/index.md
  • docs/storage/googledrive/index.md
  • docs/storage/local-fs/index.md
  • docs/storage/s3/index.md
  • docs/using/background-integrity-verification/index.md
  • docs/using/metadata-backup/index.md
  • docs/using/replication-policies/index.md
  • docs/using/smart-monitoring/index.md
  • docs/using/when-a-disk-fails/index.md

File

export interface File {
    BlobRefs: string[];
    Created: datetimeRFC3339;
    Modified: datetimeRFC3339;
    Path: string;
    Sha256: string;
    Size: number;
}

TmdbSearchResult

export interface TmdbSearchResult {
    Id: string;
    ReleaseYear: number | null;
    Title: string;
}

MetadataIgdbGame

export interface MetadataIgdbGame {
    Id: string;
    ReleaseYear: number | null;
    Title: string;
}

SchedulerJob

export interface SchedulerJob {
    Description: string;
    Enabled: boolean;
    Id: string;
    Kind: ScheduledJobKind;
    LastRun: SchedulerJobLastRun | null;
    NextRun: datetimeRFC3339 | null;
    Running: boolean;
    Schedule: string;
}

SchedulerJobLastRun

export interface SchedulerJobLastRun {
    Error: string | null;
    Finished: datetimeRFC3339;
    Started: datetimeRFC3339;
}

Directory

export interface Directory {
    Created: datetimeRFC3339;
    Id: string;
    MetaCollectionId: string;
    Name: string;
    Parent: string;
    ReplicationPolicy: string | null;
    Sensitivity: number;
    Type: DirectoryType;
}

SubsystemStatus

export interface SubsystemStatus {
    Alive: boolean;
    Description: string;
    Enabled: boolean;
    HttpMount: string;
    Id: SubsystemId;
    Pid: string;
    Started: datetimeRFC3339 | null;
}

ReplicationStatus

export interface ReplicationStatus {
    Progress: number;
    VolumeId: number;
}

DirectoryOutput

export interface DirectoryOutput {
    Collections: CollectionSubsetWithMeta[];
    Directory: DirectoryAndMeta;
    Parents: DirectoryAndMeta[];
    SubDirectories: DirectoryAndMeta[];
}

DirectoryAndMeta

export interface DirectoryAndMeta {
    Directory: Directory;
    MetaCollection: CollectionSubsetWithMeta | null;
}

Changeset

export interface Changeset {
    Created: datetimeRFC3339;
    FilesCreated: File[];
    FilesDeleted: string[];
    FilesUpdated: File[];
    ID: string;
    Parent: string;
}

ChangesetSubset

export interface ChangesetSubset {
    Created: datetimeRFC3339;
    Id: string;
    Parent: string;
}

MetadataKv

export interface MetadataKv {
    Key: string;
    Value: string;
}

CollectionSubsetWithMeta

export interface CollectionSubsetWithMeta {
    Collection: CollectionSubset;
    FilesInMeta: string[];
    FilesInMetaAt: string;
}

CollectionSubset

export interface CollectionSubset {
    Changesets: ChangesetSubset[];
    Created: datetimeRFC3339;
    Description: string;
    Directory: string;
    EncryptionKeyIds: string[];
    Head: string;
    Id: string;
    Metadata: MetadataKv[];
    Name: string;
    Rating: number | null;
    ReplicationPolicy: string;
    Sensitivity: number;
    Tags: string[];
}

CollectionOutput

export interface CollectionOutput {
    ChangesetId: string;
    CollectionWithMeta: CollectionSubsetWithMeta;
    FileCount: number;
    SelectedPathContents: SelectedPathContents;
    TotalSize: number;
}

SelectedPathContents

export interface SelectedPathContents {
    Files: File[];
    ParentDirs: string[];
    Path: string;
    SubDirs: string[];
}

Node

export interface Node {
    Addr: string;
    Id: string;
    Name: string;
    TlsCert: TlsCertDetails;
}

KeyEncryptionKey

export interface KeyEncryptionKey {
    Bits: number;
    Created: datetimeRFC3339;
    Fingerprint: string;
    Id: string;
    Kind: string;
    Label: string;
    PublicKey: string;
}

Volume

export interface Volume {
    BlobCount: number;
    BlobSizeTotal: number;
    Decommissioned: VolumeDecommissioned | null;
    Description: string;
    Id: number;
    Label: string;
    Manufactured: dateRFC3339 | null;
    Notes: string;
    Quota: number;
    SerialNumber: string;
    Smart: VolumeSmartAttrs;
    Technology: VolumeTechnology;
    Topology: VolumeTopology | null;
    Uuid: string;
    WarrantyEnds: dateRFC3339 | null;
    Zone: string;
}

VolumeDecommissioned

export interface VolumeDecommissioned {
    At: datetimeRFC3339;
    Reason: string;
}

VolumeSmartAttrs

export interface VolumeSmartAttrs {
    Id: string;
    LatestReport: SmartReport | null;
}

SmartReport

export interface SmartReport {
    Passed: boolean;
    PowerCycleCount: number | null;
    PowerOnTime: number | null;
    Temperature: number | null;
    Time: datetimeRFC3339;
}

VolumeTopology

export interface VolumeTopology {
    Enclosure: string;
    Slot: number;
}

VolumeMount

export interface VolumeMount {
    Driver: string;
    DriverOpts: string;
    Id: string;
    Node: string;
    Online: boolean;
    Volume: number;
}

ApiKey

export interface ApiKey {
    AuthToken: string;
    Created: datetimeRFC3339;
    Id: string;
    Name: string;
}

ServerInfo

export interface ServerInfo {
    AppVersion: string;
    CpuCount: number;
    DatabaseSize: number;
    GoVersion: string;
    Goroutines: number;
    HeapBytes: number;
    ProcessId: string;
    ServerArch: string;
    ServerOs: string;
    StartedAt: datetimeRFC3339;
}

GeneratedIds

export interface GeneratedIds {
    Changeset: string;
}

IntegrityVerificationJob

export interface IntegrityVerificationJob {
    BytesScanned: number;
    Completed: datetimeRFC3339 | null;
    Created: datetimeRFC3339;
    ErrorsFound: number;
    Id: string;
    LastCompletedBlobRef: string;
    Report: string;
    Running: boolean;
    VolumeId: number;
}

Health

export interface Health {
    Children: Health[];
    Details: string;
    Health: HealthStatus;
    Kind: HealthKind | null;
    Title: string;
}

ConfigValue

export interface ConfigValue {
    Key: string;
    Value: string;
}

BlobMetadata

export interface BlobMetadata {
    Coll: string;
    IsCompressed: boolean;
    Ref: string;
    Referenced: boolean;
    Size: number;
    SizeOnDisk: number;
    Volumes: number[];
    VolumesPendingReplication: number[];
}

UbackupStoredBackup

export interface UbackupStoredBackup {
    Description: string;
    ID: string;
    Size: number;
    Timestamp: datetimeRFC3339;
}

TlsCertDetails

export interface TlsCertDetails {
    Identity: string;
    Issuer: string;
    NotAfter: datetimeRFC3339;
    PublicKeyAlgorithm: string;
}

ReconciliationReport

export interface ReconciliationReport {
    Items: ReconcilableItem[];
    TotalItems: number;
}

ReconcilableItem

export interface ReconcilableItem {
    CollectionId: string;
    Description: string;
    DesiredReplicaCount: number;
    ProblemRedundancy: boolean;
    ProblemZoning: boolean;
    ReplicaStatuses: ReconcilableItemReplicaStatus[];
    TotalBlobs: number;
}

ReconcilableItemReplicaStatus

export interface ReconcilableItemReplicaStatus {
    BlobCount: number;
    Volume: number;
}

UpdatesStatusAt

export interface UpdatesStatusAt {
    At: datetimeRFC3339;
    Status: UpdatesStatus;
}

UpdatesStatus

export interface UpdatesStatus {
    LatestVersion: string;
}

ReplicationPolicyForDirectory

export interface ReplicationPolicyForDirectory {
    Directory: Directory;
    DirectoryParents: Directory[];
}

StringList

export type StringList = string[]

CollectionChangefeedItem

export interface CollectionChangefeedItem {
    CollectionId: string;
    Cursor: string;
}

ReplicationPolicy

export interface ReplicationPolicy {
    DesiredVolumes: number[];
    Id: string;
    MinZones: number;
    Name: string;
}