---
title: "List upload sessions"
method: GET
path: "/api/v1/user/projects/{projectId}/upload-sessions"
tags: ["Upload Sessions"]
---

# List upload sessions

`GET /api/v1/user/projects/{projectId}/upload-sessions`

## Request

- Base URL: `https://app.gaffer.sh`
- URL: `https://app.gaffer.sh/api/v1/user/projects/{projectId}/upload-sessions`
- Auth: one of:
  - API key in header `X-API-Key`
  - API key in header `X-API-Key`
  - HTTP bearer

Lists upload sessions for a project with optional filtering by commit or branch.
Use this to check if CI results have been uploaded and their processing status.

## Path parameters

- `projectId` string, required

## Query parameters

- `commitSha` string
- `branch` string
- `limit` integer
- `offset` integer

## Response `200`

Paginated list of upload sessions

- UploadSessionsResponse
  - `sessions` UploadSessionSummary[], required
    - `id` string, required
    - `projectId` string, required
    - `uniqueId` string, required
    - `tags` object, nullable
    - `commitSha` string, nullable
    - `branch` string, nullable
    - `processingStatus` 'pending' | 'processing' | 'completed' | 'error', required: Current processing status
    - `pendingFileCount` integer, required: Number of files still being processed
    - `failedFileCount` integer, required: Number of files that failed processing
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
  - `pagination` Pagination, required
    - `limit` integer, required
    - `offset` integer, required
    - `total` integer, required
    - `hasMore` boolean, required

## Other responses

- `400`: Invalid request parameters
- `401`: Missing or invalid API key
- `404`: Resource not found

---

[API](https://skmtc.dev/gaffer/apis/gaffer-api.md) · [All operations](https://skmtc.dev/gaffer/apis/gaffer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gaffer/apis/gaffer-api/revisions/d742ab303118?raw)
