Dataset.upload_large¶
Upload a large file using chunked multipart upload.
For files >50MB that exceed single-request upload limits. Automatically falls back to regular upload for small files.
Signature¶
upload_large(file_path: str, chunk_size: int=52428800) -> dict[str, Any]
Parameters¶
| Name | Type | Required | Default |
|---|---|---|---|
file_path |
str |
yes | - |
chunk_size |
int |
no | 52428800 |
HTTP parameters¶
| Name | In | Type | Required | Default |
|---|---|---|---|---|
dataset_id |
path |
string |
yes | - |
create_imagefile |
query |
boolean |
no | false |
Fields¶
| Field | Type | Required |
|---|---|---|
file |
string |
yes |
Return shape¶
HTTP 201 — Created
Schema: DataFileSchema
| Field | Type | Required |
|---|---|---|
created_at |
string |
yes |
hash |
string |
yes |
id |
string |
yes |
image_url |
string |
yes |
level_counts |
object |
yes |
name |
string |
yes |
owner_id |
string |
yes |
parquet_column_schema |
object |
yes |
parquet_error |
string |
yes |
parquet_row_count |
integer |
yes |
parquet_status |
string |
yes |
reference_id |
integer |
yes |
source_file_url |
string |
yes |
type |
string |
yes |
updated_at |
string |
yes |
Permission¶
Required permission: dataset:write
HTTP¶
POST /api/datasets/{id}/datafiles/ (uploadDataFile)
Usage¶
ds.upload_large("large_capture.csv") # 200MB file