Încărcare bucăți de fișier
Dacă vrei sa incarci fișiere mari, uneori trebuie sa le imparti în bucăți și sa le incarci pe rand. Acest endpoint aduna bucatile și le uneste intr-un singur fișier pe backend.
Endpoint
http
POST /api/v1/shares/{token}/uploadsParametri
Parametri URL
| Parametru | Tip | Obligatoriu | Descriere |
|---|---|---|---|
token | string | yes | - |
Parametri body
| Parametru | Tip | Obligatoriu | Descriere |
|---|---|---|---|
name | string | yes | Numele fișierului, trebuie să fie același pentru toate bucățile. |
chunk | file | yes | Fișierul sau o parte din fișier ca bucată. |
extension | string | yes | Extensia fișierului. |
is_last_chunk | boolean | yes | Stabilește dacă fișierul sau bucata trimisă este ultima din coada de încărcare. |
path | string | yes | Calea către directorul fișierului. Folosește-o când vrei să încarci un folder și să recreezi structura de foldere în backend. Ex.: /Documents/Photos/wallpaper.jpg |
parent_id | uuid | no | UUID-ul folderului părinte. Dacă nu este setat, fișierele vor fi încărcate în locația principală. |
Exemplu de cerere
sh
curl --location --request POST 'https://files.ro/api/v1/shares/{token}/uploads' \
--header 'Content-Type: multipart/form-data' \
--form 'name=filesro-hero' \
--form 'chunk=@/path/to/file' \
--form 'extension=jpg' \
--form 'is_last_chunk=1' \
--form 'path=/tru/man/mora/'Răspuns
json
{
"data": {
"id": "file_123",
"type": "file",
"attributes": {
"filesize": "1.2 MB",
"name": "report.pdf",
"basename": "report-uuid.pdf",
"mimetype": "application/pdf",
"file_url": "https://files.ro/file/report-uuid.pdf",
"thumbnail": "https://files.ro/thumbnail/report-uuid.jpg",
"parent_id": "folder_123",
"created_at": "01. Jan. 2024",
"updated_at": "02. Jan. 2024",
"deleted_at": null
},
"relationships": {
"shared": {
"data": {
"id": "share_123",
"type": "shared",
"attributes": {
"permission": "editor",
"protected": false,
"item_id": "item_123",
"expire_in": 24,
"token": "share_token",
"link": "https://files.ro/share/share_token",
"type": "folder"
}
}
},
"parent": {
"data": {
"type": "folder",
"id": "folder_123",
"attributes": {
"name": "Projects"
}
}
},
"creator": {
"data": {
"type": "creator",
"id": "user_123",
"attributes": {
"name": "Jane Doe",
"avatar": "https://files.ro/storage/avatars/jane.png",
"color": "#00BC7E"
}
}
},
"exif": {
"data": {
"type": "exif",
"id": "exif_123",
"attributes": {
"date_time_original": "2024-01-01",
"artist": "Jane Doe",
"height": 1080,
"width": 1920,
"x_resolution": "72",
"y_resolution": "72",
"color_space": "sRGB",
"camera": "Canon",
"model": "EOS",
"aperture_value": 2.8,
"exposure_time": "1/125",
"focal_length": "50mm",
"iso": 100,
"aperture_f_number": 2.8,
"ccd_width": "5.76mm",
"longitude": "0.0000",
"latitude": "0.0000"
}
}
}
}
}
}json
json
{
"type": "error",
"message": "Access Denied"
}