California Attorney Scraper: State Bar Directory
Pricing
from $20.00 / 1,000 attorney results
California Attorney Scraper: State Bar Directory
Scrape California State Bar attorney directory. Extract name, bar number, license status, city, and optional contact details. Drop-in for Salesforce, HubSpot, and legal CRMs. Skip manual lookup. $0.02 per record.
Pricing
from $20.00 / 1,000 attorney results
Rating
0.0
(0)
Developer
GetAScraper
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
What does CA State Bar Attorney Scraper do?
Scrape California State Bar public attorney directory by attorney name, partial name, or bar number. Extract core data (name, bar number, city, status, admitted date, detail page URL) or enrich with contact details and practice areas. The Actor queries the CA Bar's free search API (HTTP GET, no browser needed, no proxy required) and returns up to 500 results per search.
Try it in the Apify Console. Enter a search term (e.g., Smith or Bar Number: 123456), optionally toggle detail page enrichment, and hit Start. Download results as JSON, CSV, or Excel. Built on Apify, you also get: scheduled runs, HTTP API access, integrations with Zapier / n8n / Make, monitoring, and alerts.
Why use CA State Bar Attorney Scraper?
- Legal-tech data enrichment. Bulk-verify attorney credentials, enrich client lists with bar numbers and admission dates.
- Law firm lead generation. Find attorneys by practice area, city, or bar number for outreach and partnership pipelines.
- Compliance verification. Check attorney status (Active, Inactive, Suspended) for due diligence, contract review, or risk assessment.
- Journalist research. Background checks, disciplinary history cross-reference, story leads on legal industry trends.
- Competitive intelligence. Track competitor attorneys, practice area presence, and firm growth across California.
- Public record aggregation. Bulk export attorney data for legal databases, directories, or RAG systems.
All data is public record. CA State Bar explicitly permits programmatic access to the attorney directory for legitimate research and compliance purposes.
How to use CA State Bar Attorney Scraper
- Open the Actor on Apify Store.
- Enter a search value: attorney name (e.g.,
Smith, JohnorSmith), partial name, or bar number (e.g.,123456). - Set max results (default 100, max 500 per search query).
- (Optional) Enable detail page enrichment to fetch phone, email, address, and practice areas (this doubles API requests and cost).
- Click Start. The Actor queries the CA Bar, extracts results, and pushes them to your dataset.
- Download results from the Storage tab as JSON, CSV, or Excel.
For bulk searches, run the Actor multiple times with different names or use scheduled runs to refresh data weekly.
Input
| Field | Type | Default | Description |
|---|---|---|---|
searchValue | string | required | Attorney name (e.g., Smith or Smith, John), partial name, or bar number (e.g., 123456) |
maxResults | integer | 100 | Maximum records to return per search (0 = unlimited, hard cap 500 from CA Bar API) |
includeDetails | boolean | false | Fetch detail page for phone, email, address, practice areas (increases requests and cost) |
Example input:
{"searchValue": "Smith","maxResults": 100,"includeDetails": false}
Output
Each attorney becomes one dataset item. You can download the dataset in JSON, HTML, CSV, or Excel.
Basic output (includeDetails: false):
{"name": "Smith, John A.","barNumber": "123456","city": "Los Angeles","status": "Active","admittedDate": "June 1998","detailUrl": "https://apps.calbar.ca.gov/attorney/Licensee/Detail/123456"}
Enriched output (includeDetails: true):
{"name": "Smith, John A.","barNumber": "123456","city": "Los Angeles","status": "Active","admittedDate": "June 1998","detailUrl": "https://apps.calbar.ca.gov/attorney/Licensee/Detail/123456","phone": "(213) 555-0100","email": "jsmith@lawfirm.com","address": "123 Main St, Los Angeles, CA 90001","practiceAreas": ["Civil Litigation", "Real Estate"]}
Data table
| Field | Type | Description |
|---|---|---|
name | string | Attorney name as listed on CA Bar (formatted as Last, First, Middle) |
barNumber | string | California bar license number (unique identifier) |
city | string | City of record (mailing/office address) |
status | string | License status: Active, Inactive, Suspended, Resigned, Deceased, Disbarred |
admittedDate | string | Month and year admitted to California bar (e.g., June 1998) |
detailUrl | string | Link to full detail page on CA Bar website |
phone | string? | Phone number (present only if includeDetails: true) |
email | string? | Email address (present only if includeDetails: true) |
address | string? | Full office/mailing address (present only if includeDetails: true) |
practiceAreas | string[]? | Array of practice areas (e.g., ["Civil Litigation", "Real Estate"], present only if includeDetails: true) |
How much does it cost to scrape the California State Bar?
$0.02 per record (pay-per-result, PPR).
Pricing breakdown
| Volume | Search mode | Cost |
|---|---|---|
| 100 records | Basic (no details) | ~$2.00 |
| 100 records | Enriched (with details) | ~$4.00 |
| 1,000 records | Basic | ~$20.00 |
| 1,000 records | Enriched | ~$40.00 |
| 10,000 records | Basic | ~$200.00 |
| 10,000 records | Enriched | ~$400.00 |
No subscription. No minimum. You pay only for successful records.
Important: The CA Bar returns up to 500 results per query. For searches returning fewer results, you pay for what you get. For generic names (e.g., Smith), you may hit the 500-cap and need to use more specific queries or bar numbers.
Tips and advanced options
- Use bar number for exact lookup. Query
123456orBar: 123456to fetch a specific attorney instantly and skip partial-name searches. - Use last name + first initial to narrow results. Instead of
Smith(may hit 500-result cap), trySmith, JorSmith, Johnto reduce matches and cost. - Start with includeDetails: false. Get core data first (~1 sec per 100 records), then selectively enrich records you need with a second run.
- Schedule weekly runs. Status changes (Suspended, Disbarred, Resigned) happen regularly. Keep your attorney database fresh with recurring searches.
- Batch multiple queries. Run separate Actor calls for different cities or practice areas to parallelize and reduce individual query cost.
- Use CSV/Excel export. Download as CSV for easy dedupe, filtering, and import into legal databases or CRM systems.
FAQ, disclaimers, and support
Is scraping California State Bar legal?
Yes. The California State Bar explicitly publishes the attorney directory for public access at apps.calbar.ca.gov/attorney/LicenseeSearch/QuickSearch. This Actor respects the CA Bar's terms of service and uses their public API. All data is public record, not personal or confidential. Use the data responsibly and in compliance with California and federal law.
What is the 500-result cap?
The CA Bar API returns a maximum of 500 results per search query. If your search matches 500+ attorneys (e.g., all attorneys named Smith), you will only get 500. Refine your search with first names, bar numbers, or other criteria to narrow results.
Can I use this for spam or harassment?
No. Attorney contact data is public, but using it for spam, harassment, unsolicited bulk contact, or any illegal activity is prohibited and may violate California and federal law (CAN-SPAM Act, etc.). Use the data only for legitimate business, research, legal, or journalistic purposes.
What if includeDetails fails for some records?
If a detail page is unreachable or contains unexpected HTML, the Actor logs a soft failure and returns the basic record without contact fields. Phone, email, address, and practice areas may be null or missing. This is expected for a small percentage of detail pages.
How do I handle duplicate names?
The bar number is the unique identifier. Use barNumber to dedupe, merge, or verify records across datasets.
Custom requirements?
Need a different data format, automated scheduling, or custom fields? Use the Issues tab on the Actor's page to request features or report bugs. Custom solutions (e.g., batch database sync, real-time webhooks) are available through Apify's consulting team.
Support
Found a bug or want a feature? Use the Issues tab on the Actor's page. For questions, contact support via the Actor's Support link.
Built with Apify + Cheerio + TypeScript. Part of the actorstack portfolio. Scrape California State Bar attorney directory data for legal-tech, compliance, research, and competitive intelligence.