---
title: "Get uploaded billing file status"
method: GET
path: "/v1/org/{org_id}/uploads/{upload_id}"
tags: ["Uploads"]
---

# Get uploaded billing file status

`GET /v1/org/{org_id}/uploads/{upload_id}`

Returns metadata and upload status for a partner API upload. Clients can poll this endpoint until upload_status is COMPLETE, then pass the upload ID to the savings-estimate operation.

## Response `200`

OK

- PublicUpload
  - `id` string, uuid, required
  - `created_at` string, date-time, required
  - `org_id` string, required
  - `file_name` string, required
  - `content_type` string, required
  - `size_bytes` integer, required
  - `description` string, nullable, required
  - `upload_status` 'PENDING' | 'PROCESSING' | 'COMPLETE' | 'ERROR', required
  - `source` 'agent_upload' | 'attachment' | 'partner_api', required
  - `detected_type` string, nullable, required
  - `available_actions` string[]

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `405` — Method not allowed
- `409` — Conflict
- `500` — Internal server error
- `default` — Default error response

---

[API](https://skmtc.net/archera/apis/archera-ai-api.md) · [All operations](https://skmtc.net/archera/apis/archera-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/archera/archera-ai-api/versions/ed4f8fa35f31/schema)
