> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Blob Chunked Upload Status

> Scopri quali parti di un upload chunked sono già arrivate con GET /v1/objects/chunked, per riprendere un upload interrotto.

<ParamField header="Authorization" type="string" placeholder="API Key" required>
  La chiave API del tuo account. Puoi trovarla nelle [impostazioni del tuo account](https://squarecloud.app/it/account/security).
</ParamField>

Chunked Status elenca le parti di un upload aperto che sono già archiviate. Usalo per **riprendere** dopo un crash, una connessione persa o un ricaricamento della pagina: invia solo le parti mancanti con [Chunked Part](/it/blob-reference/endpoint/chunked-part), poi chiama [Chunked Complete](/it/blob-reference/endpoint/chunked-complete). Richiede lo scope `blob:write`.

Se hai perso anche il token `upload`, [Open Uploads](/it/blob-reference/endpoint/chunked-open) elenca tutti gli upload aperti dell'account con il relativo token.

<ParamField query="upload" type="string" required>
  Il token `upload` restituito da Chunked Init.
</ParamField>

### Limiti di frequenza

<Note>10 richieste ogni 10 secondi (`RATE_LIMITED`, 429). Usala per riprendere un upload, non per monitorare l'avanzamento: il tuo client sa già quali parti ha inviato.</Note>

### Risposta

<ResponseField name="status" type="string">
  "success" in caso di successo, "error" in caso contrario.
</ResponseField>

<ResponseField name="response" type="object">
  <Expandable title="Mostra oggetto">
    <ResponseField name="id" type="string">
      L'id che il file avrà una volta completato.
    </ResponseField>

    <ResponseField name="parts" type="array">
      Le parti archiviate, ciascuna come `{ "part", "size", "etag" }`.
    </ResponseField>

    <ResponseField name="next_part" type="number">
      Il numero di parte più basso non ancora archiviato.
    </ResponseField>

    <ResponseField name="size_so_far" type="number">
      Il totale dei byte archiviati finora.
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://blob.squarecloud.app/v1/objects/chunked?upload=UPLOAD_TOKEN' \
    --header 'Authorization: YOUR_API_KEY'
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  {
    "status": "success",
    "response": {
      "id": "prv/3155597145698959364/genomics/dataset_mugws5c0-3c59dc048e8850243be8079a5c74d079.fastq.gz",
      "parts": [
        { "part": 1, "size": 16777216, "etag": "\"9bb58f26192e4ba00f01e2e7b136bbd8\"" },
        { "part": 2, "size": 16777216, "etag": "\"4a2f0b1c9d8e7f6a5b4c3d2e1f0a9b8c\"" },
        { "part": 4, "size": 16777216, "etag": "\"e1f0a9b8c4a2f0b1c9d8e7f6a5b4c3d2\"" }
      ],
      "next_part": 3,
      "size_so_far": 50331648
    }
  }
  ```
</ResponseExample>

### Errori

| Codice                 | HTTP | Quando                                                     |
| ---------------------- | ---- | ---------------------------------------------------------- |
| `INVALID_UPLOAD_TOKEN` | 400  | Il token `upload` manca, è malformato o non ti appartiene. |
| `UPLOAD_NOT_FOUND`     | 404  | L'upload è stato completato, annullato o è scaduto.        |
| `RATE_LIMITED`         | 429  | Più di 10 richieste in 10 secondi.                         |
