Contractor License Verification Scraper avatar

Contractor License Verification Scraper

Pricing

from $0.02 / 1,000 item extracteds

Go to Apify Store
Contractor License Verification Scraper

Contractor License Verification Scraper

Verify contractor licenses from official public state lookup pages. Export status, expiration, license type, source URL, and public contact fields.

Pricing

from $0.02 / 1,000 item extracteds

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Contractor License Verification Scraper extracts or processes business data. Replace this bootstrap description during implementation.

Generated from _scripts/bootstrap-actor.mjs for slug contractor-license-verification-scraper, type cheerio, category business.

Overview

Contractor License Verification Scraper is a generated starting point for a cheerio Apify Actor.

Contractor License Verification Scraper extracts or processes business data. Replace this bootstrap description during implementation.

Replace this scaffold prose with the final marketplace copy before QA handoff.

Implementation note: replace scaffold-specific language before publication.

Who is it for

Data teams, operators, and developers who need repeatable extraction or automation.

Describe the exact target users for this actor during implementation.

Mention when users should choose a related actor instead.

Implementation note: replace scaffold-specific language before publication.

Input

Use the generated input schema as the contract between users and code.

The startUrls field is intentionally simple until implementation.

Keep smoke-test defaults small enough for low-cost QA runs.

Implementation note: replace scaffold-specific language before publication.

Output

Dataset items contain source, label, value, and scrapedAt until customized.

Update dataset_schema.json and output_schema.json whenever emitted fields change.

Keep output names stable once the actor is published.

Implementation note: replace scaffold-specific language before publication.

Pricing

This scaffold uses PPE pricing with a one-time start event and tiered per-item event.

Current placeholder prices: start $0.005, item BRONZE $0.001.

Run the pricing workflow before publication and keep README prices synchronized.

Implementation note: replace scaffold-specific language before publication.

Examples

Add realistic example inputs and output snippets before QA.

Include at least one small smoke-test example and one buyer-oriented production example.

Keep examples synchronized with input_schema.json and emitted dataset fields.

Implementation note: replace scaffold-specific language before publication.

API usage

Start runs with automation-lab/contractor-license-verification-scraper and pass the same JSON input you use in the Apify Console.

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/contractor-license-verification-scraper').call({
states: ['TX'],
contractorNames: ['A'],
maxResults: 20,
includeDetails: false,
texasLicenseType: '-1'
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/contractor-license-verification-scraper').call(run_input={
'states': ['TX'],
'contractorNames': ['A'],
'maxResults': 20,
'includeDetails': False,
'texasLicenseType': '-1',
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~contractor-license-verification-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"states":["TX"],"contractorNames":["A"],"maxResults":20,"includeDetails":false,"texasLicenseType":"-1"}'

MCP

Use the actor through Apify MCP Server when you want Claude to launch contractor license verification runs from natural-language prompts.

Claude Code setup

$claude mcp add apify https://mcp.apify.com/?tools=automation-lab/contractor-license-verification-scraper

JSON MCP configuration

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=automation-lab/contractor-license-verification-scraper"
}
}
}

Example prompts

Use these MCP prompts after connecting the server:

  • "Use the contractor license verification scraper to run a Texas TDLR contractor license search for names starting with A and return expired records."
  • "Use Apify MCP to verify these contractor license numbers and summarize status, expiration date, and source URLs."
  • "Run automation-lab/contractor-license-verification-scraper for this vendor list and create a due-diligence table."

Legality

Only scrape or process data that the user is authorized to access.

Respect website terms, robots guidance where applicable, and privacy laws.

Document any domain-specific compliance concerns here.

Implementation note: replace scaffold-specific language before publication.

Limitations

List anti-bot, pagination, freshness, quota, and rate-limit constraints.

Document expected failure modes and retry guidance.

Avoid promising complete coverage unless verified.

Implementation note: replace scaffold-specific language before publication.

Troubleshooting

Tell users how to inspect logs, input, and dataset output.

Describe common invalid-input errors.

Describe proxy or timeout recommendations after implementation.

Implementation note: replace scaffold-specific language before publication.

List related Automation Labs actors after competitor and portfolio review.

Cross-link only actors that genuinely help the same buyer.

Keep links updated when actors are renamed or retired.

Implementation note: replace scaffold-specific language before publication.

FAQ

Q: Is this production-ready immediately?

A: No. This is a bootstrap generated by internal tooling and must be customized.

Q: Can I increase maxItems?

A: Yes, but keep test runs small until pricing and performance are verified.

Implementation note: replace scaffold-specific language before publication.

Development checklist

Replace template extraction logic.

Customize schemas and README.

Run npm install, npm run build, qa-precheck, and dev-precheck before QA handoff.

Implementation note: replace scaffold-specific language before publication.

TODO: expand this section with actor-specific facts, examples, constraints, and user guidance. TODO: expand this section with actor-specific facts, examples, constraints, and user guidance. TODO: expand this section with actor-specific facts, examples, constraints, and user guidance. TODO: expand this section with actor-specific facts, examples, constraints, and user guidance. TODO: expand this section with actor-specific facts, examples, constraints, and user guidance. TODO: expand this section with actor-specific facts, examples, constraints, and user guidance. TODO: expand this section with actor-specific facts, examples, constraints, and user guidance.

Supported official license sources

This actor starts with public government lookup pages that do not require a login. Texas TDLR is the primary high-volume source and California CSLB is supported through its public license search flow. Additional states can be added as separate source modules when their public lookup forms are reachable and commercially reliable.

  • Texas Department of Licensing and Regulation (TDLR)
  • California Contractors State License Board (CSLB)
  • One normalized output table across states
  • Source URL retained for every public record

Compliance and due-diligence workflow

Contractor license checks are commonly part of onboarding, vendor management, marketplace trust and safety, insurance review, and property-management due diligence. Use this scraper to convert repeated manual lookup work into a structured dataset that can be joined back to your CRM, spreadsheet, or internal compliance queue.

  1. Upload known license numbers or names.
  2. Select the public state databases to search.
  3. Export the dataset to CSV, JSON, Excel, Google Sheets, or your own API.
  4. Review status and expiration signals before approving a contractor.

Data freshness and source limits

The scraper reads the live public source pages during each run. The scrapedAt field records when the lookup was performed. Government license databases can update independently and may expose different fields by license type, so some optional columns are blank when the source page does not publish that value.

Troubleshooting no results

If a name search returns fewer records than expected, try a shorter starts-with value, remove city or ZIP filters, or search by the exact license number. Texas TDLR name search is prefix-oriented, while state websites may normalize punctuation and DBA names differently from user-entered company names.

MCP usage

You can connect this actor to Claude or other MCP clients through Apify MCP Server:

https://mcp.apify.com/?tools=automation-lab/contractor-license-verification-scraper

Example prompts:

  • "Verify these Texas contractor license names and summarize expired records."
  • "Check this CSV of vendor license numbers and return records missing public status."
  • "Run a small contractor-license verification sample before onboarding this vendor list."

Changelog

  • 0.1.0 β€” Initial private build with Texas TDLR and California CSLB public lookup support.