# Get a CV-screening batch

Batch processing status plus per-member screening results. Scope: cv-screening:read.

Returns a CV-screening batch's **processing status** together with its per-member results (each member uses the [potential-candidate shape](/docs/api/pipeline/sourcing-list/)). **Scope:** `cv-screening:read`. Only batch members linked to an organization the key can see are counted and returned; a batch with no visible members returns `404`.

## Path parameters

| Parameter | Type | Description |
| --- | --- | --- |
| `batchId` | string | The CV-screening batch id. |

## Query parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `page` | integer | No | 0-indexed page of members. Default `0`. |
| `pageSize` | integer | No | Members per page (max 100). Default `20`. |

## Example request

```bash
curl https://app.talent-ray.com/api/v1/cv-screening/batches/batch_2026_06_01 \
  -H "Authorization: Bearer tr_YOUR_KEY"
```

## Response

`200 OK`

```json
{
  "batchId": "batch_2026_06_01",
  "status": "completed",
  "totalCandidates": 25,
  "completedCandidates": 25,
  "processingCandidates": 0,
  "data": [
    {
      "id": "pc_1",
      "fullName": "Sam Lee",
      "email": "sam.cv@example.com",
      "contactEmail": null,
      "phone": null,
      "status": "parsed",
      "skills": ["python"],
      "summary": null,
      "candidateId": null,
      "organizations": [ { "organizationId": "org_acme", "status": "Pool" } ],
      "roles": [],
      "createdAt": "2026-06-01T10:00:00Z",
      "updatedAt": "2026-06-01T10:30:00Z"
    }
  ],
  "pagination": { "page": 0, "pageSize": 20, "totalCount": 25, "totalPages": 2 }
}
```

`status` is `processing` while any member is still being processed, otherwise `completed`. Poll this endpoint after an upload to track completion.

## Status codes

| Status | Meaning |
| --- | --- |
| `200` | Success. |
| `401` | No valid API key. |
| `403` | `insufficient_scope` — the key lacks `cv-screening:read`. |
| `404` | Unknown batch, or no members visible to the key. |
| `429` | Rate limit exceeded. |