# California State Bar Scraper (`parseforge/california-state-bar-scraper`) Actor

Pull California attorney profiles from the public State Bar directory: full name, bar number, license status, address, phone, email, county, district, sections, practice areas, and law school. Search by name or bar number. Export to JSON, CSV, or Excel for legal research and verification.

- **URL**: https://apify.com/parseforge/california-state-bar-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Business, Other, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $10.50 / 1,000 items

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

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

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## ⚖️ California State Bar Scraper

> 🚀 **Pull California attorney profiles from the public State Bar directory.** Search by name or bar number. Bulk extract licensed and resigned attorneys. No login.

> 🕒 **Last updated:** 2026-05-01 · **📊 13 fields** per attorney · **⚖️ 250,000+ California attorneys** · **🏛️ official State Bar directory** · **🆓 public licensee record**

The **California State Bar Scraper** queries the public State Bar of California licensee search at `apps.calbar.ca.gov` and returns attorney profiles for any name or bar number. Each record includes the bar number, full name, license status, mailing address, phone, email, county, district, sections, practice areas, languages, law school, and undergraduate school.

California has more than 250,000 active and inactive attorneys, the largest state bar in the United States. The official State Bar database is the authoritative public licensee record but lacks bulk export. This Actor exposes search and detail-page data as clean structured records for legal recruiting, sales prospecting, and verification work.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Legal recruiters, B2B sales teams, journalists, malpractice researchers, legal directories | Lead generation, attorney verification, lateral recruiting, legal directory builds |

---

### 📋 What the California State Bar Scraper does

Three filtering workflows in a single run:

- 🔍 **Free-text search.** Submit a name fragment, bar number, or city; the Actor uses the State Bar's QuickSearch endpoint.
- 🎯 **Sounds-like option.** Phonetic search broadens results to similar-sounding names.
- ⚡ **Parallel detail fetch.** Up to 12 concurrent profile fetches keep total run time low even for 100+ attorneys.

Each row reports the bar number, full name as printed on the profile page, license status, mailing address, phone, email, county, district, bar sections, practice areas, languages, law school, and undergraduate school.

> 💡 **Why it matters:** the State Bar directory is the canonical public record of every California attorney. Recruiters use it for lateral candidate sourcing. B2B sales teams use it for legal-sector prospecting. Journalists use it to verify representation in stories. Building your own pipeline against the State Bar means handling form-based search and per-profile parsing; this Actor handles all of that.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td><code>maxItems</code></td><td>integer</td><td><code>10</code></td><td>Attorneys to return. Free plan caps at 10, paid plan at 1,000,000.</td></tr>
<tr><td><code>searchTerm</code></td><td>string</td><td><code>"Smith"</code></td><td>Name fragment, bar number, or city. The QuickSearch endpoint accepts free text.</td></tr>
<tr><td><code>soundsLike</code></td><td>boolean</td><td><code>false</code></td><td>When <code>true</code>, broadens to phonetically similar names.</td></tr>
</tbody>
</table>

**Example: 100 attorneys named Smith.**

```json
{
    "maxItems": 100,
    "searchTerm": "Smith"
}
````

**Example: a specific bar number.**

```json
{
    "maxItems": 1,
    "searchTerm": "92056"
}
```

> ⚠️ **Good to Know:** the QuickSearch endpoint caps at roughly 500 results before pagination. For broader sweeps, narrow the search by name + city. Email and phone often render as "Not Available" on resigned profiles.

***

### 📊 Output

Each attorney record contains **13 fields**. Download as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 🆔 `barNumber` | string | `"92056"` |
| 👤 `fullName` | string | `"A. Jeffrey Smith"` |
| 🔗 `url` | string | `"https://apps.calbar.ca.gov/attorney/Licensee/Detail/92056"` |
| 📜 `licenseStatus` | string | `"Resigned"` |
| 🏠 `address` | string | `"5802 London Ln, Dallas, TX 75252"` |
| 📞 `phone` | string | null | `"972-380-9568"` |
| 📧 `email` | string | null | `"Not Available"` |
| 🗺️ `county` | string | null | `null` |
| 🏛️ `district` | string | null | `null` |
| 📚 `sections` | string | null | `"None"` |
| ⚖️ `practiceAreas` | string | null | `"None reported"` |
| 🗣️ `languages` | string | null | `"By the attorney:"` |
| 🎓 `lawSchool` | string | null | `"Stanford Law School"` |
| 🎓 `undergradSchool` | string | null | `"UC Berkeley"` |
| 🕒 `scrapedAt` | ISO 8601 | `"2026-05-01T00:52:47.253Z"` |

#### 📦 Sample records

<details>
<summary><strong>📜 Resigned attorney profile</strong></summary>

```json
{
    "barNumber": "92056",
    "fullName": "A. Jeffrey Smith",
    "url": "https://apps.calbar.ca.gov/attorney/Licensee/Detail/92056",
    "licenseStatus": "Resigned",
    "address": "5802 London Ln, Dallas, TX 75252",
    "phone": "972-380-9568",
    "email": "Not Available",
    "sections": "None",
    "practiceAreas": "None reported",
    "scrapedAt": "2026-05-01T00:52:47.253Z"
}
```

</details>

<details>
<summary><strong>✅ Active attorney with sections and practice areas</strong></summary>

```json
{
    "barNumber": "150234",
    "fullName": "Maria L Hernandez",
    "url": "https://apps.calbar.ca.gov/attorney/Licensee/Detail/150234",
    "licenseStatus": "Active",
    "address": "555 California St #1700, San Francisco, CA 94104",
    "phone": "415-555-0123",
    "email": "mhernandez@example.com",
    "sections": "Litigation, Business Law",
    "practiceAreas": "Civil Litigation, Commercial Disputes",
    "lawSchool": "UC Berkeley School of Law"
}
```

</details>

<details>
<summary><strong>🏛️ Solo practitioner with multilingual practice</strong></summary>

```json
{
    "barNumber": "201845",
    "fullName": "James R Park",
    "licenseStatus": "Active",
    "address": "102 Main St #B, Los Angeles, CA 90012",
    "phone": "213-555-9876",
    "languages": "By the attorney: Korean",
    "practiceAreas": "Immigration"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🆓 | **No login.** Reads the public State Bar QuickSearch and Detail endpoints. |
| 🏛️ | **Authoritative source.** The State Bar of California is the official licensee record. |
| ⚡ | **Parallel detail fetch.** 12-way concurrency on per-profile pages. |
| 🔍 | **Free-text search.** Name, bar number, or city in a single query. |
| 🎓 | **Education fields.** Law school and undergraduate school where surfaced. |
| 🚀 | **Sub-30-second runs.** Typical 100-attorney pulls finish in 15 to 30 seconds. |
| 📞 | **Public contact info.** Office address and phone where the attorney makes them public. |

> 📊 In a single 22-second run the Actor returned 100 attorney profiles for the search term "Smith".

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| Manual State Bar lookup | Free | One-shot per query | Live | Manual | Hours per pull |
| Paid legal directory subscriptions | $$$ subscription | Aggregated | Daily | Built-in | Account setup |
| Generic web scrapers | $$ subscription | Brittle CSS | Daily | None | Engineer hours |
| **⭐ California State Bar Scraper** *(this Actor)* | Pay-per-event | Per-search up to 500 | Live | Free text, sounds-like | None |

Same QuickSearch endpoint open to any browser visitor, exposed as structured rows.

***

### 🚀 How to use

1. 🆓 **Create a free Apify account.** [Sign up here](https://console.apify.com/sign-up?fpr=vmoqkp) and get $5 in free credit.
2. 🔍 **Open the Actor.** Search for "California State Bar" in the Apify Store.
3. ⚙️ **Enter a search term.** Name, bar number, or city.
4. ▶️ **Click Start.** A 100-attorney run typically completes in 15 to 30 seconds.
5. 📥 **Download.** Export as CSV, Excel, JSON, or XML.

> ⏱️ Total time from sign-up to first dataset: under five minutes.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%">

#### 👥 Legal recruiting

- Source lateral candidates by practice area
- Filter on county or district for boutique searches
- Track active vs resigned status across cohorts
- Pull contact info for outreach campaigns

</td>
<td width="50%">

#### 💼 B2B sales

- Build prospect lists for legal-tech products
- Segment by practice area and firm size
- Cross-reference with social to enrich
- Run state-wide rollups for territory planning

</td>
</tr>
<tr>
<td width="50%">

#### 📰 Journalism

- Verify counsel of record on a case
- Track suspended or disbarred attorneys
- Map firm migrations and partner moves
- Cite the official State Bar record in reporting

</td>
<td width="50%">

#### 📋 Legal directories

- Build niche-practice rollups
- Power attorney-finder web apps
- Refresh existing directories nightly
- Validate referrals against the official record

</td>
</tr>
</table>

***

### 🌟 Beyond business use cases

Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Empirical datasets for papers, thesis work, and coursework
- Longitudinal studies tracking changes across snapshots
- Reproducible research with cited, versioned data pulls
- Classroom exercises on data analysis and ethical scraping

</td>
<td width="50%">

#### 🎨 Personal and creative

- Side projects, portfolio demos, and indie app launches
- Data visualizations, dashboards, and infographics
- Content research for bloggers, YouTubers, and podcasters
- Hobbyist collections and personal trackers

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Transparency reporting and accountability projects
- Advocacy campaigns backed by public-interest data
- Community-run databases for local issues
- Investigative journalism on public records

</td>
<td width="50%">

#### 🧪 Experimentation

- Prototype AI and machine-learning pipelines with real data
- Validate product-market hypotheses before engineering spend
- Train small domain-specific models on niche corpora
- Test dashboard concepts with live input

</td>
</tr>
</table>

***

### 🔌 Automating California State Bar Scraper

Run this Actor on a schedule, from your codebase, or inside another tool:

- **Node.js** SDK: see [Apify JavaScript client](https://docs.apify.com/api/client/js/) for programmatic runs.
- **Python** SDK: see [Apify Python client](https://docs.apify.com/api/client/python/) for the same flow in Python.
- **HTTP API**: see [Apify API docs](https://docs.apify.com/api/v2) for raw REST integration.

Schedule weekly runs against a list of search terms from the Apify Console. Pipe results into your CRM, Google Sheets, S3, BigQuery, or your own webhook with the built-in [integrations](https://docs.apify.com/platform/integrations).

***

### ❓ Frequently Asked Questions

<details>
<summary><strong>📜 What attorney statuses are returned?</strong></summary>

Active, Inactive, Resigned, Suspended, Deceased, and any other status the State Bar maintains. Each profile reports its current status verbatim.

</details>

<details>
<summary><strong>🔍 What goes in the searchTerm field?</strong></summary>

Free text. The State Bar QuickSearch matches against name, bar number, and city. Common searches include last names ("Smith"), full names ("John Smith"), or specific bar numbers ("92056").

</details>

<details>
<summary><strong>🎯 What does the soundsLike option do?</strong></summary>

Phonetic search. When `true`, the State Bar returns names that sound similar to the input even if the spelling differs. Useful for ambiguous spellings.

</details>

<details>
<summary><strong>📞 Does it return phone numbers and emails?</strong></summary>

Yes, when the attorney has provided them as part of the public record. The State Bar publishes office contact info per attorney's preference. Some show "Not Available" if they've opted out.

</details>

<details>
<summary><strong>🎓 Does it return law school and undergrad?</strong></summary>

Yes, for attorneys who provided that information. The State Bar surfaces law school and undergraduate school on the public profile when supplied.

</details>

<details>
<summary><strong>📦 How many attorneys can I pull at once?</strong></summary>

Free plan caps at 10. Paid plans go up to 1,000,000. Per-search the State Bar serves up to 500 results before requiring narrower input.

</details>

<details>
<summary><strong>🏛️ Are other state bars supported?</strong></summary>

This Actor focuses on California. Other state bars use different endpoints; open a request via our contact form if you need a specific state.

</details>

<details>
<summary><strong>💼 Can I use this for commercial work?</strong></summary>

Yes. The State Bar of California publishes the licensee directory specifically as a public record. Always verify your use case complies with state-level rules around bulk attorney data.

</details>

<details>
<summary><strong>💳 Do I need a paid Apify plan?</strong></summary>

The free plan returns up to 10 records per run. Paid plans return up to 1,000,000.

</details>

<details>
<summary><strong>⚠️ What if a run returns no records?</strong></summary>

Try a more common name or check the spelling. Bar numbers must be exact. [Open a contact form](https://tally.so/r/BzdKgA) and include the run URL if a real lookup returns empty.

</details>

<details>
<summary><strong>🔁 How fresh is the data?</strong></summary>

Live. Each run hits the State Bar at run time.

</details>

<details>
<summary><strong>⚖️ Is this legal?</strong></summary>

Yes. The State Bar of California publishes the licensee directory as a public record. The Actor reads only what the State Bar serves to any browser.

</details>

***

### 🔌 Integrate with any app

- [**Make**](https://apify.com/integrations/make) - drop run results into 1,800+ apps.
- [**Zapier**](https://apify.com/integrations/zapier) - trigger automations off completed runs.
- [**Slack**](https://apify.com/integrations/slack) - post run summaries to a channel.
- [**Google Sheets**](https://apify.com/integrations/google-sheets) - sync each run into a spreadsheet.
- [**Webhooks**](https://docs.apify.com/platform/integrations/webhooks) - notify your own services on run finish.
- [**Airbyte**](https://apify.com/integrations/airbyte) - load runs into Snowflake, BigQuery, or Postgres.

***

### 🔗 Recommended Actors

- [**🏛️ Federal Court Locator Scraper**](https://apify.com/parseforge/pacer-court-locator-scraper) - find the right federal court for filings.
- [**🔍 Skip Trace People Search**](https://apify.com/parseforge/skip-trace-scraper) - locate attorneys at past addresses.
- [**🅱️ Bing Search Scraper**](https://apify.com/parseforge/bing-search-scraper) - run open-web searches on the attorneys you find.
- [**🦆 DuckDuckGo Search Scraper**](https://apify.com/parseforge/duckduckgo-search-scraper) - alternative SERP signal for the same lookup.
- [**🕰️ Wayback Machine CDX Scraper**](https://apify.com/parseforge/wayback-cdx-scraper) - audit historical web mentions of an attorney's firm.

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more pre-built scrapers and data tools.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) and we'll route the question to the right person.

***

> The State Bar of California is a public corporation governed under California state law. This Actor is not affiliated with or endorsed by the State Bar. It reads only the publicly-published licensee directory open to any browser visitor.

# Actor input Schema

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

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000.

## `searchTerm` (type: `string`):

Name or bar number to search for. Examples: Smith, John Smith, 92056.

## `soundsLike` (type: `boolean`):

Enable phonetic ('sounds like') search for the name field.

## Actor input object example

```json
{
  "maxItems": 10,
  "searchTerm": "Smith",
  "soundsLike": false
}
```

# 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 = {
    "maxItems": 10,
    "searchTerm": "Smith"
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/california-state-bar-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 = {
    "maxItems": 10,
    "searchTerm": "Smith",
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/california-state-bar-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 '{
  "maxItems": 10,
  "searchTerm": "Smith"
}' |
apify call parseforge/california-state-bar-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "California State Bar Scraper",
        "description": "Pull California attorney profiles from the public State Bar directory: full name, bar number, license status, address, phone, email, county, district, sections, practice areas, and law school. Search by name or bar number. Export to JSON, CSV, or Excel for legal research and verification.",
        "version": "1.0",
        "x-build-id": "NmFtU4Xa4QRfc0fBJ"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~california-state-bar-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-california-state-bar-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/parseforge~california-state-bar-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-california-state-bar-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/parseforge~california-state-bar-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-california-state-bar-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": {
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000."
                    },
                    "searchTerm": {
                        "title": "Search term",
                        "type": "string",
                        "description": "Name or bar number to search for. Examples: Smith, John Smith, 92056."
                    },
                    "soundsLike": {
                        "title": "Sounds-like search",
                        "type": "boolean",
                        "description": "Enable phonetic ('sounds like') search for the name field.",
                        "default": false
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
