Download File

Fazer download de um arquivo do storage

Download File

Faz download de um arquivo armazenado no storage do cliente.

Endpoint

GET /storage-explorer/storage/download

Permissões Requeridas

  • STORAGE_EXPLORER.READ

Query Parameters

ParâmetroTipoObrigatórioDescrição
file_pathstringSimCaminho completo do arquivo

Exemplo de Requisição

curl -X GET "https://maestro.dadosfera.ai/storage-explorer/storage/download?file_path=/raw/sales/orders_2024_01.csv" \
  -H "Authorization: <JWT_TOKEN>" \
  -o orders_2024_01.csv

Exemplo com Python

import requests

url = "https://maestro.dadosfera.ai/storage-explorer/storage/download"
headers = {
    "Authorization": f"Bearer {jwt_token}"
}
params = {
    "file_path": "/raw/sales/orders_2024_01.csv"
}

response = requests.get(url, headers=headers, params=params, stream=True)

if response.status_code == 200:
    with open("orders_2024_01.csv", "wb") as f:
        for chunk in response.iter_content(chunk_size=8192):
            f.write(chunk)

Exemplo com cURL (salvar arquivo)

curl -X GET "https://maestro.dadosfera.ai/storage-explorer/storage/download?file_path=/raw/sales/orders_2024_01.csv" \
  -H "Authorization: <JWT_TOKEN>" \
  --output orders_2024_01.csv

Response Headers

Content-Type: application/octet-stream
Content-Disposition: attachment; filename="orders_2024_01.csv"
Content-Length: 524288

Formatos Suportados

Todos os formatos de arquivo armazenados podem ser baixados:

  • CSV
  • Excel (XLSX, XLS)
  • JSON
  • Parquet
  • TXT
  • E outros formatos de dados

Download de Arquivos Grandes

Para arquivos grandes, a resposta é transmitida (streamed) para evitar sobrecarga de memória. Use streaming no cliente:

# Python com streaming
response = requests.get(url, headers=headers, params=params, stream=True)
with open("large_file.parquet", "wb") as f:
    for chunk in response.iter_content(chunk_size=1024*1024):  # 1MB chunks
        if chunk:
            f.write(chunk)

Códigos de Status

CódigoDescrição
200Arquivo retornado com sucesso
400file_path não fornecido
401Não autenticado
403Sem permissão STORAGE_EXPLORER.READ
404Arquivo não encontrado
500Erro ao ler arquivo do storage

Erros Comuns

Arquivo Não Encontrado (404)

{
  "error": "File not found",
  "file_path": "/raw/sales/missing_file.csv"
}

Caminho Inválido (400)

{
  "error": "Invalid file path",
  "message": "file_path parameter is required"
}