Skip to content

trimble.fileservice.models package

Submodules

trimble.fileservice.models.base_model module

class trimble.fileservice.models.base_model.BaseModel

Bases: BaseModel

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

to_dict() → Dict[str, object]

Returns a dictionary representation of the model.

to_json()

Returns a JSON representation of the model.

trimble.fileservice.models.capabilities module

class trimble.fileservice.models.capabilities.Capabilities(*, canCreate: bool = False, canRead: bool = False, canDelete: bool = False, canUpdate: bool = False, canManageAccess: bool = False)

Bases: BaseModel

Describes the list of actions that can be performed on the resource by the current user.

can_create : bool

Indicates if the user has the capability to create an upload or create a folder under the resource

can_delete : bool

Indicates if the user has the capability to perform delete operation on the resource

can_manage_access : bool

Indicates if the user has the capability to modify the resource permissions

can_read : bool

Indicates if the user has the capability to read the given resource

can_update : bool

Indicates if the user has the capability to perform mutation operation on the resource

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘can_create’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canCreate’, alias_priority=2), ‘can_delete’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canDelete’, alias_priority=2), ‘can_manage_access’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canManageAccess’, alias_priority=2), ‘can_read’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canRead’, alias_priority=2), ‘can_update’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canUpdate’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

trimble.fileservice.models.export module

class trimble.fileservice.models.export.Export(*, id: str, exportTrn: str | None = None, resourceTrn: str | None = None, resourceId: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, output: Output | None = None, status: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None)

Bases: BaseModel

Represents an Export in File Service

created_at : datetime | None

The date and time when the export was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this export

export_trn : str | None

The TRN (Trimble Resource Name) of the export

id : str

The unique identifier of the export

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘export_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘exportTrn’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘output’: FieldInfo(annotation=Union[Output, NoneType], required=False, default=None), ‘resource_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceId’, alias_priority=2), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘status’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘status’, alias_priority=2), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

output : Output | None

The output of the export

resource_id : str | None

The identifier of the target folder

resource_trn : str | None

The TRN (Trimble Resource Name) of the export

space_id : str | None

The folder identifier of the space

space_trn : str | None

The TRN (Trimble Resource Name) of the space

status : str | None

The status of the export job QUEUED: The job is queued RUNNING: The job is running COMPLETED: The job is completed FAILED: The job failed

updated_at : datetime | None

The date and time when the export was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this export

class trimble.fileservice.models.export.Output(*, url: str)

Bases: BaseModel

Contains the output of an export

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘url’: FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

url : str

The URL to download the exported folder

trimble.fileservice.models.file module

class trimble.fileservice.models.file.Checkout(*, checkedOutByTrn: str | None = None, checkedOutAt: datetime | None = None, reason: str | None = None)

Bases: BaseModel

Represents the checkout details of a file

checked_out_at : datetime | None

The date and time when the file was checked out

checked_out_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that checked out this file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘checked_out_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘checkedOutAt’, alias_priority=2), ‘checked_out_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘checkedOutByTrn’, alias_priority=2), ‘reason’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

reason : str | None

The reason for checking out the file

class trimble.fileservice.models.file.Download(*, url: str | None = None)

Bases: BaseModel

Contains the download URL of a file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘url’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

url : str | None

The download URL of the file

Bases: FileBaseClass

Represents a File in File Service

capabilities : FileCapabilities | None

Describes the list of actions that can be performed on the file by the current user

classmethod check_type(values)

checkout : Checkout | None

The checkout details of the file

download : Download | None

The download URL of the file

expires_at : datetime | None

The time period when the file object gets automatically removed

fileset : bool | None

Whether the object consists of a set of multiple files that should be treated as a single file

last_malware_scan_at : datetime | None

The date and time of the last malware scan for the file

The links of the file

lock : Lock | None

Lock attached to the file.

malware_scan_result : str | None

The result of the malware scan for the file. Only applicable when the MalwareScanStatus is INFECTED or CANNOT_SCAN.

malware_scan_status : MalwareScanStatus | None

The malware scan status of the file

malware_type : str | None

The type of malware detected. Only applicable when the MalwareScanStatus is INFECTED. Format is threat type (virus, adware, spyware, pua etc):threat name. For suspicious files the threat type is ‘unknown’.

md5 : str | None

The MD5 hash of the file

metadata : object | None

Additional information related to the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

multipart : bool

True if the client will split the upload into multiple parts

parent_id : str | None

The parent folder identifier where the file was created

parent_trn : str | None

The TRN (Trimble Resource Name) of the parent folder

parent_type : str | None

The type of the parent

path : str | None

The path of the file

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

The evaluated permissions of the file. It shows the most permissible role applicable for the actor, considering both the direct permissions on the resource, and inherited permissions.

permissions_inherited : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Lists the permissions inherited from the entire parent hierarchy applicable for the actor.

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are directly set on the file

response_headers : Dict | None

The response headers of the file

restricted_access : bool | None

True if the download url of the file should expire according to the url duration query parameter

size : int | None

The size of the file in bytes

statistics : FileStatistics | None

The statistics of the file

class trimble.fileservice.models.file.FileBaseClass(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, version: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: str | None = None, updatedAt: str | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Base class for files and support files

created_at : str | None

The date and time when the file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this file

deleted : bool

True if the file has been deleted

deleted_at : datetime | None

The date and time when the file was deleted

id : str

The unique identifier of the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the file

resource_trn : str | None

The TRN (Trimble Resource Name) of the file

space_id : str | None

The unique identifier for the space where the file is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space where the file is stored

type : str | None

The type of the resource

updated_at : str | None

The date and time when the file was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this file

version : str | None

The version of the file, represented in a ‘major.minor’ format

class trimble.fileservice.models.file.FileCapabilities(*, canCreate: bool = False, canRead: bool = False, canDelete: bool = False, canUpdate: bool = False, canManageAccess: bool = False, canLock: bool = False, canUnlock: bool = False, canCheckin: bool | None = None, canCheckout: bool | None = None)

Bases: Capabilities

Describes the list of actions that can be performed on a file by the current user. Extends the base Capabilities with file-specific capabilities.

can_checkin : bool | None

Indicates if the user has the capability to checkin the file

can_checkout : bool | None

Indicates if the user has the capability to checkout the file

can_lock : bool

Indicates if the user has the capability to lock the file

can_unlock : bool

Indicates if the user has the capability to unlock the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘can_checkin’: FieldInfo(annotation=Union[bool, NoneType], required=False, default=None, alias=‘canCheckin’, alias_priority=2), ‘can_checkout’: FieldInfo(annotation=Union[bool, NoneType], required=False, default=None, alias=‘canCheckout’, alias_priority=2), ‘can_create’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canCreate’, alias_priority=2), ‘can_delete’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canDelete’, alias_priority=2), ‘can_lock’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canLock’, alias_priority=2), ‘can_manage_access’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canManageAccess’, alias_priority=2), ‘can_read’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canRead’, alias_priority=2), ‘can_unlock’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canUnlock’, alias_priority=2), ‘can_update’: FieldInfo(annotation=bool, required=False, default=False, alias=‘canUpdate’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.file.FileStatistics(*, supportFilesSize: int | None = None, supportFilesCount: int | None = None, decompressedSize: int | None = None, supportFilesUpdatedAt: datetime | None = None)

Bases: BaseModel

Represents the statistics of a file

decompressed_size : int | None

The size of decompressed file in bytes. This field is only applicable for fileset.

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘decompressed_size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘decompressedSize’, alias_priority=2), ‘support_files_count’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘supportFilesCount’, alias_priority=2), ‘support_files_size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘supportFilesSize’, alias_priority=2), ‘support_files_updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘supportFilesUpdatedAt’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

support_files_count : int | None

The count of support files under the main file

support_files_size : int | None

The sum of sizes of all the latest versions of the support files in the file in bytes

support_files_updated_at : datetime | None

The date and time when the support files were last updated

class trimble.fileservice.models.file.Lock(*, lockedBy: str | None = None, lockedAt: datetime | None = None, reason: str | None = None)

Bases: BaseModel

Contains the lock details of a file

locked_at : datetime | None

The date and time when the file was locked

locked_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that locked this file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘locked_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘lockedAt’, alias_priority=2), ‘locked_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘lockedBy’, alias_priority=2), ‘reason’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

reason : str | None

The reason for locking the file

class trimble.fileservice.models.file.MalwareScanStatus(value)

Bases: str, Enum

Represents the status of a malware scan

CANNOT_SCAN = ‘CANNOT_SCAN’

CLEAN = ‘CLEAN’

FAILED = ‘FAILED’

INFECTED = ‘INFECTED’

QUEUED_FOR_SCAN = ‘QUEUED_FOR_SCAN’

SCANNING = ‘SCANNING’

UNKNOWN = ‘UNKNOWN’

UNSCANNED = ‘UNSCANNED’

class trimble.fileservice.models.file.MinimalFile(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, version: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: str | None = None, updatedAt: str | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: FileBaseClass

Represents a minimal representation of a File in File Service

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.file.Response(*, brief: bool = False)

Bases: BaseModel

Response model

brief : bool

Whether the response should be full or brief. A brief response will only return upload URL. This is provided to support devices that may have a limited amount of memory.

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘brief’: FieldInfo(annotation=bool, required=False, default=False)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.file.SupportFile(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, version: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: str | None = None, updatedAt: str | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None, parentId: str, parentTrn: str | None = None, parentType: str | None = None, path: str | None = None, permissionsLocal: Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None = None, permissionsEvaluated: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, permissionsInherited: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, restrictedAccess: bool | None = True, fileset: bool | None = False, size: int | None = None, md5: str | None = None, expiresAt: datetime | None = None, multipart: bool = False, responseHeaders: Dict | None = None, metadata: object | None = None, download: Download | None = None, malwareScanStatus: MalwareScanStatus | None = None, lastMalwareScanDate: datetime | None = None, malwareScanResult: str | None = None, malwareType: str | None = None, capabilities: FileCapabilities | None = None)

Bases: FileBaseClass

Represents a Support File in File Service

capabilities : FileCapabilities | None

Describes the list of actions that can be performed on the file by the current user

download : Download | None

The download URL of the file

expires_at : datetime | None

The time period when the file object gets automatically removed

fileset : bool | None

Whether the object consists of a set of multiple files that should be treated as a single file

last_malware_scan_at : datetime | None

The date and time of the last malware scan for the file

malware_scan_result : str | None

The result of the malware scan for the file. Only applicable when the MalwareScanStatus is INFECTED or CANNOT_SCAN.

malware_scan_status : MalwareScanStatus | None

The malware scan status of the file

malware_type : str | None

The type of malware detected. Only applicable when the MalwareScanStatus is INFECTED. Format is threat type (virus, adware, spyware, pua etc):threat name. For suspicious files the threat type is ‘unknown’.

md5 : str | None

The MD5 hash of the file

metadata : object | None

Additional information related to the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘capabilities’: FieldInfo(annotation=Union[FileCapabilities, NoneType], required=False, default=None, alias=‘capabilities’, alias_priority=2), ‘created_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘download’: FieldInfo(annotation=Union[Download, NoneType], required=False, default=None), ‘expires_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘expiresAt’, alias_priority=2), ‘fileset’: FieldInfo(annotation=Union[bool, NoneType], required=False, default=False), ‘id’: FieldInfo(annotation=str, required=True), ‘last_malware_scan_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘lastMalwareScanDate’, alias_priority=2), ‘malware_scan_result’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘malwareScanResult’, alias_priority=2), ‘malware_scan_status’: FieldInfo(annotation=Union[MalwareScanStatus, NoneType], required=False, default=None, alias=‘malwareScanStatus’, alias_priority=2), ‘malware_type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘malwareType’, alias_priority=2), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘multipart’: FieldInfo(annotation=bool, required=False, default=False), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘parent_id’: FieldInfo(annotation=str, required=True, alias=‘parentId’, alias_priority=2), ‘parent_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentTrn’, alias_priority=2), ‘parent_type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentType’, alias_priority=2), ‘path’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘permissions_evaluated’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsEvaluated’, alias_priority=2), ‘permissions_inherited’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsInherited’, alias_priority=2), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Union[Literal[‘acl’], Literal[‘inherits’]], Union[List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]], bool]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘response_headers’: FieldInfo(annotation=Union[Dict, NoneType], required=False, default=None, alias=‘responseHeaders’, alias_priority=2), ‘restricted_access’: FieldInfo(annotation=Union[bool, NoneType], required=False, default=True, alias=‘restrictedAccess’, alias_priority=2), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

multipart : bool

True if the client will split the upload into multiple parts

parent_id : str

The parent folder identifier where the file was created

parent_trn : str | None

The TRN (Trimble Resource Name) of the parent folder

parent_type : str | None

The type of the parent

path : str | None

The path of the file

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

The evaluated permissions of the file. It shows the most permissible role applicable for the actor, considering both the direct permissions on the resource, and inherited permissions.

permissions_inherited : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Lists the permissions inherited from the entire parent hierarchy applicable for the actor.

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are directly set on the file

response_headers : Dict | None

The response headers of the file

restricted_access : bool | None

True if the download url of the file should expire according to the url duration query parameter

size : int | None

The size of the file in bytes

class trimble.fileservice.models.file.SupportFileDetails(*, id: str, version: str | None = None, downloadUrl: str | None = None)

Bases: BaseModel

Represents a Support File Details object

download_url : str | None

The download URL of the Support File

id : str

The unique identifier of the Support File

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘download_url’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘downloadUrl’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

version : str | None

The version of the Support File

class trimble.fileservice.models.file.SupportFileResourceParams

Bases: TypedDict

Represents a Support File Resource in File Service

metadata : object | None = None

Additional information related to the support file

name : str

The name of the support file

response_headers : Dict | None = FieldInfo(annotation=NoneType, required=False, default=None, alias=‘responseHeaders’, alias_priority=2)

The response headers of the support file

restricted_access : bool | None = FieldInfo(annotation=NoneType, required=False, default=True, alias=‘restrictedAccess’, alias_priority=2)

True if the download url of the file should expire according to the url duration query parameter

support_file_key : str | None = FieldInfo(annotation=NoneType, required=True, alias=‘supportFileKey’, alias_priority=2)

The key of the support file

class trimble.fileservice.models.file.SupportFileResourceUpload

Bases: TypedDict

Represents a Support File Resource to be uploaded via Package Upload

file_object : IO[bytes]

The file object to be uploaded

key : str

The key of the support file. This key should match the key provided when creating the package upload

trimble.fileservice.models.file_async_response module

class trimble.fileservice.models.file_async_response.FileAsyncBaseResponse(*, file: MinimalFile | File, job_id: str | None = None)

Bases: BaseModel

Represents the base response of a file async operation

file : MinimalFile | File

The immediate file resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘file’: FieldInfo(annotation=Union[MinimalFile, File], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.file_async_response.FileCopyResponse(*, file: MinimalFile | File, job_id: str | None = None)

Bases: FileAsyncBaseResponse

Represents the response of a file copy operation

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘file’: FieldInfo(annotation=Union[MinimalFile, File], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.file_async_response.FileRestoreResponse(*, file: MinimalFile | File, job_id: str | None = None)

Bases: FileAsyncBaseResponse

Represents the response of a file restore operation

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘file’: FieldInfo(annotation=Union[MinimalFile, File], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

trimble.fileservice.models.file_or_folder_response module

class trimble.fileservice.models.file_or_folder_response.FileOrFolder(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, path: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, version: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a file or folder response in File Service

created_at : datetime | None

The date and time when the folder/file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder/file

deleted : bool

True if the folder/file has been deleted

deleted_at : datetime | None

The date and time when the folder/file was deleted

id : str

The unique identifier of the file/folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘path’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘version’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the file/folder

path : str | None

The path of the folder

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource

space_id : str | None

The unique identifier of the space where the file or folder is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder/ile was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder/file

version : str | None

The version of the file or folder

trimble.fileservice.models.folder module

class trimble.fileservice.models.folder.Folder(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, path: str | None = None, parentId: str | None = None, parentTrn: str | None = None, version: str | None = None, permissionsLocal: Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None = None, permissionsEvaluated: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, permissionsInherited: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, size: int | None = None, metadata: object | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None, stats: FolderStatistics | None = None, capabilities: Capabilities | None = None)

Bases: BaseModel

Represents a Folder in File Service

capabilities : Capabilities | None

Describes the list of actions that can be performed on the file by the current user

created_at : datetime | None

The date and time when the folder was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder

deleted : bool

True if the folder has been deleted

deleted_at : datetime | None

The date and time when the folder was deleted

id : str

The unique identifier of the folder

metadata : object | None

Additional information related to the folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘capabilities’: FieldInfo(annotation=Union[Capabilities, NoneType], required=False, default=None), ‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘parent_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentId’, alias_priority=2), ‘parent_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentTrn’, alias_priority=2), ‘path’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘permissions_evaluated’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsEvaluated’, alias_priority=2), ‘permissions_inherited’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsInherited’, alias_priority=2), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Union[Literal[‘acl’], Literal[‘inherits’]], Union[List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]], bool]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘statistics’: FieldInfo(annotation=Union[FolderStatistics, NoneType], required=False, default=None, alias=‘stats’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the folder

parent_id : str | None

The folder identifier of the parent folder

parent_trn : str | None

The Trimble Resource Name (TRN) of the parent folder

path : str | None

The path of the folder

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

The evaluated permissions of the file. It shows the most permissible role applicable for the actor, considering both the direct permissions on the resource, and inherited permissions.

permissions_inherited : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Lists the permissions inherited from the entire parent hierarchy applicable for the actor.

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are directly set on the file

resource_trn : str | None

The Trimble Resource Name (TRN) of the folder

size : int | None

The size of the folder in bytes

space_id : str | None

The unique identifier of the space where the folder is stored

space_trn : str | None

The Trimble Resource Name (TRN) of the space where the folder is stored

statistics : FolderStatistics | None

The statistics of the folder

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder

version : str | None

The folder version

class trimble.fileservice.models.folder.FolderStatistics(*, supportFilesSize: int | None = None, immediateFilesCount: int | None = None, immediateFoldersCount: int | None = None, contentsUpdatedAt: datetime | None = None)

Bases: BaseModel

Represents the statistics of a folder

contents_updated_at : datetime | None

The date and time when the contents of the folder were last updated

immediate_files_count : int | None

The count of files directly under the folder

immediate_folders_count : int | None

The count of folders directly under the folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘contents_updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘contentsUpdatedAt’, alias_priority=2), ‘immediate_files_count’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘immediateFilesCount’, alias_priority=2), ‘immediate_folders_count’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘immediateFoldersCount’, alias_priority=2), ‘support_files_size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘supportFilesSize’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

support_files_size : int | None

The sum of sizes of all the latest versions of the support files in the folder in bytes

class trimble.fileservice.models.folder.MinimalFolder(*, id: str, resourceTrn: str = None, name: str | None = None, type: str | None = None, version: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a minimal representation of a Folder in File Service

created_at : datetime | None

The date and time when the folder was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder

deleted : bool

True if the folder has been deleted

deleted_at : datetime | None

The date and time when the folder was deleted

id : str

The unique identifier of the folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=str, required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the folder

resource_trn : str

The Trimble Resource Name (TRN) of the folder

space_id : str | None

The unique identifier of the space where the folder is stored

space_trn : str | None

The Trimble Resource Name (TRN) of the space where the folder is stored

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder

version : str | None

The folder version

trimble.fileservice.models.folder_async_response module

class trimble.fileservice.models.folder_async_response.FolderAsyncBaseResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: BaseModel

Represents the base response of a folder async operation

folder : MinimalFolder | Folder

The immediate folder resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.folder_async_response.FolderCopyResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder copy operation

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.folder_async_response.FolderMoveResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder move operation

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.folder_async_response.FolderRenameResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder rename operation

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.folder_async_response.FolderRestoreResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder restore operation

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

trimble.fileservice.models.folder_version_list_params module

class trimble.fileservice.models.folder_version_list_params.FolderVersionListParams

Bases: TypedDict

TypedDict for folder query params

max_items : int = 100

The maximum number of items to return

next_page_token : str | None = None

The pagination token that can be used as input from a previous request

status : Literal[‘active’, ‘deleted’, ‘active,deleted’] = ‘active’

The status query parameter is used to filter the folders based on their status

trimble.fileservice.models.folder_version_list_response module

class trimble.fileservice.models.folder_version_list_response.FolderVersionList(*, items: List[Folder], next_page_token: str | None = None)

Bases: BaseModel

Folder list model

items : List[Folder]

The list of folders

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘items’: FieldInfo(annotation=List[trimble.fileservice.models.folder.Folder], required=True), ‘next_page_token’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

next_page_token : str | None

The pagination token for next page

trimble.fileservice.models.job module

class trimble.fileservice.models.job.Job(*, id: str, resourceTrn: str | None = None, type: str | None = None, status: str | None = None, message: str | None = None, createdAt: str | None = None, createdByTrn: str | None = None)

Bases: BaseModel

Represents a Job in File Service

created_at : str | None

The created timestamp of the job

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this job

id : str

The unique identifier of the job

message : str | None

The message of the job

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘message’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘status’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

resource_trn : str | None

The Trimble Resource Name (TRN) of the job

status : str | None

The status of the job QUEUED: The job is queued RUNNING: The job is running COMPLETED: The job is completed FAILED: The job failed

type : str | None

The type of job COPY: Copy a file or folder DELETE: Delete a file or folder MOVE: Move a file or folder RENAME: Rename a file or folder UPLOAD: Upload a file RESTORE: Restore a file or folder FOLDER_DELETION: Delete a folder

trimble.fileservice.models.resource module

class trimble.fileservice.models.resource.BatchGetResourceResponse(*, items: List[FileOrFolder] | None = None, invalidItems: List[InvalidItem] | None = None)

Bases: BaseModel

Represents the response for a batch get resources operation

invalid_items : List[InvalidItem] | None

List of invalid items that could not be retrieved

items : List[FileOrFolder] | None

List of resources retrieved

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘invalid_items’: FieldInfo(annotation=Union[List[trimble.fileservice.models.resource.InvalidItem], NoneType], required=False, default_factory=list, alias=‘invalidItems’, alias_priority=2), ‘items’: FieldInfo(annotation=Union[List[trimble.fileservice.models.file_or_folder_response.FileOrFolder], NoneType], required=False, default_factory=list)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.resource.InvalidItem(*, id: str | None, status: int | None, type: str | None, title: str | None, detail: str | None, code: str | None)

Bases: BaseModel

Represents an invalid item in a batch get resources operation

code : str | None

The code of the invalid resource

detail : str | None

The detail of the invalid resource

id : str | None

The ID of the resource that was invalid

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘code’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘detail’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘id’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘status’: FieldInfo(annotation=Union[int, NoneType], required=True), ‘title’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

status : int | None

The status code of the invalid resource

title : str | None

The title of the invalid resource

type : str | None

The type of the invalid resource

trimble.fileservice.models.space module

class trimble.fileservice.models.space.MinimalSpace(*, id: str, name: str, type: str | None = None, rootId: str, resourceTrn: str | None = None, rootTrn: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a minimal representation of a Space in File Service

created_at : datetime | None

The date and time when the filespace was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this space

deleted : bool

True if the space has been deleted

deleted_at : datetime | None

The date and time when the space was deleted

id : str

The unique identifier of the filespace

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=str, required=True), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘root_id’: FieldInfo(annotation=str, required=True, alias=‘rootId’, alias_priority=2), ‘root_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str

The name of the filespace

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource. The service governs this property and it’s not configurable by the client.

root_id : str

The unique identifier of the root folder

root_trn : str | None

The TRN (Trimble Resource Name) of the root folder. The service governs this property and it’s not configurable by the client.

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the filespace was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that updated this space

class trimble.fileservice.models.space.Space(*, id: str, name: str, type: str | None = None, rootId: str, resourceTrn: str | None = None, rootTrn: str | None = None, accountId: str | None = None, permissionsLocal: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, permissionsEvaluated: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, capabilities: Capabilities | None = None, provider: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None, deleted: bool = False, deletedAt: datetime | None = None, softDeleteRetention: str | None = None, stats: SpaceStatistics | None = None)

Bases: BaseModel

Represents a Space in File Service

account_id : str | None

The unique identifier of the CDH account

capabilities : Capabilities | None

The capabilities that the current user has for this space

created_at : datetime | None

The date and time when the filespace was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this space

deleted : bool

True if the space has been deleted

deleted_at : datetime | None

The date and time when the folder was deleted

id : str

The unique identifier of the filespace

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘account_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘accountId’, alias_priority=2), ‘capabilities’: FieldInfo(annotation=Union[Capabilities, NoneType], required=False, default=None), ‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=str, required=True), ‘permissions_evaluated’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsEvaluated’, alias_priority=2), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘provider’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘root_id’: FieldInfo(annotation=str, required=True, alias=‘rootId’, alias_priority=2), ‘root_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootTrn’, alias_priority=2), ‘soft_delete_retention’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘softDeleteRetention’, alias_priority=2), ‘statistics’: FieldInfo(annotation=Union[SpaceStatistics, NoneType], required=False, default=None, alias=‘stats’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2, validate_default=False), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str

The name of the filespace

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Shows the permissions that are evaluated for the user. Represents the final permissions that apply to the user, considering both the direct permissions on the resource and any inherited permissions.

permissions_local : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Describes the permissions that are set directly on the resource itself.

provider : str | None

The cloud provider of the space aws: Amazon Web Services azure: Microsoft Azure

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource.

root_id : str

The unique identifier of the root folder

root_trn : str | None

The TRN (Trimble Resource Name) of the root folder.

soft_delete_retention : str | None

Duration of soft deleted resources being retained before being permanently removed

statistics : SpaceStatistics | None

The statistics of the space

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the filespace was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that updated this space

class trimble.fileservice.models.space.SpaceStatistics(*, size: int | None = None, supportFilesSize: int | None = None, deletedSize: int | None = None, deletedSupportFilesSize: int | None = None, filesCount: int | None = None, foldersCount: int | None = None, deletedFilesCount: int | None = None, deletedFoldersCount: int | None = None, totalStorageUsed: int | None = None, contentsUpdatedAt: datetime | None = None)

Bases: BaseModel

Represents the statistics of a space

contents_updated_at : datetime | None

The date and time when the contents of the space were last updated

deleted_files_count : int | None

The count of all soft deleted files in the space

deleted_folders_count : int | None

The count of all soft deleted folders in the space

deleted_size : int | None

The sum of sizes of all the soft deleted resources in the space in bytes

deleted_support_files_size : int | None

The sum of sizes of all the soft deleted support files in the space in bytes

files_count : int | None

The count of all active files in the space

folders_count : int | None

The count of all active folders in the space

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘contents_updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘contentsUpdatedAt’, alias_priority=2), ‘deleted_files_count’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘deletedFilesCount’, alias_priority=2), ‘deleted_folders_count’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘deletedFoldersCount’, alias_priority=2), ‘deleted_size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘deletedSize’, alias_priority=2), ‘deleted_support_files_size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘deletedSupportFilesSize’, alias_priority=2), ‘files_count’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘filesCount’, alias_priority=2), ‘folders_count’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘foldersCount’, alias_priority=2), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘support_files_size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘supportFilesSize’, alias_priority=2), ‘total_storage_used’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None, alias=‘totalStorageUsed’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

size : int | None

The sum of sizes of all the active resources in the space in bytes

support_files_size : int | None

The sum of size of all the active support files in the space in bytes

total_storage_used : int | None

The total storage used by the space and its contents, including versions, in bytes

trimble.fileservice.models.space_children_response module

class trimble.fileservice.models.space_children_response.SpaceChildrenResponse(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, rootId: str | None = None, rootTrn: str | None = None, version: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a space children response in File Service

created_at : datetime | None

The date and time when the folder/file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder/file

deleted : bool

True if the folder/file has been deleted

deleted_at : datetime | None

The date and time when the folder/file was deleted

id : str

The unique identifier of the file/folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘root_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootId’, alias_priority=2), ‘root_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘version’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the file/folder

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource

root_id : str | None

The unique identifier of the root folder

root_trn : str | None

The TRN (Trimble Resource Name) of the root folder

space_id : str | None

The unique identifier of the space where the file or folder is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder/ile was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder/file

version : str | None

The version of the file or folder

trimble.fileservice.models.space_restore_response module

class trimble.fileservice.models.space_restore_response.SpaceRestoreResponse(*, space: MinimalSpace | Space, job_id: str | None = None)

Bases: BaseModel

Represents the response of a space restore operation

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘space’: FieldInfo(annotation=Union[MinimalSpace, Space], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

space : MinimalSpace | Space

The restored space

Bases: TypedDict

Represents the parameters for linking a Support File

id : str

The id of the Support File

version : str | None

The version of the Support File

trimble.fileservice.models.upload_response module

class trimble.fileservice.models.upload_response.FileInputUploadDetails(*, fileId: str, fileTrn: str | None = None, spaceId: str, spaceTrn: str | None = None, name: str, parentId: str, parentTrn: str | None = None, parentType: str | Literal[‘FOLDER’, ‘FILE’], path: str, restrictedAccess: bool, fileset: bool, multipart: bool = False, responseHeaders: object | None = None, metadata: object | None = None, response: object | None = None, expiresAt: datetime | None = None, permissionsLocal: Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None = None, upload: Upload | None = None, status: str | None = None)

Bases: BaseModel

The input file information

expires_at : datetime | None

The expiration timestamp of the file.

file_id : str

The unique identifier of the file

file_trn : str | None

The TRN (Trimble Resource Name) of the file

fileset : bool

Whether the object consists of a set of multiple files that should be treated as a single file

metadata : object | None

Additional information related to the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘expires_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘expiresAt’, alias_priority=2), ‘file_id’: FieldInfo(annotation=str, required=True, alias=‘fileId’, alias_priority=2), ‘file_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘fileTrn’, alias_priority=2), ‘fileset’: FieldInfo(annotation=bool, required=True), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘multipart’: FieldInfo(annotation=bool, required=False, default=False), ‘name’: FieldInfo(annotation=str, required=True), ‘parent_id’: FieldInfo(annotation=str, required=True, alias=‘parentId’, alias_priority=2), ‘parent_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentTrn’, alias_priority=2), ‘parent_type’: FieldInfo(annotation=Union[str, Literal[‘FOLDER’, ‘FILE’]], required=True, alias=‘parentType’, alias_priority=2), ‘path’: FieldInfo(annotation=str, required=True), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Union[Literal[‘acl’], Literal[‘inherits’]], Union[List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]], bool]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘response’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘response_headers’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None, alias=‘responseHeaders’, alias_priority=2), ‘restricted_access’: FieldInfo(annotation=bool, required=True, alias=‘restrictedAccess’, alias_priority=2), ‘space_id’: FieldInfo(annotation=str, required=True, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘status’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘upload’: FieldInfo(annotation=Union[Upload, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

multipart : bool

True if the client will split the upload into multiple parts

name : str

The name of the file

parent_id : str

The parent folder identifier where the file was created

parent_trn : str | None

The TRN (Trimble Resource Name) of the parent folder

parent_type : str | Literal[‘FOLDER’, ‘FILE’]

The type of the parent

path : str

The path where file is created

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are set directly for actors on the resource itself. Contains ‘inherits’ boolean flag (default: true) that determines whether the permissions need to be inherited from the parent resource or not, and ‘acl’ list of actor-role mappings.

response : object | None

The optional response attributes to use during creation.

response_headers : object | None

The response headers of the file

restricted_access : bool

True if the download url of the file should expire according to the url duration query parameter

space_id : str

The unique identifier for the space where the file is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space

status : str | None

The status of the upload operation. If the upload is not yet completed, the status will be ‘UPLOADABLE’. If the upload is completed, the status will be ‘UPLOADED’. If the upload is failed, the status will be ‘FAILED’.

upload : Upload | None

The upload URL and type of upload for the file

class trimble.fileservice.models.upload_response.Result(*, message: str, status: str)

Bases: BaseModel

The result of the upload operation

message : str

The additional information about the upload job. If the upload failed for any reason, the message will contain the error message.

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘message’: FieldInfo(annotation=str, required=True), ‘status’: FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

status : str

The status of the upload operation

Bases: FileInputUploadDetails

The input support file information

Whether the support file should be linked to the parent file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

parent_major_version : int | None

The major version of the file

support_file_key : str | None

The key of the support file

class trimble.fileservice.models.upload_response.SupportFileResourceDetails(*, fileId: str, name: str, supportFileKey: str, upload: Upload, restrictedAccess: bool, responseHeaders: object | None = None, metadata: object | None = None)

Bases: BaseModel

Represents the details of support file

file_id : str

The unique identifier of the file

metadata : object | None

Additional information related to the support file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘file_id’: FieldInfo(annotation=str, required=True, alias=‘fileId’, alias_priority=2), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘name’: FieldInfo(annotation=str, required=True), ‘response_headers’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None, alias=‘responseHeaders’, alias_priority=2), ‘restricted_access’: FieldInfo(annotation=bool, required=True, alias=‘restrictedAccess’, alias_priority=2), ‘support_file_key’: FieldInfo(annotation=str, required=True, alias=‘supportFileKey’, alias_priority=2), ‘upload’: FieldInfo(annotation=Upload, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str

The name of the file

response_headers : object | None

The response headers of the support file

restricted_access : bool

True if the download url of the file should expire according to the url duration query parameter

support_file_key : str

The key of the support file

upload : Upload

The upload URL and type of upload for the file

class trimble.fileservice.models.upload_response.Upload(*, url: str | None = None, type: str | Literal[‘SINGLEPART’, ‘MULTIPART’])

Bases: BaseModel

Contains the upload URL and upload type of a file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘type’: FieldInfo(annotation=Union[str, Literal[‘SINGLEPART’, ‘MULTIPART’]], required=True), ‘url’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

type : str | Literal[‘SINGLEPART’, ‘MULTIPART’]

The type of the file upload URL

url : str | None

The URL to upload the file to

class trimble.fileservice.models.upload_response.UploadFileResponse(*, id: str, resourceTrn: str | None = None, result: Result | None = None, size: int | None = None, version: str | None = None, md5: str | None = None, fileInputUploadDetails: FileInputUploadDetails | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None)

Bases: BaseModel

Represents a File Upload in File Service

created_at : datetime | None

The date and time when the upload was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this upload

file : FileInputUploadDetails | None

The input file information

id : str

The unique identifier of the upload

md5 : str | None

The MD5 hash of the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘file’: FieldInfo(annotation=Union[FileInputUploadDetails, NoneType], required=False, default=None, alias=‘fileInputUploadDetails’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘result’: FieldInfo(annotation=Union[Result, NoneType], required=False, default=None), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

resource_trn : str | None

The TRN (Trimble Resource Name) of the upload resource

result : Result | None

The result of the upload operation

size : int | None

The size of the file in bytes

updated_at : datetime | None

The date and time when the upload was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that last updated this upload

version : str | None

The version of the file, represented in a ‘major.minor’ format

class trimble.fileservice.models.upload_response.UploadPackageResponse(*, id: str, resourceTrn: str | None = None, result: Result | None = None, size: int | None = None, version: str | None = None, md5: str | None = None, fileInputUploadDetails: FileInputUploadDetails | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None, resources: list[SupportFileResourceDetails])

Bases: UploadFileResponse

Represents a Package Upload in File Service

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘file’: FieldInfo(annotation=Union[FileInputUploadDetails, NoneType], required=False, default=None, alias=‘fileInputUploadDetails’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘result’: FieldInfo(annotation=Union[Result, NoneType], required=False, default=None), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘support_file_resources’: FieldInfo(annotation=list[SupportFileResourceDetails], required=True, alias=‘resources’, alias_priority=2), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

support_file_resources : list[SupportFileResourceDetails]

The resources associated with the upload

class trimble.fileservice.models.upload_response.UploadSupportFileResponse(*, id: str, resourceTrn: str | None = None, result: Result | None = None, size: int | None = None, version: str | None = None, md5: str | None = None, fileInputUploadDetails: SupportFileInputUploadDetails, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None)

Bases: UploadFileResponse

Represents a Support File Upload in File Service

file : SupportFileInputUploadDetails

The input support file information

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘file’: FieldInfo(annotation=SupportFileInputUploadDetails, required=True, alias=‘fileInputUploadDetails’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘result’: FieldInfo(annotation=Union[Result, NoneType], required=False, default=None), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

Module contents

class trimble.fileservice.models.BatchGetResourceResponse(*, items: List[FileOrFolder] | None = None, invalidItems: List[InvalidItem] | None = None)

Bases: BaseModel

Represents the response for a batch get resources operation

invalid_items : List[InvalidItem] | None

List of invalid items that could not be retrieved

items : List[FileOrFolder] | None

List of resources retrieved

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘invalid_items’: FieldInfo(annotation=Union[List[trimble.fileservice.models.resource.InvalidItem], NoneType], required=False, default_factory=list, alias=‘invalidItems’, alias_priority=2), ‘items’: FieldInfo(annotation=Union[List[trimble.fileservice.models.file_or_folder_response.FileOrFolder], NoneType], required=False, default_factory=list)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.Export(*, id: str, exportTrn: str | None = None, resourceTrn: str | None = None, resourceId: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, output: Output | None = None, status: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None)

Bases: BaseModel

Represents an Export in File Service

created_at : datetime | None

The date and time when the export was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this export

export_trn : str | None

The TRN (Trimble Resource Name) of the export

id : str

The unique identifier of the export

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘export_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘exportTrn’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘output’: FieldInfo(annotation=Union[Output, NoneType], required=False, default=None), ‘resource_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceId’, alias_priority=2), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘status’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘status’, alias_priority=2), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

output : Output | None

The output of the export

resource_id : str | None

The identifier of the target folder

resource_trn : str | None

The TRN (Trimble Resource Name) of the export

space_id : str | None

The folder identifier of the space

space_trn : str | None

The TRN (Trimble Resource Name) of the space

status : str | None

The status of the export job QUEUED: The job is queued RUNNING: The job is running COMPLETED: The job is completed FAILED: The job failed

updated_at : datetime | None

The date and time when the export was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this export

Bases: FileBaseClass

Represents a File in File Service

capabilities : FileCapabilities | None

Describes the list of actions that can be performed on the file by the current user

classmethod check_type(values)

checkout : Checkout | None

The checkout details of the file

created_at : str | None

The date and time when the file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this file

deleted : bool

True if the file has been deleted

deleted_at : datetime | None

The date and time when the file was deleted

download : Download | None

The download URL of the file

expires_at : datetime | None

The time period when the file object gets automatically removed

fileset : bool | None

Whether the object consists of a set of multiple files that should be treated as a single file

id : str

The unique identifier of the file

last_malware_scan_at : datetime | None

The date and time of the last malware scan for the file

The links of the file

lock : Lock | None

Lock attached to the file.

malware_scan_result : str | None

The result of the malware scan for the file. Only applicable when the MalwareScanStatus is INFECTED or CANNOT_SCAN.

malware_scan_status : MalwareScanStatus | None

The malware scan status of the file

malware_type : str | None

The type of malware detected. Only applicable when the MalwareScanStatus is INFECTED. Format is threat type (virus, adware, spyware, pua etc):threat name. For suspicious files the threat type is ‘unknown’.

md5 : str | None

The MD5 hash of the file

metadata : object | None

Additional information related to the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

multipart : bool

True if the client will split the upload into multiple parts

name : str | None

The name of the file

parent_id : str | None

The parent folder identifier where the file was created

parent_trn : str | None

The TRN (Trimble Resource Name) of the parent folder

parent_type : str | None

The type of the parent

path : str | None

The path of the file

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

The evaluated permissions of the file. It shows the most permissible role applicable for the actor, considering both the direct permissions on the resource, and inherited permissions.

permissions_inherited : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Lists the permissions inherited from the entire parent hierarchy applicable for the actor.

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are directly set on the file

resource_trn : TRN | None

The TRN (Trimble Resource Name) of the file

response_headers : Dict | None

The response headers of the file

restricted_access : bool | None

True if the download url of the file should expire according to the url duration query parameter

size : int | None

The size of the file in bytes

space_id : str | None

The unique identifier for the space where the file is stored

space_trn : TRN | None

The TRN (Trimble Resource Name) of the space where the file is stored

statistics : FileStatistics | None

The statistics of the file

type : str | None

The type of the resource

updated_at : str | None

The date and time when the file was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this file

version : str | None

The version of the file, represented in a ‘major.minor’ format

class trimble.fileservice.models.FileCopyResponse(*, file: MinimalFile | File, job_id: str | None = None)

Bases: FileAsyncBaseResponse

Represents the response of a file copy operation

file : MinimalFile | File

The immediate file resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘file’: FieldInfo(annotation=Union[MinimalFile, File], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.FileInputUploadDetails(*, fileId: str, fileTrn: str | None = None, spaceId: str, spaceTrn: str | None = None, name: str, parentId: str, parentTrn: str | None = None, parentType: str | Literal[‘FOLDER’, ‘FILE’], path: str, restrictedAccess: bool, fileset: bool, multipart: bool = False, responseHeaders: object | None = None, metadata: object | None = None, response: object | None = None, expiresAt: datetime | None = None, permissionsLocal: Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None = None, upload: Upload | None = None, status: str | None = None)

Bases: BaseModel

The input file information

expires_at : datetime | None

The expiration timestamp of the file.

file_id : str

The unique identifier of the file

file_trn : str | None

The TRN (Trimble Resource Name) of the file

fileset : bool

Whether the object consists of a set of multiple files that should be treated as a single file

metadata : object | None

Additional information related to the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘expires_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘expiresAt’, alias_priority=2), ‘file_id’: FieldInfo(annotation=str, required=True, alias=‘fileId’, alias_priority=2), ‘file_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘fileTrn’, alias_priority=2), ‘fileset’: FieldInfo(annotation=bool, required=True), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘multipart’: FieldInfo(annotation=bool, required=False, default=False), ‘name’: FieldInfo(annotation=str, required=True), ‘parent_id’: FieldInfo(annotation=str, required=True, alias=‘parentId’, alias_priority=2), ‘parent_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentTrn’, alias_priority=2), ‘parent_type’: FieldInfo(annotation=Union[str, Literal[‘FOLDER’, ‘FILE’]], required=True, alias=‘parentType’, alias_priority=2), ‘path’: FieldInfo(annotation=str, required=True), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Union[Literal[‘acl’], Literal[‘inherits’]], Union[List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]], bool]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘response’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘response_headers’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None, alias=‘responseHeaders’, alias_priority=2), ‘restricted_access’: FieldInfo(annotation=bool, required=True, alias=‘restrictedAccess’, alias_priority=2), ‘space_id’: FieldInfo(annotation=str, required=True, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘status’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘upload’: FieldInfo(annotation=Union[Upload, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

multipart : bool

True if the client will split the upload into multiple parts

name : str

The name of the file

parent_id : str

The parent folder identifier where the file was created

parent_trn : str | None

The TRN (Trimble Resource Name) of the parent folder

parent_type : str | Literal[‘FOLDER’, ‘FILE’]

The type of the parent

path : str

The path where file is created

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are set directly for actors on the resource itself. Contains ‘inherits’ boolean flag (default: true) that determines whether the permissions need to be inherited from the parent resource or not, and ‘acl’ list of actor-role mappings.

response : object | None

The optional response attributes to use during creation.

response_headers : object | None

The response headers of the file

restricted_access : bool

True if the download url of the file should expire according to the url duration query parameter

space_id : str

The unique identifier for the space where the file is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space

status : str | None

The status of the upload operation. If the upload is not yet completed, the status will be ‘UPLOADABLE’. If the upload is completed, the status will be ‘UPLOADED’. If the upload is failed, the status will be ‘FAILED’.

upload : Upload | None

The upload URL and type of upload for the file

class trimble.fileservice.models.FileOrFolder(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, path: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, version: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a file or folder response in File Service

created_at : datetime | None

The date and time when the folder/file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder/file

deleted : bool

True if the folder/file has been deleted

deleted_at : datetime | None

The date and time when the folder/file was deleted

id : str

The unique identifier of the file/folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘path’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘version’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the file/folder

path : str | None

The path of the folder

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource

space_id : str | None

The unique identifier of the space where the file or folder is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder/ile was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder/file

version : str | None

The version of the file or folder

class trimble.fileservice.models.FileRestoreResponse(*, file: MinimalFile | File, job_id: str | None = None)

Bases: FileAsyncBaseResponse

Represents the response of a file restore operation

file : MinimalFile | File

The immediate file resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘file’: FieldInfo(annotation=Union[MinimalFile, File], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.Folder(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, path: str | None = None, parentId: str | None = None, parentTrn: str | None = None, version: str | None = None, permissionsLocal: Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None = None, permissionsEvaluated: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, permissionsInherited: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, size: int | None = None, metadata: object | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None, stats: FolderStatistics | None = None, capabilities: Capabilities | None = None)

Bases: BaseModel

Represents a Folder in File Service

capabilities : Capabilities | None

Describes the list of actions that can be performed on the file by the current user

created_at : datetime | None

The date and time when the folder was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder

deleted : bool

True if the folder has been deleted

deleted_at : datetime | None

The date and time when the folder was deleted

id : str

The unique identifier of the folder

metadata : object | None

Additional information related to the folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘capabilities’: FieldInfo(annotation=Union[Capabilities, NoneType], required=False, default=None), ‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘parent_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentId’, alias_priority=2), ‘parent_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentTrn’, alias_priority=2), ‘path’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘permissions_evaluated’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsEvaluated’, alias_priority=2), ‘permissions_inherited’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsInherited’, alias_priority=2), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Union[Literal[‘acl’], Literal[‘inherits’]], Union[List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]], bool]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘statistics’: FieldInfo(annotation=Union[FolderStatistics, NoneType], required=False, default=None, alias=‘stats’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the folder

parent_id : str | None

The folder identifier of the parent folder

parent_trn : str | None

The Trimble Resource Name (TRN) of the parent folder

path : str | None

The path of the folder

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

The evaluated permissions of the file. It shows the most permissible role applicable for the actor, considering both the direct permissions on the resource, and inherited permissions.

permissions_inherited : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Lists the permissions inherited from the entire parent hierarchy applicable for the actor.

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are directly set on the file

resource_trn : str | None

The Trimble Resource Name (TRN) of the folder

size : int | None

The size of the folder in bytes

space_id : str | None

The unique identifier of the space where the folder is stored

space_trn : str | None

The Trimble Resource Name (TRN) of the space where the folder is stored

statistics : FolderStatistics | None

The statistics of the folder

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder

version : str | None

The folder version

class trimble.fileservice.models.FolderCopyResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder copy operation

folder : MinimalFolder | Folder

The immediate folder resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.FolderMoveResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder move operation

folder : MinimalFolder | Folder

The immediate folder resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.FolderRenameResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder rename operation

folder : MinimalFolder | Folder

The immediate folder resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.FolderRestoreResponse(*, folder: MinimalFolder | Folder, job_id: str | None = None)

Bases: FolderAsyncBaseResponse

Represents the response of a folder restore operation

folder : MinimalFolder | Folder

The immediate folder resource

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘folder’: FieldInfo(annotation=Union[MinimalFolder, Folder], required=True), ‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

class trimble.fileservice.models.FolderVersionList(*, items: List[Folder], next_page_token: str | None = None)

Bases: BaseModel

Folder list model

items : List[Folder]

The list of folders

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘items’: FieldInfo(annotation=List[trimble.fileservice.models.folder.Folder], required=True), ‘next_page_token’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

next_page_token : str | None

The pagination token for next page

class trimble.fileservice.models.FolderVersionListParams

Bases: TypedDict

TypedDict for folder query params

max_items : int = 100

The maximum number of items to return

next_page_token : str | None = None

The pagination token that can be used as input from a previous request

status : Literal[‘active’, ‘deleted’, ‘active,deleted’] = ‘active’

The status query parameter is used to filter the folders based on their status

class trimble.fileservice.models.InvalidItem(*, id: str | None, status: int | None, type: str | None, title: str | None, detail: str | None, code: str | None)

Bases: BaseModel

Represents an invalid item in a batch get resources operation

code : str | None

The code of the invalid resource

detail : str | None

The detail of the invalid resource

id : str | None

The ID of the resource that was invalid

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘code’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘detail’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘id’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘status’: FieldInfo(annotation=Union[int, NoneType], required=True), ‘title’: FieldInfo(annotation=Union[str, NoneType], required=True), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

status : int | None

The status code of the invalid resource

title : str | None

The title of the invalid resource

type : str | None

The type of the invalid resource

class trimble.fileservice.models.Job(*, id: str, resourceTrn: str | None = None, type: str | None = None, status: str | None = None, message: str | None = None, createdAt: str | None = None, createdByTrn: str | None = None)

Bases: BaseModel

Represents a Job in File Service

created_at : str | None

The created timestamp of the job

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this job

id : str

The unique identifier of the job

message : str | None

The message of the job

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘message’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘status’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

resource_trn : str | None

The Trimble Resource Name (TRN) of the job

status : str | None

The status of the job QUEUED: The job is queued RUNNING: The job is running COMPLETED: The job is completed FAILED: The job failed

type : str | None

The type of job COPY: Copy a file or folder DELETE: Delete a file or folder MOVE: Move a file or folder RENAME: Rename a file or folder UPLOAD: Upload a file RESTORE: Restore a file or folder FOLDER_DELETION: Delete a folder

class trimble.fileservice.models.MinimalFile(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, version: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: str | None = None, updatedAt: str | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: FileBaseClass

Represents a minimal representation of a File in File Service

created_at : str | None

The date and time when the file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this file

deleted : bool

True if the file has been deleted

deleted_at : datetime | None

The date and time when the file was deleted

id : str

The unique identifier of the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the file

resource_trn : TRN | None

The TRN (Trimble Resource Name) of the file

space_id : str | None

The unique identifier for the space where the file is stored

space_trn : TRN | None

The TRN (Trimble Resource Name) of the space where the file is stored

type : str | None

The type of the resource

updated_at : str | None

The date and time when the file was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this file

version : str | None

The version of the file, represented in a ‘major.minor’ format

class trimble.fileservice.models.MinimalFolder(*, id: str, resourceTrn: str = None, name: str | None = None, type: str | None = None, version: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a minimal representation of a Folder in File Service

created_at : datetime | None

The date and time when the folder was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder

deleted : bool

True if the folder has been deleted

deleted_at : datetime | None

The date and time when the folder was deleted

id : str

The unique identifier of the folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=str, required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the folder

resource_trn : str

The Trimble Resource Name (TRN) of the folder

space_id : str | None

The unique identifier of the space where the folder is stored

space_trn : str | None

The Trimble Resource Name (TRN) of the space where the folder is stored

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder

version : str | None

The folder version

class trimble.fileservice.models.MinimalSpace(*, id: str, name: str, type: str | None = None, rootId: str, resourceTrn: str | None = None, rootTrn: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a minimal representation of a Space in File Service

created_at : datetime | None

The date and time when the filespace was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this space

deleted : bool

True if the space has been deleted

deleted_at : datetime | None

The date and time when the space was deleted

id : str

The unique identifier of the filespace

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=str, required=True), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘root_id’: FieldInfo(annotation=str, required=True, alias=‘rootId’, alias_priority=2), ‘root_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str

The name of the filespace

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource. The service governs this property and it’s not configurable by the client.

root_id : str

The unique identifier of the root folder

root_trn : str | None

The TRN (Trimble Resource Name) of the root folder. The service governs this property and it’s not configurable by the client.

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the filespace was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that updated this space

class trimble.fileservice.models.Output(*, url: str)

Bases: BaseModel

Contains the output of an export

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘url’: FieldInfo(annotation=str, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

url : str

The URL to download the exported folder

class trimble.fileservice.models.Space(*, id: str, name: str, type: str | None = None, rootId: str, resourceTrn: str | None = None, rootTrn: str | None = None, accountId: str | None = None, permissionsLocal: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, permissionsEvaluated: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, capabilities: Capabilities | None = None, provider: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None, deleted: bool = False, deletedAt: datetime | None = None, softDeleteRetention: str | None = None, stats: SpaceStatistics | None = None)

Bases: BaseModel

Represents a Space in File Service

account_id : str | None

The unique identifier of the CDH account

capabilities : Capabilities | None

The capabilities that the current user has for this space

created_at : datetime | None

The date and time when the filespace was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this space

deleted : bool

True if the space has been deleted

deleted_at : datetime | None

The date and time when the folder was deleted

id : str

The unique identifier of the filespace

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘account_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘accountId’, alias_priority=2), ‘capabilities’: FieldInfo(annotation=Union[Capabilities, NoneType], required=False, default=None), ‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=str, required=True), ‘permissions_evaluated’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsEvaluated’, alias_priority=2), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘provider’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘root_id’: FieldInfo(annotation=str, required=True, alias=‘rootId’, alias_priority=2), ‘root_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootTrn’, alias_priority=2), ‘soft_delete_retention’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘softDeleteRetention’, alias_priority=2), ‘statistics’: FieldInfo(annotation=Union[SpaceStatistics, NoneType], required=False, default=None, alias=‘stats’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2, validate_default=False), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str

The name of the filespace

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Shows the permissions that are evaluated for the user. Represents the final permissions that apply to the user, considering both the direct permissions on the resource and any inherited permissions.

permissions_local : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Describes the permissions that are set directly on the resource itself.

provider : str | None

The cloud provider of the space aws: Amazon Web Services azure: Microsoft Azure

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource.

root_id : str

The unique identifier of the root folder

root_trn : str | None

The TRN (Trimble Resource Name) of the root folder.

soft_delete_retention : str | None

Duration of soft deleted resources being retained before being permanently removed

statistics : SpaceStatistics | None

The statistics of the space

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the filespace was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that updated this space

class trimble.fileservice.models.SpaceChildrenResponse(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, rootId: str | None = None, rootTrn: str | None = None, version: str | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None)

Bases: BaseModel

Represents a space children response in File Service

created_at : datetime | None

The date and time when the folder/file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this folder/file

deleted : bool

True if the folder/file has been deleted

deleted_at : datetime | None

The date and time when the folder/file was deleted

id : str

The unique identifier of the file/folder

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘root_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootId’, alias_priority=2), ‘root_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘rootTrn’, alias_priority=2), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘version’, alias_priority=2)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str | None

The name of the file/folder

resource_trn : str | None

The TRN (Trimble Resource Name) of the resource

root_id : str | None

The unique identifier of the root folder

root_trn : str | None

The TRN (Trimble Resource Name) of the root folder

space_id : str | None

The unique identifier of the space where the file or folder is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space

type : str | None

The type of the resource

updated_at : datetime | None

The date and time when the folder/ile was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this folder/file

version : str | None

The version of the file or folder

class trimble.fileservice.models.SpaceRestoreResponse(*, space: MinimalSpace | Space, job_id: str | None = None)

Bases: BaseModel

Represents the response of a space restore operation

job_id : str | None

The job id if the restore is asynchronous, None otherwise

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘job_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘space’: FieldInfo(annotation=Union[MinimalSpace, Space], required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

space : MinimalSpace | Space

The restored space

class trimble.fileservice.models.SupportFile(*, id: str, resourceTrn: str | None = None, name: str | None = None, type: str | None = None, version: str | None = None, spaceId: str | None = None, spaceTrn: str | None = None, createdAt: str | None = None, updatedAt: str | None = None, createdByTrn: str | None = None, updatedByTrn: str | None = None, deleted: bool = False, deletedAt: datetime | None = None, parentId: str, parentTrn: str | None = None, parentType: str | None = None, path: str | None = None, permissionsLocal: Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None = None, permissionsEvaluated: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, permissionsInherited: Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None = None, restrictedAccess: bool | None = True, fileset: bool | None = False, size: int | None = None, md5: str | None = None, expiresAt: datetime | None = None, multipart: bool = False, responseHeaders: Dict | None = None, metadata: object | None = None, download: Download | None = None, malwareScanStatus: MalwareScanStatus | None = None, lastMalwareScanDate: datetime | None = None, malwareScanResult: str | None = None, malwareType: str | None = None, capabilities: FileCapabilities | None = None)

Bases: FileBaseClass

Represents a Support File in File Service

capabilities : FileCapabilities | None

Describes the list of actions that can be performed on the file by the current user

created_at : str | None

The date and time when the file was created

created_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that created this file

deleted : bool

True if the file has been deleted

deleted_at : datetime | None

The date and time when the file was deleted

download : Download | None

The download URL of the file

expires_at : datetime | None

The time period when the file object gets automatically removed

fileset : bool | None

Whether the object consists of a set of multiple files that should be treated as a single file

id : str

The unique identifier of the file

last_malware_scan_at : datetime | None

The date and time of the last malware scan for the file

malware_scan_result : str | None

The result of the malware scan for the file. Only applicable when the MalwareScanStatus is INFECTED or CANNOT_SCAN.

malware_scan_status : MalwareScanStatus | None

The malware scan status of the file

malware_type : str | None

The type of malware detected. Only applicable when the MalwareScanStatus is INFECTED. Format is threat type (virus, adware, spyware, pua etc):threat name. For suspicious files the threat type is ‘unknown’.

md5 : str | None

The MD5 hash of the file

metadata : object | None

Additional information related to the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘capabilities’: FieldInfo(annotation=Union[FileCapabilities, NoneType], required=False, default=None, alias=‘capabilities’, alias_priority=2), ‘created_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘deleted’: FieldInfo(annotation=bool, required=False, default=False), ‘deleted_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘deletedAt’, alias_priority=2), ‘download’: FieldInfo(annotation=Union[Download, NoneType], required=False, default=None), ‘expires_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘expiresAt’, alias_priority=2), ‘fileset’: FieldInfo(annotation=Union[bool, NoneType], required=False, default=False), ‘id’: FieldInfo(annotation=str, required=True), ‘last_malware_scan_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘lastMalwareScanDate’, alias_priority=2), ‘malware_scan_result’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘malwareScanResult’, alias_priority=2), ‘malware_scan_status’: FieldInfo(annotation=Union[MalwareScanStatus, NoneType], required=False, default=None, alias=‘malwareScanStatus’, alias_priority=2), ‘malware_type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘malwareType’, alias_priority=2), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘multipart’: FieldInfo(annotation=bool, required=False, default=False), ‘name’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘parent_id’: FieldInfo(annotation=str, required=True, alias=‘parentId’, alias_priority=2), ‘parent_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentTrn’, alias_priority=2), ‘parent_type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘parentType’, alias_priority=2), ‘path’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘permissions_evaluated’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsEvaluated’, alias_priority=2), ‘permissions_inherited’: FieldInfo(annotation=Union[Dict[Literal[‘acl’], List[Dict[Union[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’], str], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]]], NoneType], required=False, default=None, alias=‘permissionsInherited’, alias_priority=2), ‘permissions_local’: FieldInfo(annotation=Union[Dict[Union[Literal[‘acl’], Literal[‘inherits’]], Union[List[Dict[Literal[‘actor’, ‘role’], Union[str, Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]], bool]], NoneType], required=False, default=None, alias=‘permissionsLocal’, alias_priority=2), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘response_headers’: FieldInfo(annotation=Union[Dict, NoneType], required=False, default=None, alias=‘responseHeaders’, alias_priority=2), ‘restricted_access’: FieldInfo(annotation=Union[bool, NoneType], required=False, default=True, alias=‘restrictedAccess’, alias_priority=2), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘space_id’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceId’, alias_priority=2), ‘space_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘spaceTrn’, alias_priority=2), ‘type’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

multipart : bool

True if the client will split the upload into multiple parts

name : str | None

The name of the file

parent_id : str

The parent folder identifier where the file was created

parent_trn : str | None

The TRN (Trimble Resource Name) of the parent folder

parent_type : str | None

The type of the parent

path : str | None

The path of the file

permissions_evaluated : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

The evaluated permissions of the file. It shows the most permissible role applicable for the actor, considering both the direct permissions on the resource, and inherited permissions.

permissions_inherited : Dict[Literal[‘acl’], List[Dict[Literal[‘actor’, ‘role’, ‘inheritedFrom’, ‘inheritedFromTrn’] | str, str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]]] | None

Lists the permissions inherited from the entire parent hierarchy applicable for the actor.

permissions_local : Dict[Literal[‘acl’, ‘inherits’], List[Dict[Literal[‘actor’, ‘role’], str | Literal[‘spaceManager’, ‘contentManager’, ‘contentContributor’, ‘contentViewer’]]] | bool] | None

The permissions that are directly set on the file

resource_trn : TRN | None

The TRN (Trimble Resource Name) of the file

response_headers : Dict | None

The response headers of the file

restricted_access : bool | None

True if the download url of the file should expire according to the url duration query parameter

size : int | None

The size of the file in bytes

space_id : str | None

The unique identifier for the space where the file is stored

space_trn : TRN | None

The TRN (Trimble Resource Name) of the space where the file is stored

type : str | None

The type of the resource

updated_at : str | None

The date and time when the file was last updated

updated_by : str | None

The TRN (Trimble Resource Name) of the user/device/application that last updated this file

version : str | None

The version of the file, represented in a ‘major.minor’ format

class trimble.fileservice.models.SupportFileDetails(*, id: str, version: str | None = None, downloadUrl: str | None = None)

Bases: BaseModel

Represents a Support File Details object

download_url : str | None

The download URL of the Support File

id : str

The unique identifier of the Support File

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘download_url’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘downloadUrl’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

version : str | None

The version of the Support File

Bases: FileInputUploadDetails

The input support file information

Whether the support file should be linked to the parent file

expires_at : datetime | None

The expiration timestamp of the file.

file_id : str

The unique identifier of the file

file_trn : str | None

The TRN (Trimble Resource Name) of the file

fileset : bool

Whether the object consists of a set of multiple files that should be treated as a single file

metadata : Metadata | None

Additional information related to the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

multipart : bool

True if the client will split the upload into multiple parts

name : str

The name of the file

parent_id : str

The parent folder identifier where the file was created

parent_major_version : int | None

The major version of the file

parent_trn : str | None

The TRN (Trimble Resource Name) of the parent folder

parent_type : str | Literal[‘FOLDER’, ‘FILE’]

The type of the parent

path : str

The path where file is created

permissions_local : PermissionsLocalFile | None

The permissions that are set directly for actors on the resource itself. Contains ‘inherits’ boolean flag (default: true) that determines whether the permissions need to be inherited from the parent resource or not, and ‘acl’ list of actor-role mappings.

response : object | None

The optional response attributes to use during creation.

response_headers : object | None

The response headers of the file

restricted_access : bool

True if the download url of the file should expire according to the url duration query parameter

space_id : str

The unique identifier for the space where the file is stored

space_trn : str | None

The TRN (Trimble Resource Name) of the space

status : str | None

The status of the upload operation. If the upload is not yet completed, the status will be ‘UPLOADABLE’. If the upload is completed, the status will be ‘UPLOADED’. If the upload is failed, the status will be ‘FAILED’.

support_file_key : str | None

The key of the support file

upload : Upload | None

The upload URL and type of upload for the file

class trimble.fileservice.models.SupportFileLinkParams

Bases: TypedDict

Represents the parameters for linking a Support File

id : str

The id of the Support File

version : str | None

The version of the Support File

class trimble.fileservice.models.SupportFileResourceDetails(*, fileId: str, name: str, supportFileKey: str, upload: Upload, restrictedAccess: bool, responseHeaders: object | None = None, metadata: object | None = None)

Bases: BaseModel

Represents the details of support file

file_id : str

The unique identifier of the file

metadata : object | None

Additional information related to the support file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘file_id’: FieldInfo(annotation=str, required=True, alias=‘fileId’, alias_priority=2), ‘metadata’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None), ‘name’: FieldInfo(annotation=str, required=True), ‘response_headers’: FieldInfo(annotation=Union[object, NoneType], required=False, default=None, alias=‘responseHeaders’, alias_priority=2), ‘restricted_access’: FieldInfo(annotation=bool, required=True, alias=‘restrictedAccess’, alias_priority=2), ‘support_file_key’: FieldInfo(annotation=str, required=True, alias=‘supportFileKey’, alias_priority=2), ‘upload’: FieldInfo(annotation=Upload, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

name : str

The name of the file

response_headers : object | None

The response headers of the support file

restricted_access : bool

True if the download url of the file should expire according to the url duration query parameter

support_file_key : str

The key of the support file

upload : Upload

The upload URL and type of upload for the file

class trimble.fileservice.models.SupportFileResourceParams

Bases: TypedDict

Represents a Support File Resource in File Service

metadata : object | None = None

Additional information related to the support file

name : str

The name of the support file

response_headers : Dict | None = FieldInfo(annotation=NoneType, required=False, default=None, alias=‘responseHeaders’, alias_priority=2)

The response headers of the support file

restricted_access : bool | None = FieldInfo(annotation=NoneType, required=False, default=True, alias=‘restrictedAccess’, alias_priority=2)

True if the download url of the file should expire according to the url duration query parameter

support_file_key : str | None = FieldInfo(annotation=NoneType, required=True, alias=‘supportFileKey’, alias_priority=2)

The key of the support file

class trimble.fileservice.models.SupportFileResourceUpload

Bases: TypedDict

Represents a Support File Resource to be uploaded via Package Upload

file_object : IO[bytes]

The file object to be uploaded

key : str

The key of the support file. This key should match the key provided when creating the package upload

class trimble.fileservice.models.UploadFileResponse(*, id: str, resourceTrn: str | None = None, result: Result | None = None, size: int | None = None, version: str | None = None, md5: str | None = None, fileInputUploadDetails: FileInputUploadDetails | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None)

Bases: BaseModel

Represents a File Upload in File Service

created_at : datetime | None

The date and time when the upload was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this upload

file : FileInputUploadDetails | None

The input file information

id : str

The unique identifier of the upload

md5 : str | None

The MD5 hash of the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘file’: FieldInfo(annotation=Union[FileInputUploadDetails, NoneType], required=False, default=None, alias=‘fileInputUploadDetails’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘result’: FieldInfo(annotation=Union[Result, NoneType], required=False, default=None), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

resource_trn : str | None

The TRN (Trimble Resource Name) of the upload resource

result : Result | None

The result of the upload operation

size : int | None

The size of the file in bytes

updated_at : datetime | None

The date and time when the upload was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that last updated this upload

version : str | None

The version of the file, represented in a ‘major.minor’ format

class trimble.fileservice.models.UploadPackageResponse(*, id: str, resourceTrn: str | None = None, result: Result | None = None, size: int | None = None, version: str | None = None, md5: str | None = None, fileInputUploadDetails: FileInputUploadDetails | None = None, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None, resources: list[SupportFileResourceDetails])

Bases: UploadFileResponse

Represents a Package Upload in File Service

created_at : datetime | None

The date and time when the upload was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this upload

file : FileInputUploadDetails | None

The input file information

id : str

The unique identifier of the upload

md5 : str | None

The MD5 hash of the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘file’: FieldInfo(annotation=Union[FileInputUploadDetails, NoneType], required=False, default=None, alias=‘fileInputUploadDetails’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘result’: FieldInfo(annotation=Union[Result, NoneType], required=False, default=None), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘support_file_resources’: FieldInfo(annotation=list[SupportFileResourceDetails], required=True, alias=‘resources’, alias_priority=2), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

resource_trn : str | None

The TRN (Trimble Resource Name) of the upload resource

result : Result | None

The result of the upload operation

size : int | None

The size of the file in bytes

support_file_resources : list[SupportFileResourceDetails]

The resources associated with the upload

updated_at : datetime | None

The date and time when the upload was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that last updated this upload

version : str | None

The version of the file, represented in a ‘major.minor’ format

class trimble.fileservice.models.UploadSupportFileResponse(*, id: str, resourceTrn: str | None = None, result: Result | None = None, size: int | None = None, version: str | None = None, md5: str | None = None, fileInputUploadDetails: SupportFileInputUploadDetails, createdAt: datetime | None = None, updatedAt: datetime | None = None, createdByTrn: str = None, updatedByTrn: str = None)

Bases: UploadFileResponse

Represents a Support File Upload in File Service

created_at : datetime | None

The date and time when the upload was created

created_by : str

The TRN (Trimble Resource Name) of the user/device/application that created this upload

file : SupportFileInputUploadDetails

The input support file information

id : str

The unique identifier of the upload

md5 : str | None

The MD5 hash of the file

model_computed_fields : ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config : ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields : ClassVar[dict[str, FieldInfo]] = {‘created_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘createdAt’, alias_priority=2), ‘created_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘createdByTrn’, alias_priority=2), ‘file’: FieldInfo(annotation=SupportFileInputUploadDetails, required=True, alias=‘fileInputUploadDetails’, alias_priority=2), ‘id’: FieldInfo(annotation=str, required=True), ‘md5’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None), ‘resource_trn’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None, alias=‘resourceTrn’, alias_priority=2), ‘result’: FieldInfo(annotation=Union[Result, NoneType], required=False, default=None), ‘size’: FieldInfo(annotation=Union[int, NoneType], required=False, default=None), ‘updated_at’: FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None, alias=‘updatedAt’, alias_priority=2), ‘updated_by’: FieldInfo(annotation=str, required=False, default=None, alias=‘updatedByTrn’, alias_priority=2), ‘version’: FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model._fields_ from Pydantic V1.

resource_trn : str | None

The TRN (Trimble Resource Name) of the upload resource

result : Result | None

The result of the upload operation

size : int | None

The size of the file in bytes

updated_at : datetime | None

The date and time when the upload was last updated

updated_by : str

The TRN (Trimble Resource Name) of the user/device/application that last updated this upload

version : str | None

The version of the file, represented in a ‘major.minor’ format