Verify any California contractor's license
in one API call.

Real-time status, bond, and disciplinary data from the CSLB — built for marketplaces, insurers, and property managers.

Live CSLB data 24-hour cache JSON API 99.9% uptime

From license number to structured data in seconds.

1

Get an API key

Choose a plan below, complete checkout, and your API key appears instantly on screen. Copy it — you'll need it for every request.

2

POST a license number

Send a POST /v1/verify with the license number, state, and profession in the body. Include your API key in the header.

3

Get status, bond & flags

Receive a normalized JSON object: license status, business name, bond status, workers' comp, classifications, disciplinary flags, and dates.

Request
Response
# Verify a California contractor license
curl -X POST https://goodstanding.dev/v1/verify \
  -H "x-api-key: lv_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "license_number": "1083364",
    "state": "CA",
    "profession": "general_contractor"
  }'

What we support today.

🏗️

California General Contractors

Via CSLB (Contractors State License Board) public lookup. All license classes.

More states and professions are added based on demand.
Email us if you need a specific state or profession prioritized.

Simple, transparent pricing.

Starter
$49/mo

For teams getting started with license verification.

  • 100 verifications / month
  • 24-hour result cache
  • CA general contractors
  • JSON API
Enterprise
Contact us

Custom volume, SLAs, additional states, and dedicated support.

  • Unlimited verifications
  • Custom coverage
  • SLA & uptime guarantee
  • Dedicated support
Talk to us
Pay-as-you-go
$1.50/verification

10-credit pack for $15. No subscription. Perfect for occasional use.

  • 10 verifications included
  • One-time payment
  • Same API, same data

Common questions.

Is this official CSLB data? +

We pull directly from CSLB's public license lookup and normalize it into clean JSON. We are not affiliated with CSLB; always treat CSLB's own site as the final authority for high-stakes decisions.

How fresh is the data? +

Results are cached for 24 hours per license number to keep lookups fast and avoid unnecessary load on CSLB's servers. Monitoring subscribers (Growth plan) get flagged on status changes when the scheduled re-check detects a difference.

What happens if CSLB is down? +

Our API returns a clear 503 error rather than stale or fabricated data. You'll see an error field explaining the upstream issue. Cached results from within the last 24 hours are still served normally.

What do I do when I hit my monthly quota? +

You'll receive a 429 response with a clear message and your current usage. Quotas reset on the first of each month. You can upgrade your plan at any time — just grab a new key for the higher tier.

How does the monitoring webhook work? +

Available on the Growth plan. Call POST /v1/monitor with a license number and your webhook URL. When we detect a status change on our next scheduled check, we'll POST the updated license data to your URL.