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]#