> ## Documentation Index
> Fetch the complete documentation index at: https://signatureapi-daf4ee54.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve an upload

> Retrieve the metadata for an existing upload by its ID.

Retrieve the metadata for an existing upload. The response includes the file format, size, SHA-256 hash, retention type, and creation time.

<Note>
  This endpoint returns upload metadata only. You cannot download the file content through the API.
</Note>

<Info>
  The Retrieve Upload endpoint replaces the [Get File endpoint](/docs/api/resources/files/get). The File resource is soft-deprecated but remains available for backward compatibility.
</Info>

## Path Parameters

<ParamField path="uploadId" type="string" required>
  The unique identifier of the upload.
</ParamField>

## Returns

Returns a `200 OK` status code and [an upload object](/docs/api/resources/uploads/object) on success, or an [error](/docs/api/errors) otherwise.

<RequestExample>
  ```bash Request theme={null}
  // GET https://api.signatureapi.com/v1/uploads/{uploadId}
  // X-API-Key: key_test_...
  ```
</RequestExample>

<ResponseExample>
  ```json Temporary upload theme={null}
  // HTTP Status 200

  {
    "id": "upl_1sAAaVfabdt0esVjmSTmLA",
    "retention": "temporary",
    "url": "https://api.signatureapi.com/v1/uploads/upl_1sAAaVfabdt0esVjmSTmLA",
    "format": "pdf",
    "sha_256": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
    "size": 102400,
    "created_at": "2025-12-30T12:00:00.000Z",
    "expires_at": "2025-12-31T12:00:00.000Z"
  }
  ```

  ```json Permanent upload theme={null}
  // HTTP Status 200

  {
    "id": "upl_3joO7lxE8HVhOZmkCHFCxK",
    "retention": "permanent",
    "key": "contract-template-v2",
    "url": "https://api.signatureapi.com/v1/uploads/upl_3joO7lxE8HVhOZmkCHFCxK",
    "format": "docx",
    "sha_256": "abcdef0123456789abcdef0123456789abcdef0123456789abcdef0123456789",
    "size": 234567,
    "created_at": "2025-12-30T12:00:00.000Z"
  }
  ```
</ResponseExample>
