maestral.core

Dataclasses for our internal and external APIs.

Module Contents

class maestral.core.AccountType[source]

Bases: enum.Enum

Enum of account types

Basic = 'basic'[source]
Pro = 'pro'[source]
Business = 'business'[source]
Other = 'other'[source]
class maestral.core.Team[source]
id: str[source]
name: str[source]
class maestral.core.RootInfo[source]
root_namespace_id: str[source]
home_namespace_id: str[source]
class maestral.core.UserRootInfo[source]

Bases: RootInfo

class maestral.core.TeamRootInfo[source]

Bases: RootInfo

home_path: str[source]
class maestral.core.Account[source]
account_id: str[source]
display_name: str[source]
email: str[source]
email_verified: bool[source]
profile_photo_url: str | None[source]
disabled: bool[source]
class maestral.core.FullAccount[source]

Bases: Account

country: str | None[source]
locale: str[source]
team: Team | None[source]
team_member_id: str | None[source]
account_type: AccountType[source]
root_info: RootInfo[source]
class maestral.core.TeamSpaceUsage[source]
used: int[source]
allocation: int[source]
class maestral.core.SpaceUsage[source]
used: int[source]
allocated: int[source]
team_usage: TeamSpaceUsage | None[source]
class maestral.core.WriteMode[source]

Bases: enum.Enum

Enum of write modes when uploading a file

Add = 'add'[source]
Update = 'update'[source]
Overwrite = 'overwrite'[source]
class maestral.core.SharingInfo[source]
read_only: bool[source]
class maestral.core.Metadata[source]
name: str[source]
path_lower: str[source]
path_display: str[source]
class maestral.core.DeletedMetadata[source]

Bases: Metadata

class maestral.core.FileMetadata[source]

Bases: Metadata

id: str[source]
client_modified: datetime.datetime[source]
server_modified: datetime.datetime[source]
rev: str[source]
size: int[source]
shared: bool[source]
modified_by: str | None[source]
is_downloadable: bool[source]
content_hash: str[source]
class maestral.core.FolderMetadata[source]

Bases: Metadata

id: str[source]
shared: bool[source]
class maestral.core.ListFolderResult[source]
entries: list[Metadata][source]
has_more: bool[source]
cursor: str[source]
class maestral.core.LinkAccessLevel[source]

Bases: enum.Enum

Enum of access levels to shared links

Viewer = 'viewer'[source]
Editor = 'editor'[source]
Other = 'other'[source]
class maestral.core.LinkAudience[source]

Bases: enum.Enum

Enum of shared link audience

Public = 'public'[source]
Team = 'team'[source]
NoOne = 'no_one'[source]
Other = 'other'[source]
class maestral.core.LinkPermissions[source]
can_revoke: bool[source]
allow_download: bool[source]
effective_audience: LinkAudience[source]
require_password: bool | None[source]
class maestral.core.SharedLinkMetadata[source]
url: str[source]
name: str[source]
path_lower: str | None[source]
expires: datetime | None[source]
class maestral.core.ListSharedLinkResult[source]
entries: list[SharedLinkMetadata][source]
has_more: bool[source]
cursor: str[source]
class maestral.core.UpdateCheckResult[source]
update_available: bool[source]
latest_release: str[source]
release_notes: str[source]