# Bar Standards Board Barrister Register Scraper (`nimbryxo-studio/bar-standards-board-barrister-register-scraper`) Actor

Search the Bar Standards Board's official Barristers' Register for England & Wales by name or chambers, filter by practising status, area of practice, or public access, and browse disciplinary findings and suspensions.

- **URL**: https://apify.com/nimbryxo-studio/bar-standards-board-barrister-register-scraper.md
- **Developed by:** [Nimbryxo-studio](https://apify.com/nimbryxo-studio) (community)
- **Categories:** Automation, Lead generation, Other
- **Security:** Limited permissions
- **Stats:** 2 total users, 1 monthly users, 50.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.49 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Bar Standards Board Barrister Register Scraper

Scrape the **Bar Standards Board's** official public register for England & Wales. Search the Barristers' Register by name or chambers, pull the complete authorised-practising register in a single run, browse past disciplinary findings with sanctions, costs and decision documents, check interim suspensions, export BSB-regulated entities, or fetch specific barrister and finding URLs directly. Everything comes from [barstandardsboard.org.uk](https://www.barstandardsboard.org.uk), the statutory regulator of barristers in England and Wales. No login, no cookies, no proxy configuration and no API key are needed.

### What this actor does

- **Six modes:**
  - `authorisedBarristers` — the full authorised-practising register (about 18,700 barristers) from the BSB's own published CSV, with contact details, member status, reserved activities and any current disciplinary finding
  - `search` — live search of the Barristers' Register by barrister name or chambers/organisation name
  - `disciplinaryFindings` — browse the public register of past disciplinary findings, sorted by date or relevance
  - `interimSuspensions` — barristers currently subject to an interim suspension or interim conditions
  - `entities` — BSB-regulated legal-services businesses (authorised bodies, licensed bodies/ABS, and previously-authorised bodies), including their reserved legal activities
  - `byUrl` — fetch one or more barrister-register or disciplinary-finding URLs directly
- **Filters that match the regulator's own register:** practising status, 28 areas of practice, Public Access registration, conduct-of-litigation authorisation, register view (practising vs. sanctioned non-practising)
- **Disciplinary filters:** finding status, sanction type, hearing type, and a decision-date window (past month, past year, or a custom range)
- **Deep profiles:** call date, Inn of Court, practising certificate validity, chambers address and switchboard, other addresses and numbers, rights of audience, areas of practice, other entitlements, youth-courts registration and disciplinary history
- **Decision documents:** finding records include sanction, costs, status and links to published decision/report documents where the BSB provides them
- **Empty fields are always omitted** — every value is real extracted data, never `null`, `N/A` or a placeholder sentence

### Output per barrister (`recordType: "barrister"`)

`search` returns the listing fields plus enrichment from each profile page. `authorisedBarristers` returns the full CSV record, which also carries the address split and member status. Fields the source does not publish for an individual are omitted.

| Field | Description |
|---|---|
| `barristerName` | Full name as published, including title and post-nominal honours where present |
| `title` / `forenames` / `surname` / `honours` | Name parts from the full-register CSV |
| `barristerId` | BSB register ID extracted from the profile URL (search / byUrl only) |
| `barristerUrl` / `sourceUrl` | Canonical register profile URL, or the CSV download URL for full-register records |
| `practisingStatusBadge` | Badge shown on the register, e.g. `Practising`, `Disbarred` |
| `currentPractisingStatus` | `Employed`, `Self Employed`, `Dual Capacity`, `Disbarred`, etc. |
| `memberStatus` | Membership position, e.g. `Tenant`, `Door Tenant`, `Sole Practitioner`, `Manager (BSB Authorised Body)` |
| `dateOfCall` | Month and year called to the Bar |
| `innOfCourt` | Inn of Court |
| `practisingCertificateValid` | Practising certificate validity period |
| `primaryPracticeAddress` | Main chambers / employer address |
| `addressName`, `addressFloorStreet`, `addressTown`, `addressCounty`, `addressPostcode`, `addressCountry` | Address components from the full-register CSV |
| `primaryPracticeSwitchboardNumber` | Main switchboard number |
| `otherPracticeAddresses` | Additional practice addresses listed for the barrister |
| `otherPracticeSwitchboardNumbers` | Additional switchboard numbers |
| `fax` | Fax number, where the BSB publishes one |
| `rightsOfAudience` | Rights of audience granted |
| `publicAccessRegistered` | Whether registered for the Public Access scheme (boolean) |
| `authorisedToConductLitigation` | Whether authorised to conduct litigation (boolean) |
| `areasOfPractice` | Declared areas of practice |
| `otherEntitlements` | Other regulatory entitlements, e.g. probate activities, reserved instrument activities, administration of oaths |
| `youthCourtsRegistered` | Whether registered for youth courts (boolean) |
| `disciplinaryFindings` | List of findings with `findingId`, `findingDate`, `hearingType`, `findingUrl`, `breachDetails`, `offenceDetails`, `sanction`, `costs`, `findingStatus`. `findingDate` is ISO 8601: `YYYY-MM-DD` for full decision dates, `YYYY-MM` for the month-precision summary boxes shown on barrister profiles. The summary boxes themselves carry only date/type/URL/ID; the other finding fields are available in `disciplinaryFindings` and `byUrl` finding records and in CSV-nested findings |
| `registerView` | `practising` or `sanctionedNonPractising` |
| `recordType`, `scrapedAt` | Always present |

### Output per disciplinary finding (`recordType: "disciplinaryFinding"`)

| Field | Description |
|---|---|
| `barristerName` | Barrister subject to the finding |
| `barristerRegisterUrl` / `barristerId` | Link back to the barrister's register entry |
| `findingUrl` / `findingId` / `sourceUrl` | Canonical finding URL and ID |
| `sanction` | Sanction imposed |
| `costs` | Costs order, where published |
| `findingStatus` | `Final`, `Open to Appeal` or `Appeal Pending` |
| `hearingType` | Tribunal / hearing type |
| `findingDate` | Decision date in ISO 8601 (`YYYY-MM-DD`) |
| `currentPractisingStatus`, `dateOfCall`, `innOfCourt` | Barrister's details at the time of the finding |
| `breachDetails` | Rules / Code of Conduct provisions breached |
| `offenceDetails` | Narrative description of the misconduct |
| `documents` | Published decision/report documents as `{documentTitle, documentUrl, documentType}` |

### Output per interim suspension (`recordType: "interimSuspension"`)

| Field | Description |
|---|---|
| `barristerName` | Name of the suspended barrister |
| `details` | Full text of the suspension or interim conditions |
| `sourceUrl` | Link to the listing anchor |
| `recordType`, `scrapedAt` | Always present |

### Output per entity (`recordType: "entity"`)

| Field | Description |
|---|---|
| `entityName` | Name of the BSB-regulated entity |
| `tradingNameOf` | Underlying company name when the entity trades under a different name |
| `entityStatus` | `authorised`, `licensed` or `previouslyAuthorised` |
| `entityType` | Legal structure, e.g. `Limited Liability Partnership`, `Private Limited Company` |
| `authorisationValidFrom` | Date authorisation or licence took effect |
| `renewalDate` | Next renewal date (current entities) |
| `authorisationValidTo` | Date authorisation ended (previously-authorised entities) |
| `practisingAddress` / `practisingAddressSecondary` | Registered practice address(es) |
| `telephone` | Telephone number, where published |
| `managers` | Named managers / partners |
| `headOfLegalPractice` | Head of Legal Practice (HOLP) |
| `headOfFinanceAndAdministration` | Head of Finance and Administration (HOFA) |
| `administrationOfOaths` | Authorised to administer oaths (boolean) |
| `authorisedToConductLitigation` | Authorised to conduct litigation (boolean) |
| `fullRightsOfAudience` | Authorised to exercise full rights of audience (boolean) |
| `probateActivities` | Authorised for probate activities (boolean) |
| `reservedInstrumentActivities` | Authorised for reserved instrument activities (boolean) |
| `approvedTrainingOrganisation` | Approved training organisation (boolean) |
| `immigrationAdvice` | Authorised to undertake immigration advice (boolean) |
| `sourceUrl` | The BSB entities-register workbook URL |
| `recordType`, `scrapedAt` | Always present |

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `mode` | select | `search` | `search` / `authorisedBarristers` / `disciplinaryFindings` / `interimSuspensions` / `entities` / `byUrl` |
| `searchQuery` | string | – | Barrister/chambers query for `search` (required); optional name/chambers filter for `authorisedBarristers`, `disciplinaryFindings` and `entities` |
| `searchField` | select | `name` | Match `searchQuery` against `name` or `organisation` (mode=search and authorisedBarristers) |
| `registerView` | select | `practising` | `practising` or `sanctionedNonPractising` (mode=search) |
| `practisingStatus` | multi-select | – | `Dual Capacity` / `Employed` / `Self Employed` (mode=search, authorisedBarristers) |
| `areasOfPractice` | multi-select | – | Any of 28 practice areas (mode=search, authorisedBarristers) |
| `publicAccessRegistered` | select | `any` | `any` / `yes` / `no` (mode=search, authorisedBarristers) |
| `authorisedToConductLitigation` | select | `any` | `any` / `yes` / `no` (mode=search, authorisedBarristers) |
| `sortOrder` | select | `recent` | `recent` or `relevance` (mode=disciplinaryFindings) |
| `findingStatus` | multi-select | – | `Final` / `Open to Appeal` / `Appeal Pending` (mode=disciplinaryFindings) |
| `disciplinaryActionType` | multi-select | – | `Disbarment` / `Fine` / `Other` / `Suspension` (mode=disciplinaryFindings) |
| `findingType` | multi-select | – | Determination by consent, Disciplinary Tribunal (3/5 person), Visitors Hearing (appeal) (mode=disciplinaryFindings) |
| `findingDateRange` | select | any | `pastMonth` / `pastYear` / `custom` (mode=disciplinaryFindings) |
| `findingDateFrom` / `findingDateTo` | string | – | Custom decision-date boundaries in `YYYY-MM-DD` (findingDateRange=custom) |
| `entityStatus` | multi-select | – | `authorised` / `licensed` / `previouslyAuthorised` (mode=entities) |
| `startUrls` | array | – | Barrister or finding URLs (mode=byUrl) |
| `fetchFullProfile` | boolean | `true` | Fetch each search/finding detail page for extra fields (not used by authorisedBarristers) |
| `maxItems` | integer | `30` | Hard cap on emitted records (1–20,000) |

#### Example: pull the complete authorised-practising register

```json
{
  "mode": "authorisedBarristers",
  "maxItems": 20000
}
```

#### Example: full register filtered to crime barristers with Public Access

```json
{
  "mode": "authorisedBarristers",
  "areasOfPractice": ["crime"],
  "publicAccessRegistered": "yes",
  "maxItems": 500
}
```

#### Example: search barristers at a chambers

```json
{
  "mode": "search",
  "searchQuery": "no5",
  "searchField": "organisation",
  "areasOfPractice": ["crime", "employment"],
  "authorisedToConductLitigation": "yes",
  "maxItems": 50
}
```

#### Example: browse recent disciplinary findings

```json
{
  "mode": "disciplinaryFindings",
  "sortOrder": "recent",
  "maxItems": 50
}
```

#### Example: disbarment or suspension in a custom period

```json
{
  "mode": "disciplinaryFindings",
  "disciplinaryActionType": ["disbarment", "suspension"],
  "findingDateRange": "custom",
  "findingDateFrom": "2020-01-01",
  "findingDateTo": "2020-12-31",
  "maxItems": 50
}
```

#### Example: barristers under interim suspension

```json
{
  "mode": "interimSuspensions",
  "maxItems": 50
}
```

#### Example: currently-authorised BSB entities matching a name

```json
{
  "mode": "entities",
  "searchQuery": "law",
  "entityStatus": ["authorised", "licensed"],
  "maxItems": 200
}
```

#### Example: fetch specific barrister or finding URLs

```json
{
  "mode": "byUrl",
  "startUrls": [
    "https://www.barstandardsboard.org.uk/barristers-register/7C5DCA7B263721A6CB12F687568766BD.html",
    "https://www.barstandardsboard.org.uk/disciplinary_finding/183742.html"
  ]
}
```

### Use cases

- **Due diligence** — verify a barrister's practising status, certificate validity, Inn of Court and disciplinary history before instructing them
- **Legal directories and comparison sites** — import the full authorised-practising register with chambers, contact details and practice areas
- **Compliance monitoring** — track new disciplinary findings, sanctions and interim suspensions as they are published
- **Recruitment and chambers research** — size practice areas, identify Public Access or litigation-authorised barristers, and map chambers
- **Regulatory analytics** — measure the distribution of practising statuses, areas of practice and reserved activities across England & Wales
- **Journalism and legal research** — cross-reference a finding's sanction, costs and published decision documents with case reporting

### Limitations

- The BSB's **Disqualified persons** page is currently empty ("There are currently no persons disqualified"), so it is not exposed as a mode. This is a currently-empty surface, not a proven unparseable page.
- The **full-register CSV** does not publish a barrister profile URL or register ID. Those two fields are available in `search` and `byUrl` records, but not in `authorisedBarristers` records.
- The register's own **date filter** is unreliable and can return the full findings list for any date selected. The actor therefore applies the decision-date window to each finding's actual decision date, so the filter works as expected.
- Historical findings before 2002 are not published by the BSB.
- Some addresses or phone numbers are genuinely unpublished by the BSB for a particular barrister; those fields are omitted rather than invented.

### FAQ

**Is this official data?** Yes. Every record comes from the Bar Standards Board's own public register at barstandardsboard.org.uk, the statutory regulator for barristers in England and Wales.

**What is the difference between the `search` and `authorisedBarristers` modes?** `search` asks the live register for a name or chambers match and can enrich each result from its profile page. `authorisedBarristers` downloads the BSB's published full-register CSV in one request and returns every authorised practising barrister with the complete CSV field set. Use the CSV mode for bulk work and `search` for targeted lookups.

**What is the difference between `practising` and `sanctionedNonPractising`?** `practising` covers currently authorised barristers who hold a practising certificate. `sanctionedNonPractising` covers disbarred or unregistered barristers who have a current disciplinary finding.

**Why do some barrister records have fewer fields than others?** The register only publishes certain details for certain statuses. For example, a disbarred barrister has no current chambers address, so that field is omitted rather than shown as empty.

**Does `searchQuery` support partial matches?** Yes. The register performs a substring match on names or chambers/organisation names, the same as the site's own search box. The full-register mode applies the same partial-match rule to the CSV.

**Can I get every barrister in one run?** Yes. Use `mode: "authorisedBarristers"` and set `maxItems` to `20000`, the current maximum and above the register size (18,739 rows at the latest verification).

**How current is the register?** The BSB updates the register continuously, with up to an hour of processing lag. The full-register CSV is regenerated by the BSB; `sourceUrl` identifies the current downloadable asset (the URL itself does not encode a snapshot date).

**Can I look up a barrister when I only have a URL?** Yes. Use `mode: "byUrl"` with full barrister-register or disciplinary_finding URLs.

**Are decision documents always available?** No. The BSB publishes a decision or report document for some findings only. When a document is published, it appears in `documents`; otherwise the field is omitted.

**Do I need to set up a proxy?** No. The actor connects to the public register directly. Just fill in the input and run it.

# Actor input Schema

## `mode` (type: `string`):

What to fetch from the Bar Standards Board register.

## `searchQuery` (type: `string`):

For mode=search: barrister name or chambers/organisation name (required). For mode=authorisedBarristers: optional name/chambers filter over the full register. For mode=disciplinaryFindings: optional barrister name filter — leave empty to browse all findings. For mode=entities: optional entity/trading name filter — leave empty to include all entities.

## `searchField` (type: `string`):

Whether `searchQuery` matches the barrister's name or their chambers/organisation (mode=search and mode=authorisedBarristers).

## `registerView` (type: `string`):

`Practising` = currently authorised practising barristers. `Sanctioned non-practising` = barristers disbarred or otherwise sanctioned who are no longer authorised to practise.

## `practisingStatus` (type: `array`):

Restrict to barristers with these practising statuses. Leave empty for all statuses. Applies to mode=search (practising view only) and mode=authorisedBarristers.

## `areasOfPractice` (type: `array`):

Restrict to barristers practising in ANY of these areas of law. Leave empty for all areas. Applies to mode=search (practising view only) and mode=authorisedBarristers.

## `publicAccessRegistered` (type: `string`):

Filter by whether the barrister is registered to accept work directly from the public (Public Access scheme). Applies to mode=search (practising view only) and mode=authorisedBarristers.

## `authorisedToConductLitigation` (type: `string`):

Filter by whether the barrister is authorised to conduct litigation. Applies to mode=search (practising view only) and mode=authorisedBarristers.

## `sortOrder` (type: `string`):

How to order the disciplinary findings listing.

## `findingStatus` (type: `array`):

Restrict to disciplinary findings with these statuses. Leave empty for all statuses.

## `disciplinaryActionType` (type: `array`):

Restrict to findings with ANY of these sanction types. Leave empty for all types.

## `findingType` (type: `array`):

Restrict to findings from ANY of these hearing types. Leave empty for all types.

## `findingDateRange` (type: `string`):

Restrict findings to a decision-date window. `custom` uses `findingDateFrom`/`findingDateTo`. The window is applied to each finding's decision date.

## `findingDateFrom` (type: `string`):

Start of the custom decision-date range, format `YYYY-MM-DD` (e.g. `2020-01-01`).

## `findingDateTo` (type: `string`):

End of the custom decision-date range, format `YYYY-MM-DD` (e.g. `2020-12-31`).

## `entityStatus` (type: `array`):

Restrict to BSB-regulated entities with these authorisation statuses. Leave empty for all statuses.

## `startUrls` (type: `array`):

Full barstandardsboard.org.uk barrister-register or disciplinary_finding URLs to fetch directly.

## `fetchFullProfile` (type: `boolean`):

For mode=search and mode=disciplinaryFindings: fetch each record's full detail page for additional fields (chambers address, areas of practice, rights of audience, breach/offence details, etc). Uses one extra HTTP request per record. Not used by mode=authorisedBarristers (the CSV already contains the full record).

## `maxItems` (type: `integer`):

Hard cap on the number of records emitted in this run. The full authorised-practising register currently has about 18,700 rows.

## Actor input object example

```json
{
  "mode": "search",
  "searchQuery": "smith",
  "searchField": "name",
  "registerView": "practising",
  "practisingStatus": [],
  "areasOfPractice": [],
  "publicAccessRegistered": "any",
  "authorisedToConductLitigation": "any",
  "sortOrder": "recent",
  "findingStatus": [],
  "disciplinaryActionType": [],
  "findingType": [],
  "findingDateRange": "",
  "entityStatus": [],
  "startUrls": [
    "https://www.barstandardsboard.org.uk/barristers-register/7C5DCA7B263721A6CB12F687568766BD.html"
  ],
  "fetchFullProfile": false,
  "maxItems": 1
}
```

# Actor output Schema

## `barristers` (type: `string`):

Dataset containing all scraped barrister, disciplinary-finding, interim-suspension and entity records.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "search",
    "searchQuery": "smith",
    "searchField": "name",
    "registerView": "practising",
    "practisingStatus": [],
    "areasOfPractice": [],
    "publicAccessRegistered": "any",
    "authorisedToConductLitigation": "any",
    "sortOrder": "recent",
    "findingStatus": [],
    "disciplinaryActionType": [],
    "findingType": [],
    "findingDateRange": "",
    "entityStatus": [],
    "startUrls": [
        "https://www.barstandardsboard.org.uk/barristers-register/7C5DCA7B263721A6CB12F687568766BD.html"
    ],
    "fetchFullProfile": false,
    "maxItems": 1
};

// Run the Actor and wait for it to finish
const run = await client.actor("nimbryxo-studio/bar-standards-board-barrister-register-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "search",
    "searchQuery": "smith",
    "searchField": "name",
    "registerView": "practising",
    "practisingStatus": [],
    "areasOfPractice": [],
    "publicAccessRegistered": "any",
    "authorisedToConductLitigation": "any",
    "sortOrder": "recent",
    "findingStatus": [],
    "disciplinaryActionType": [],
    "findingType": [],
    "findingDateRange": "",
    "entityStatus": [],
    "startUrls": ["https://www.barstandardsboard.org.uk/barristers-register/7C5DCA7B263721A6CB12F687568766BD.html"],
    "fetchFullProfile": False,
    "maxItems": 1,
}

# Run the Actor and wait for it to finish
run = client.actor("nimbryxo-studio/bar-standards-board-barrister-register-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "search",
  "searchQuery": "smith",
  "searchField": "name",
  "registerView": "practising",
  "practisingStatus": [],
  "areasOfPractice": [],
  "publicAccessRegistered": "any",
  "authorisedToConductLitigation": "any",
  "sortOrder": "recent",
  "findingStatus": [],
  "disciplinaryActionType": [],
  "findingType": [],
  "findingDateRange": "",
  "entityStatus": [],
  "startUrls": [
    "https://www.barstandardsboard.org.uk/barristers-register/7C5DCA7B263721A6CB12F687568766BD.html"
  ],
  "fetchFullProfile": false,
  "maxItems": 1
}' |
apify call nimbryxo-studio/bar-standards-board-barrister-register-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,nimbryxo-studio/bar-standards-board-barrister-register-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/5BKeN2aUL19MTrry1/builds/pxEtWDylYNl6lItlw/openapi.json
