# List upload parts

`GET https://api.cademi.com.br/api/v3/uploads/{upload_id}/parts`

Operation ID: `uploads.parts.list` · API v3

Lists the parts that the storage service has already received for the upload session.

Use this operation to resume an interrupted upload without resending parts that were already received. The result always reflects the current state reported by the storage service.

Required permissions: `files.read`.

## Parameters

| Name | In | Type | Required | Description |
|---|---|---|---|---|
| `upload_id` | path | string | yes |  |

## Responses

### 200

Returns the parts already received for the upload session.

Body: `data`: array of UploadPart.

Fields of UploadPart:

| Field | Type | Required | Description |
|---|---|---|---|
| `etag` | string | yes |  |
| `object` | string, one of `upload_part` | yes |  |
| `part_number` | integer | yes |  |
| `size_bytes` | integer | yes |  |
| `uploaded_at` | string or null (date-time) | yes |  |

### 401

The credential is missing, malformed, expired, or revoked.

Body: Error.

### 403

The current credentials do not have the permission required by this operation.

Body: Error.

### 404

The upload session was not found or is not accessible with the current credentials.

Body: Error.

### 503

The storage service is temporarily unavailable. Retry the request with backoff.

Body: Error.

Full schema: https://cademi.dev/openapi/v3.json
