---
title: "KYB-check a list"
method: POST
path: "/lists/{id}/kyb"
tags: ["Lists"]
---

# KYB-check a list

`POST /lists/{id}/kyb`

## Request

- Base URL: `https://api.companystack.co.uk`
- URL: `https://api.companystack.co.uk/lists/{id}/kyb`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`

Queues a KYB check (as POST /kyb/check, with your reference for each company) for every company on the list, or those in `company_numbers`. Checks count against a monthly allowance (web app: Pro 250, Team 1,000; paid API plans: your watchlist cap); anything over it is returned in `skipped`. Poll GET /lists/{id}/jobs/{jobId}. Each stored check has a PDF certificate at /kyb/checks/{check_id}.pdf.

## Path parameters

- `id` integer, required

## Request body

- object
  - `company_numbers` string[]: Omit for every company on the list

## Response `202`

Queued

## Other responses

- `401`: API key missing, malformed or revoked
- `403`: Plan limit or feature not included
- `429`: Per-minute or per-day limit reached (`code: rate_limited`, `window: minute|day`). Wait `Retry-After` seconds; when both windows are full the day is reported. A refused request does not count against either limit. A bulk lookup (`POST /company/bulk`) counts each company number in it as one request, so one that is more than you have left is refused whole, and the body adds `requested` and `fits`.

---

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