> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pruva.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List verifications

> GET /v1/verifications pages through your organization's checks.

<div>
  `GET` `/v1/verifications`
</div>

Returns your organization's verifications, most recent first, with paging. Filter by scope or status. Listing is never charged.

## Query parameters

<ParamField query="page" default="1" type="integer">
  The page to return, starting at 1.
</ParamField>

<ParamField query="pageSize" default="20" type="integer">
  Results per page, from 1 to 100. Values above 100 are capped at 100.
</ParamField>

<ParamField query="scope" type="string">
  Return only checks for this scope, for example `nin`.
</ParamField>

<ParamField query="status" type="string">
  Return only checks with this status: `found`, `not_found`, or `failed`.
</ParamField>

## Request

<CodeGroup>
  ```bash cURL theme={null}
  curl "https://api.pruva.africa/v1/verifications?scope=nin&status=found&page=1&pageSize=20" \
    -H "X-Pruva-Key: pruva_live_YOUR_KEY"
  ```

  ```javascript Node theme={null}
  const params = new URLSearchParams({ scope: "nin", status: "found", page: "1", pageSize: "20" });
  const res = await fetch(`https://api.pruva.africa/v1/verifications?${params}`, {
    headers: { "X-Pruva-Key": "pruva_live_YOUR_KEY" },
  });

  const { data, meta } = await res.json();
  ```

  ```python Python theme={null}
  import requests

  res = requests.get(
      "https://api.pruva.africa/v1/verifications",
      headers={"X-Pruva-Key": "pruva_live_YOUR_KEY"},
      params={"scope": "nin", "status": "found", "page": 1, "pageSize": 20},
  )

  body = res.json()
  data, meta = body["data"], body["meta"]
  ```
</CodeGroup>

## Response

Returns `200` with an array of verifications in `data`, and paging in `meta`.

```json theme={null}
{
  "status": true,
  "data": [
    {
      "reference": "43817179a3dc8c341d358432b0590924",
      "scope": "nin",
      "status": "found",
      "priceKobo": 5000,
      "charged": true,
      "createdAt": "2026-07-27T08:50:00+01:00"
    }
  ],
  "meta": {
    "total": 128,
    "page": 1,
    "pageSize": 20,
    "totalPages": 7
  }
}
```

### Meta fields

<ResponseField name="total" type="integer">
  Total verifications matching the filters.
</ResponseField>

<ResponseField name="page" type="integer">
  The page returned.
</ResponseField>

<ResponseField name="pageSize" type="integer">
  Results per page.
</ResponseField>

<ResponseField name="totalPages" type="integer">
  Total pages available for these filters.
</ResponseField>

## Paging

Request pages in order until `page` reaches `totalPages`. Keep the same filters on every request in a run, since changing them changes `total` and therefore the page boundaries.
