---
title: "Get file upload status (forms engine)"
method: GET
path: "/file/{uploadId}"
tags: ["Status", "Forms"]
---

# Get file upload status (forms engine)

`GET /file/{uploadId}`

## Request

- Base URL: `http://localhost:3000`
- URL: `http://localhost:3000/file/{uploadId}`
- Auth: API key in cookie `session`

Check file upload status for forms engine integration

## Path parameters

- `uploadId` string, uuid, required

## Response `200`

File upload status

- UploadStatusResponse
  - `success` boolean, required
  - `uploadId` string, uuid, required
  - `status` 'awaiting_callback' | 'callback_received' | 'completed' | 'transfer_failed' | 'quarantined' | 'buffer_missing': Current status of the upload
  - `originalFilename` string: Original user filename
  - `filename` string: System filename with timestamp
  - `originalSpreadsheetName` string: Timestamped spreadsheet filename
  - `timestamp` string, date-time
  - `virusScanStatus` 'clean' | 'infected' | 'pending': Virus scan result
  - `azureTransferred` boolean: Whether file was transferred to Azure
  - `azureBlobName` string: Blob name in Azure Storage
  - `azureUrl` string, uri: URL to file in Azure Blob Storage
  - `azureJsonBlobName` string: JSON blob name (for form submissions)
  - `azureJsonUrl` string, uri: URL to JSON file in Azure Storage
  - `transferError` string: Error message if transfer failed
  - `processedAt` string, date-time: When processing completed
  - `formData` object: Form submission metadata
    - `formId` string
    - `submissionId` string

## Other responses

- `404`: Resource not found
- `500`: Internal server error

---

[API](https://skmtc.dev/defra/apis/apha-surveillance-data-submission-portal-api.md) - [All operations](https://skmtc.dev/defra/apis/apha-surveillance-data-submission-portal-api/llms.txt) - [OpenAPI document](https://skmtc.dev/defra/apis/apha-surveillance-data-submission-portal-api/revisions/592deaf8edd7?raw)
