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

# Complete Single-Part Upload

> Finalize a single-part staged upload

Finalizes a single-part staged upload after the file has been uploaded using the pre-signed URL. This is the single-part companion to the multi-part complete endpoint.

<ParamField query="staging_type" type="string" default="core">
  Staging bucket type: `core`, `instrument`, or `stream`
</ParamField>

<ParamField body="new_filename" type="string" required>
  The server-assigned filename from the get upload URL response
</ParamField>

## Response

Returns an empty object on success.

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.atomscale.ai/data_entries/raw_data/staged/upload_urls/single/complete/" \
    -H "X-API-KEY: YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "new_filename": "staged_rheed_video.mp4"
    }'
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://api.atomscale.ai/data_entries/raw_data/staged/upload_urls/single/complete/",
      headers={
          "X-API-KEY": "YOUR_API_KEY",
          "Content-Type": "application/json"
      },
      json={
          "new_filename": "staged_rheed_video.mp4"
      }
  )
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {}
  ```
</ResponseExample>
