Beta documentation

This is the documentation of the Python SDK Beta (0.15.0 and earlier), which is no longer updated. For 1.0 and later, see the LucidLink Developer Portal; to upgrade, follow the migration guide.

connect_models

Data models for LucidLink Connect (external files).

lucidlink.connect_models.DataStoreCredentials

alias of S3Credentials

class lucidlink.connect_models.DataStoreInfo(name: str, access_key: str = '', secret_key: str = '', bucket_name: str = '', region: str = '', endpoint: str = '', url_expiration_minutes: int = 0, use_virtual_addressing: bool = False, kind: DataStoreKind = DataStoreKind.S3, key_id: str = '', rekey_state: DataStoreRekeyState = DataStoreRekeyState.NO_REKEY)[source]

Bases: object

Information about a registered data store.

access_key: str = ''

S3 access key ID.

bucket_name: str = ''

S3 bucket name.

endpoint: str = ''

Full S3 endpoint URL (e.g., "http://127.0.0.1:9090"), empty if using AWS default.

classmethod from_dict(store: dict) → DataStoreInfo[source]
key_id: str = ''

Unique key identifier (UUID).

kind: DataStoreKind = 'S3DataStore'

Data store type.

name: str

Data store name.

region: str = ''

AWS region.

rekey_state: DataStoreRekeyState = 'no_rekey'

Current credential rotation state.

secret_key: str = ''

S3 secret access key.

url_expiration_minutes: int = 0

Presigned URL expiration in minutes.

use_virtual_addressing: bool = False

Whether virtual-hosted-style addressing is used.

class lucidlink.connect_models.DataStoreKind(*values)[source]

Bases: str, Enum

Type of external data store.

Groups files linked via direct HTTP/HTTPS URLs.

S3 = 'S3DataStore'

Amazon S3 or S3-compatible object storage.

class lucidlink.connect_models.DataStoreRekeyState(*values)[source]

Bases: str, Enum

Credential rotation state for a data store.

IN_PROGRESS = 'in_progress'

Credential rotation is currently in progress.

NO_REKEY = 'no_rekey'

No credential rotation in progress.

class lucidlink.connect_models.LinkedFile(path: str, entry_id: str, inode_id: str)[source]

Bases: object

One external file linked from a data store.

entry_id: str

Entry ID. Matches DirEntry.entry_id; hard links to the same file have distinct entry IDs.

inode_id: str

Inode ID. Matches DirEntry.inode_id; shared by all hard links to the same file.

path: str

Path of the linked file within the filespace.

class lucidlink.connect_models.LinkedFilesResult(file_paths: List[str] = <factory>, file_ids: List[int] = <factory>, has_more: bool = False, cursor: str = '', entries: List[LinkedFile] = <factory>)[source]

Bases: object

Result from listing external files linked from a data store.

cursor: str = ''

Opaque pagination token; pass to the next call to continue.

entries: List[LinkedFile]

List of linked files, each carrying its path, entry ID, and inode ID.

file_ids: List[int]

Deprecated. Numeric (lossy) entry IDs; use entries instead.

file_paths: List[str]

Deprecated. List of file paths; use entries instead.

has_more: bool = False

Whether more results are available (pagination).

class lucidlink.connect_models.S3Credentials(access_key: str, secret_key: str, kind: lucidlink.connect_models.DataStoreKind = <DataStoreKind.S3: 'S3DataStore'>)[source]

Bases: object

access_key: str
kind: DataStoreKind = 'S3DataStore'
secret_key: str
class lucidlink.connect_models.S3DataStoreConfig(access_key: str, secret_key: str, bucket_name: str, region: str, endpoint: str = '', url_expiration_minutes: int = 10080, use_virtual_addressing: bool = False)[source]

Bases: object

Configuration for an S3-compatible data store.

access_key: str

S3 access key ID.

bucket_name: str

S3 bucket name.

endpoint: str = ''

Custom S3 endpoint URL with scheme, e.g. "http://127.0.0.1:9090". Must start with "http://" or "https://". When empty, defaults to HTTPS.

region: str

AWS region (e.g., "us-east-1").

secret_key: str

S3 secret access key.

url_expiration_minutes: int = 10080

Presigned URL expiration in minutes (7 days).

use_virtual_addressing: bool = False

Use virtual-hosted-style addressing.