# Companies House Scraper — UK Company Data, Officers & SIC Codes (`memo23/companies-house-scraper`) Actor

Turn Companies House into structured UK company data — no API key, no login. Search 5M+ companies by keyword and filter by status, type, SIC code, location or incorporation date. Each row carries officers, filing dates and registered address. Billed per result

- **URL**: https://apify.com/memo23/companies-house-scraper.md
- **Developed by:** [Muhamed Didovic](https://apify.com/memo23) (community)
- **Categories:** Lead generation, AI, Agents
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Companies House Scraper

Turn the UK Companies House register — 5M+ live companies — into structured data. Search by keyword and filter by status, company type, SIC code, location or incorporation date, then get one clean row per company with **company number, status, registered address, SIC codes, filing dates, and full officer records**. Reads the official public register directly — **no API key, no login**. Billed per result.

#### How it works

![How Companies House Scraper works](https://raw.githubusercontent.com/muhamed-didovic/muhamed-didovic.github.io/main/assets/how-it-works-companies-house.png)

#### ✨ Why use this scraper?

- **No API key required** — the official Companies House REST API needs a registered key with rate limits; this actor reads the public register directly, so it works the moment you hit Run.
- **Full officer records** — directors and secretaries with role, appointment/resignation dates, month/year of birth, nationality, country of residence and correspondence address.
- **Rich search filters** — company status, type, SIC code, registered-office location and incorporation date range, combined in one run.
- **Official, authoritative data** — straight from the UK government register, not a stale third-party mirror.
- **Structured, stable fields** — dates normalised to ISO (`2022-05-14`), SIC codes split into code + description, one row per company.
- **Deduplicated** — each company appears once, even across overlapping keywords and result pages.

#### 🎯 Use cases

| Who | What they do with it |
|---|---|
| Sales / lead-gen teams | Build B2B prospect lists filtered by industry (SIC), location and company age |
| KYC / compliance | Verify company status, incorporation date, officers and registered address |
| Researchers & analysts | Map company formation trends by SIC code, region or date range |
| Recruiters | Find directors and decision-makers by company or sector |
| Data teams | Enrich CRM records with authoritative company numbers, status and filing dates |

#### 📥 Supported inputs

| Input | Example | Behaviour |
|---|---|---|
| Search keyword | `packaging` | Runs an advanced search on the company name, pages through results |
| Search URL | `https://find-and-update.company-information.service.gov.uk/search/companies?q=solar` | Query is extracted and run as a keyword search |
| Company profile URL | `.../company/09403356` | That company is scraped directly |
| Bare company number | `09403356`, `SC123456` | Scraped directly |

**Not supported:** filing-document downloads (PDFs), charges/mortgages detail, and the officer-appointments cross-index — this actor covers the company record, its SIC/filing metadata, officers and PSCs.

#### 🔄 How it works

1. **Classify input** — keywords, URLs and bare company numbers are sorted into searches vs direct fetches.
2. **Search** — each keyword runs the GOV.UK advanced search with your filters, walking result pages (`?page=N`).
3. **Dedupe** — companies are deduplicated by company number across pages and keywords.
4. **Parse** — each company's overview page yields status, type, dates, SIC codes and registered address; the officers page (and optionally PSC page) is fetched in parallel.
5. **Push** — the merged row lands in the dataset; export as JSON, CSV, Excel or via API.

#### ⚙️ Input parameters

| Field | Type | Default | Description |
|---|---|---|---|
| `searchQueries` | array | `["packaging"]` | Keywords matched against company name |
| `startUrls` | array | `[]` | Search URLs, company profile URLs, or bare company numbers |
| `status` | array | `["active"]` | active, dissolved, liquidation, administration, … |
| `companyType` | array | `[]` (all) | ltd, plc, llp, limited-partnership, community-interest-company, … |
| `sicCodes` | array | `[]` (all) | 4–5 digit SIC codes, e.g. 62012 |
| `location` | string | — | Registered office address contains this (town / postcode) |
| `incorporatedFrom` / `incorporatedTo` | string | — | Incorporation date range, YYYY-MM-DD |
| `includeOfficers` | boolean | `true` | Fetch each company's officers page |
| `includePscs` | boolean | `false` | Fetch each company's persons-with-significant-control page |
| `maxItems` | integer | `1000` | Hard cap on rows collected |
| `maxConcurrency` | integer | `10` | Companies processed in parallel |
| `proxy` | object | Apify residential (GB) | Proxy settings |

#### 📊 Output overview

One row per company. Every row carries the register record (number, name, status, type, incorporation date, registered office address, SIC codes, previous names, accounts + confirmation-statement dates). With `includeOfficers` on (default), an `officers` array is merged in; with `includePscs` on, a `pscs` array too. Fields the register doesn't provide are emitted as `null` (or `[]`), so your column layout is stable across runs.

#### 📦 Output sample

```json
{
  "type": "company",
  "source": "companies-house",
  "companyNumber": "14107361",
  "companyName": "TOTAL PACKAGING SOLUTIONS WORLDWIDE LTD",
  "profileUrl": "https://find-and-update.company-information.service.gov.uk/company/14107361",
  "companyStatus": "Active",
  "companyType": "Private limited Company",
  "incorporatedOn": "2022-05-14",
  "dissolvedOn": null,
  "registeredOfficeAddress": "Tythe Barn High Street, Edlesborough, Dunstable, England, LU6 2HS",
  "sicCodes": [{ "code": "82920", "description": "Packaging activities" }],
  "previousNames": [],
  "accountsNextDue": "2026-05-31",
  "confirmationStatementNextDue": "2027-05-13",
  "officers": [
    {
      "name": "WESTWOOD, Matthew Jolyon",
      "role": "Director",
      "status": "Active",
      "appointedOn": "2022-05-14",
      "resignedOn": null,
      "dateOfBirth": "July 1969",
      "nationality": "British",
      "countryOfResidence": "England",
      "correspondenceAddress": "Tythe Barn, High Street, Edlesborough, Dunstable, England, LU6 2HS"
    }
  ],
  "scrapedAt": "2026-07-17T15:21:00.000Z"
}
````

#### 🗂 Key output fields

| Group | Fields |
|---|---|
| Identity | `companyNumber`, `companyName`, `profileUrl`, `previousNames[]` |
| Status | `companyStatus`, `companyType`, `incorporatedOn`, `dissolvedOn` |
| Location | `registeredOfficeAddress` |
| Classification | `sicCodes[]` (code + description) |
| Filing | `accountsNextDue`, `accountsLastMadeUpTo`, `confirmationStatementNextDue`, `confirmationStatementLastMadeUpTo` |
| People | `officers[]` (name, role, status, appointed/resigned, DOB, nationality, country of residence, address); `pscs[]` when enabled |
| Meta | `scrapedAt` |

#### ❓ FAQ

**Do I need a Companies House API key?**
No. The official REST API needs a registered key and enforces rate limits; this actor reads the public register front end directly, so no key or account is required.

**Does every company have officers?**
Most limited companies do. Some entity types — Scottish Limited Partnerships, for example — don't list officers in the same way, so their `officers` array may be empty. That reflects the register, not a scrape failure.

**Can I filter by industry?**
Yes — pass one or more SIC codes. A company is returned if it lists that SIC among its (possibly several) codes.

**Can I scrape one specific company?**
Yes — paste its company number (`09403356`) or profile URL into `startUrls`. You get the full record without running a search.

**Is the date of birth the full date?**
No. Companies House only publishes an officer's month and year of birth (e.g. `July 1969`); the day is never public.

#### 💬 Support

- Found a bug or need a field added? Open an issue on the actor's [Issues tab](https://apify.com/memo23/companies-house-scraper/issues).
- Direct contact: <muhamed.didovic@gmail.com>

#### 🛠 Additional services

- Custom output shape, additional fields (charges, filing history), or one-off datasets: <muhamed.didovic@gmail.com>
- Need a similar scraper for another company registry (OpenCorporates, Irish CRO, etc.)? Drop an email.
- For API access (no Apify fee, just a usage fee for the API): <muhamed.didovic@gmail.com>

#### 🔎 Explore more scrapers

If this Companies House Scraper was useful, see other scrapers and actors at [memo23's Apify profile](https://apify.com/memo23) — covering B2B directories, job boards, real estate, social media, and more. Pairs well with the [Europages Scraper](https://apify.com/memo23/europages-scraper) for a full UK/EU B2B data stack.

***

### ⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Companies House, GOV.UK, or the UK Government. All trademarks mentioned are the property of their respective owners.

The scraper accesses only the publicly available company register at find-and-update.company-information.service.gov.uk — no authenticated endpoints or content behind a login. Company data on the register (including officer names, month/year of birth and correspondence addresses) is published by Companies House as public record. Users are responsible for ensuring their use complies with Companies House's terms of use, applicable data-protection law (UK GDPR, etc.) — particularly when processing officers' personal data — and any contractual obligations of their own organisation.

***

### SEO Keywords

companies house scraper, scrape companies house, companies house api, uk company data scraper, company register scraper, uk company information, company officers scraper, director data uk, sic code search, uk business data, company number lookup, b2b lead generation uk, kyc company data, incorporation data uk, registered office address scraper, dissolved companies data, uk company house export, opencorporates alternative, company filing dates, persons with significant control scraper

# Actor input Schema

## `searchQueries` (type: `array`):

Keywords to search on Companies House, matched against the company name (e.g. 'packaging', 'solar', 'consulting'). Each keyword collects up to Maximum items rows.

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

Search URLs (https://find-and-update.company-information.service.gov.uk/search/companies?q=...), advanced-search URLs, company profile URLs (/company/{number}), or bare company numbers like 09403356 — all auto-classified.

## `status` (type: `array`):

Restrict to these statuses. Allowed: active, dissolved, open, closed, converted-closed, receivership, liquidation, administration, insolvency-proceedings, voluntary-arrangement. Leave empty for all.

## `companyType` (type: `array`):

Restrict to these types. Allowed: ltd, plc, llp, limited-partnership, private-unlimited, community-interest-company, royal-charter, private-limited-guarant-nsc, and more. Leave empty for all.

## `sicCodes` (type: `array`):

Restrict to these Standard Industrial Classification codes (4–5 digit, e.g. 62012 for business software development). Leave empty for all industries.

## `location` (type: `string`):

Registered office address contains this text — a town, region or postcode (e.g. 'Manchester', 'EC1'). Leave empty for anywhere in the UK.

## `incorporatedFrom` (type: `string`):

Only companies incorporated on or after this date. Format YYYY-MM-DD.

## `incorporatedTo` (type: `string`):

Only companies incorporated on or before this date. Format YYYY-MM-DD.

## `includeOfficers` (type: `boolean`):

When enabled, each company's officers page is fetched to add an `officers` array — name, role, appointment/resignation dates, date of birth, nationality, country of residence, and correspondence address. Adds one HTTP call per company.

## `includePscs` (type: `boolean`):

When enabled, each company's PSC page is fetched to add a `pscs` array (people/entities with significant control). Adds one HTTP call per company.

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

Hard cap on the number of company rows collected across all keywords. Use this to limit billing.

## `maxConcurrency` (type: `integer`):

Maximum number of companies processed in parallel.

## `minConcurrency` (type: `integer`):

Minimum number of requests processed in parallel.

## `maxRequestRetries` (type: `integer`):

Number of retries before a failed request is given up.

## `proxy` (type: `object`):

Companies House is a public GOV.UK service reachable without a proxy. A UK proxy is optional; residential is the safe default for large runs.

## Actor input object example

```json
{
  "searchQueries": [
    "packaging"
  ],
  "startUrls": [],
  "status": [
    "active"
  ],
  "companyType": [],
  "sicCodes": [],
  "includeOfficers": true,
  "includePscs": false,
  "maxItems": 1000,
  "maxConcurrency": 10,
  "minConcurrency": 1,
  "maxRequestRetries": 5,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "GB"
  }
}
```

# 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 = {
    "searchQueries": [
        "packaging"
    ],
    "startUrls": [],
    "status": [
        "active"
    ],
    "companyType": [],
    "sicCodes": [],
    "proxy": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "GB"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("memo23/companies-house-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 = {
    "searchQueries": ["packaging"],
    "startUrls": [],
    "status": ["active"],
    "companyType": [],
    "sicCodes": [],
    "proxy": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "GB",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("memo23/companies-house-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "searchQueries": [
    "packaging"
  ],
  "startUrls": [],
  "status": [
    "active"
  ],
  "companyType": [],
  "sicCodes": [],
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "GB"
  }
}' |
apify call memo23/companies-house-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=memo23/companies-house-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Companies House Scraper — UK Company Data, Officers & SIC Codes",
        "description": "Turn Companies House into structured UK company data — no API key, no login. Search 5M+ companies by keyword and filter by status, type, SIC code, location or incorporation date. Each row carries officers, filing dates and registered address. Billed per result",
        "version": "0.0",
        "x-build-id": "dm5vrwYGC8GvIcgsE"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/memo23~companies-house-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-memo23-companies-house-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/memo23~companies-house-scraper/runs": {
            "post": {
                "operationId": "runs-sync-memo23-companies-house-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/memo23~companies-house-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-memo23-companies-house-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "searchQueries": {
                        "title": "Search keywords",
                        "type": "array",
                        "description": "Keywords to search on Companies House, matched against the company name (e.g. 'packaging', 'solar', 'consulting'). Each keyword collects up to Maximum items rows.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "startUrls": {
                        "title": "Companies House URLs or company numbers (optional)",
                        "type": "array",
                        "description": "Search URLs (https://find-and-update.company-information.service.gov.uk/search/companies?q=...), advanced-search URLs, company profile URLs (/company/{number}), or bare company numbers like 09403356 — all auto-classified.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "title": "Company status",
                        "type": "array",
                        "description": "Restrict to these statuses. Allowed: active, dissolved, open, closed, converted-closed, receivership, liquidation, administration, insolvency-proceedings, voluntary-arrangement. Leave empty for all.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "companyType": {
                        "title": "Company type",
                        "type": "array",
                        "description": "Restrict to these types. Allowed: ltd, plc, llp, limited-partnership, private-unlimited, community-interest-company, royal-charter, private-limited-guarant-nsc, and more. Leave empty for all.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "sicCodes": {
                        "title": "SIC codes",
                        "type": "array",
                        "description": "Restrict to these Standard Industrial Classification codes (4–5 digit, e.g. 62012 for business software development). Leave empty for all industries.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "location": {
                        "title": "Registered office location",
                        "type": "string",
                        "description": "Registered office address contains this text — a town, region or postcode (e.g. 'Manchester', 'EC1'). Leave empty for anywhere in the UK."
                    },
                    "incorporatedFrom": {
                        "title": "Incorporated from (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only companies incorporated on or after this date. Format YYYY-MM-DD."
                    },
                    "incorporatedTo": {
                        "title": "Incorporated to (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only companies incorporated on or before this date. Format YYYY-MM-DD."
                    },
                    "includeOfficers": {
                        "title": "Include officers (directors + secretaries)",
                        "type": "boolean",
                        "description": "When enabled, each company's officers page is fetched to add an `officers` array — name, role, appointment/resignation dates, date of birth, nationality, country of residence, and correspondence address. Adds one HTTP call per company.",
                        "default": true
                    },
                    "includePscs": {
                        "title": "Include persons with significant control (PSCs)",
                        "type": "boolean",
                        "description": "When enabled, each company's PSC page is fetched to add a `pscs` array (people/entities with significant control). Adds one HTTP call per company.",
                        "default": false
                    },
                    "maxItems": {
                        "title": "Maximum items to scrape",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Hard cap on the number of company rows collected across all keywords. Use this to limit billing.",
                        "default": 1000
                    },
                    "maxConcurrency": {
                        "title": "Max concurrency",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of companies processed in parallel.",
                        "default": 10
                    },
                    "minConcurrency": {
                        "title": "Min concurrency",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Minimum number of requests processed in parallel.",
                        "default": 1
                    },
                    "maxRequestRetries": {
                        "title": "Max request retries",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Number of retries before a failed request is given up.",
                        "default": 5
                    },
                    "proxy": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Companies House is a public GOV.UK service reachable without a proxy. A UK proxy is optional; residential is the safe default for large runs.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ],
                            "apifyProxyCountry": "GB"
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
