RepoDownloadModule
Descarga el contenido de documentos. Thread-safe.
Si no indicas file_name el archivo se llama "document". Para guardarlo en disco
usa archivo.save(...) (ver ShoriFile.save: la carpeta de destino debe existir).
Ejemplo General
```python
import os
os.makedirs("descargas", exist_ok=True)
archivo = client.repo().download().by_document(
GetDocumentByIdRequest(document_id="uuid", file_name="contrato.pdf")
)
ruta = archivo.save("descargas") # descargas/contrato.pdf
```
Métodos
def __init__(config: ShoriConfig, http: HttpExecutor) -> None
Parámetros:
config(ShoriConfig) —http(HttpExecutor) —
def by_document(request: GetDocumentByIdRequest | Mapping[str, Any]) -> ShoriFile
Descarga un documento por su UUID.
Parámetros:
request(GetDocumentByIdRequest | Mapping[str, Any]) —GetDocumentByIdRequestodict(documentIdy, opcional,fileName).
Retorna: ShoriFile — ShoriFile con el contenido (content), name, size y type.
Lanza:
ResourceNotFoundException— Si el documento no existe.
Ejemplo de uso:
```python
archivo = client.repo().download().by_document({"documentId": "uuid", "fileName": "contrato.pdf"})
contenido: bytes = archivo.content
```
def by_document_and_version(request: DownloadByDocumentAndVersionRequest | Mapping[str, Any]) -> ShoriFile
Descarga una versión específica de un documento.
Parámetros:
request(DownloadByDocumentAndVersionRequest | Mapping[str, Any]) —DownloadByDocumentAndVersionRequestodict(documentId,versionIdy,
Retorna: ShoriFile — ShoriFile de esa versión.
Ejemplo de uso:
```python
v2 = client.repo().download().by_document_and_version(
DownloadByDocumentAndVersionRequest(document_id="uuid", version_id="v2-uuid", file_name="contrato_v2.pdf")
)
```
def export_document(request: GetDocumentByIdRequest | Mapping[str, Any]) -> ShoriFile
Descarga la versión exportada (habitualmente PDF) de un documento.
Parámetros:
request(GetDocumentByIdRequest | Mapping[str, Any]) —GetDocumentByIdRequestodict.
Retorna: ShoriFile — ShoriFile exportado.
Ejemplo de uso:
```python
pdf = client.repo().download().export_document(
GetDocumentByIdRequest(document_id="uuid", file_name="informe.pdf")
)
```