Get Upload Status
curl --request GET \
--url https://api.muvi.video/v1/uploads/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.muvi.video/v1/uploads/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.muvi.video/v1/uploads/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"filename": "<string>",
"contentType": "<string>",
"fileUrl": "<string>",
"status": "<string>",
"createdAt": "<string>",
"expiresAt": "<string>"
}File Uploads
Get Upload Status
Check the status of a temporary file upload.
GET
/
v1
/
uploads
/
{id}
Get Upload Status
curl --request GET \
--url https://api.muvi.video/v1/uploads/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.muvi.video/v1/uploads/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.muvi.video/v1/uploads/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"filename": "<string>",
"contentType": "<string>",
"fileUrl": "<string>",
"status": "<string>",
"createdAt": "<string>",
"expiresAt": "<string>"
}Authentication
This endpoint requires an API key.Authorization: Bearer YOUR_API_KEY
Path Parameters
string
required
The upload ID returned from the presign endpoint.
Response
string
Upload identifier.
string
Original filename.
string
MIME type of the uploaded file.
string
CDN URL of the file.
string
Upload status:
pending (file available) or expired (file deleted).string
ISO 8601 timestamp of when the upload was created.
string
ISO 8601 timestamp of when the file will be deleted.
Error Codes
| Code | Description |
|---|---|
NOT_FOUND | Upload not found or does not belong to your account. |
Examples
curl https://api.muvi.video/v1/uploads/3f44e3c6-acd9-4cc3-a91b-e63ec517b383 \
-H "Authorization: Bearer YOUR_API_KEY"
import requests
response = requests.get(
"https://api.muvi.video/v1/uploads/3f44e3c6-acd9-4cc3-a91b-e63ec517b383",
headers={"Authorization": "Bearer YOUR_API_KEY"}
)
data = response.json()["data"]
print(f"Status: {data['status']}")
print(f"File URL: {data['fileUrl']}")
print(f"Expires at: {data['expiresAt']}")
const response = await fetch(
"https://api.muvi.video/v1/uploads/3f44e3c6-acd9-4cc3-a91b-e63ec517b383",
{
headers: { "Authorization": "Bearer YOUR_API_KEY" }
}
);
const { data } = await response.json();
console.log(`Status: ${data.status}`);
console.log(`File URL: ${data.fileUrl}`);
Example Response
{
"success": true,
"data": {
"id": "3f44e3c6-acd9-4cc3-a91b-e63ec517b383",
"filename": "my-image.png",
"contentType": "image/png",
"fileUrl": "https://assetsv1.cdn.muvi.video/temp/user_abc123/uuid_my-image.png",
"status": "pending",
"createdAt": "2026-02-25T10:42:21.949Z",
"expiresAt": "2026-02-25T11:42:21.949Z"
},
"requestId": "req_abc123"
}
