> ## 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.

# Abort a chunked upload

> Cancel a chunked upload and discard its parts with DELETE /v1/objects/chunked. It is idempotent and needs no active plan, so you can always clean up.

<ParamField header="Authorization" type="string" placeholder="API Key" required>
  The API key for your account. You can find this in your [account settings](https://squarecloud.app/en/account/security).
</ParamField>

Chunked Abort cancels an upload opened with [Chunked Init](/en/blob-reference/endpoint/chunked-init) and discards the parts already sent, freeing one of the account's 32 open uploads. It is idempotent: aborting an upload that was already completed, aborted or expired also answers success. No active plan is needed, so you can always clean up. Requires the `blob:write` scope, or the upload token that opened the upload.

Uploads idle for 24 hours are aborted automatically.

## Parameters

<ParamField body="upload" type="string" required>
  The `upload` token returned by Chunked Init. It can also go in the `upload` query parameter.
</ParamField>

## Rate limits

<Note>10 requests per 10 seconds (`RATE_LIMITED`, 429).</Note>

## Response

<ResponseField name="status" type="string">
  "success" if successful, "error" if not.
</ResponseField>

<RequestExample>
  ```bash cURL theme={"system"}
  curl --request DELETE \
    --url 'https://blob.squarecloud.app/v1/objects/chunked' \
    --header 'Authorization: YOUR_API_KEY' \
    --header 'Content-Type: application/json' \
    --data '{ "upload": "UPLOAD_TOKEN" }'
  ```

  ```javascript JavaScript theme={"system"}
  await fetch('https://blob.squarecloud.app/v1/objects/chunked', {
    method: 'DELETE',
    headers: {
      Authorization: 'YOUR_API_KEY',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({ upload: uploadToken }),
  });
  ```
</RequestExample>

<ResponseExample>
  ```json theme={"system"}
  {
    "status": "success"
  }
  ```
</ResponseExample>

## Errors

| Code | HTTP | When |
| - | - | - |
| `INVALID_UPLOAD_TOKEN` | 400 | The `upload` token is missing, malformed or not yours. |
| `RATE_LIMITED` | 429 | More than 10 requests in 10 seconds. |

## Related

* Blob SDK: [`blob.put()`](/en/sdks/blob/uploads) runs the whole chunked flow for files above 90 MiB


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.