CA Cannabis Licenses - DCC Commercial & Cultivation Register avatar

CA Cannabis Licenses - DCC Commercial & Cultivation Register

Pricing

from $0.03 / 1,000 license records

Go to Apify Store
CA Cannabis Licenses - DCC Commercial & Cultivation Register

CA Cannabis Licenses - DCC Commercial & Cultivation Register

California cannabis license register (DCC, public data, ~20.9k licenses): active / expired / revoked status, storefront (BCC), cultivation (CCL) & manufacturing (MCSB) licenses. Search by license number, business, county, status, license type.

Pricing

from $0.03 / 1,000 license records

Rating

0.0

(0)

Developer

Wenhao Yang

Wenhao Yang

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Categories

Share

CA Cannabis Licenses - California DCC Commercial, Cultivation & Manufacturing Register

The California Dept. of Cannabis Control (DCC) publishes the full state cannabis license register as open data - every license ever issued under the three authorities that merged into DCC in 2021, refreshed nightly and served directly from the state API. This actor turns that register into a charged-per-record, searchable lookup.

Built for: cannabis-industry due diligence - verifying an operator's license status, screening suppliers / business partners / acquisition targets, storefront & delivery footprint research, cultivation-license research by county, and state-level market sizing.

What it covers

~20,877 licenses across all three licensing authorities:

AuthorityCodeCoversLicenses
Bureau of Cannabis ControlBCCcommercial storefronts, delivery, distributors, microbusinesses, testing labs6,037
CalCannabis CultivationCCLcultivation (outdoor / indoor / mixed-light / nursery / processor...)13,282
Manufactured Cannabis Safety BranchMCSBmanufacturers (Types 6, 7, N, P, S), testing labs1,558

Status mix (live): Active 7,600 / Expired 9,010 / Surrendered 2,124 / Canceled 1,589 / Revoked 325 / Limited Operations 183 / Suspended 44. Active by category: Cultivation 4,429 / Commercial 2,729 / Manufacturer 442.

Each record is a full license profile: license number, status + status date, term (Annual / Provisional / Interim), exact license type + category, designation (Adult-Use / Medicinal / both), issue + expiration dates, business legal name / DBA / owner(s) / structure, premise county (street / city / ZIP / coordinates where the state publishes them), and business email + phone (~99-100% populated). Every license carries the source's nightly refresh stamp.

Location privacy is per authority: the state withholds street address and coordinates for cultivation (CCL) and manufacturing (MCSB) licenses - those rows carry the premise county only (still with full business email + phone + owner). Storefront (BCC) rows carry street address and coordinates on roughly a third of licenses. Filtering by county works across the whole register; filtering by city / ZIP / coordinates only returns storefront licenses that carry them.

Typical questions

  • "Is this dispensary's license active right now?" (license-number lookup, any era / status.)
  • "Show the cultivation licenses of every grower in Humboldt County - active and history."
  • "How many Active retail storefronts are there in Los Angeles County?"
  • "Find a manufacturer whose license was revoked or surrendered."
  • "What's the Adult-Use vs. Medicinal split, by county?"
  • "Screen this business name / owner across all three authorities."

Inputs

InputWhat it does
licenseNumberexact license number -> a single license, any era / status (e.g. C10-0000001-LIC, CCL18-0000004)
keywordbusiness-name substring (legal name + DBA + owner)
statusexact set: Active / Expired / Surrendered / Canceled / Revoked / Limited Operations / Suspended (blank = all)
authorityCCL / BCC / MCSB
typeCategoryCultivation / Commercial / Manufacturer (mirrors authority)
designationAdult-Use / Medicinal / Adult-Use and Medicinal
termAnnual / Provisional / Interim
county / city / zipCodepremise location filters (county covers all licenses; city/ZIP only hit storefront rows that publish them)
aggregate / groupByone summary row per group with a count - status / authority / typeCategory / designation / term / county
maxResultscap records (default 50)

Default run = the first 50 licenses in the register (page-1 order - the storefront block, not sorted by recency; no status default, so precise lookups of Expired / Revoked / older licenses are never shadowed). Fast enough for the daily auto-test.

The register holds ~20,900 licenses, so a whole-register row dump is not what this actor is for: runs are capped at $5, which stops the output at ~5,000 records. Use maxResults to bound what you pull, or aggregate for counts over the register without downloading rows.

Example inputs

Is this license active right now? - an exact license number returns that one license, any era or status.

{ "licenseNumber": "C10-0000001-LIC" }

Every cultivation license in Humboldt County - county covers the whole register, including the cultivation rows that publish location only down to county.

{ "county": "Humboldt", "typeCategory": "Cultivation", "maxResults": 10 }

Active storefronts in Los Angeles County - authority=BCC is the commercial storefront / delivery block.

{ "county": "Los Angeles", "authority": "BCC", "status": "Active", "maxResults": 10 }

Screen a brand across all three authorities - keyword matches legal name, DBA and owner name.

{ "keyword": "Atomic Budz", "maxResults": 5 }

Low cost

From $0.00005 per record, down to $0.00003 at Gold - billed only for the rows you use, and each record is metered individually.

The state's license API looks filterable but silently ignores every filter - status, authority and even the page-size arguments are no-ops, so the only honest way to read it is a full paginated snapshot (84 pages) pulled fresh every run and filtered locally. That snapshot unifies California's three legacy licensing regimes (the storefront bureau BCC, the cultivation branch CCL, the manufacturing branch MCSB) into one schema, with one junk status row normalized out and cultivation / manufacturing rows' withheld street addresses handled explicitly. Every pull is integrity-checked against the register's known shape (total count band, Active-count band, per-authority floors), so a degraded source fails loudly instead of returning bad data.

Example output

One license - licenseNumber=C10-0000001-LIC returns that license's full profile:

{
"platform": "ca-cannabis",
"source": "dcc-licenses",
"state": "CA",
"authorityId": "BCC",
"authority": "Bureau of Cannabis Control (BCC)",
"licenseNumber": "C10-0000001-LIC",
"licenseStatus": "Surrendered",
"licenseStatusDate": "",
"licenseTerm": "Annual",
"licenseType": "Commercial - Retailer",
"licenseTypeCategory": "Commercial",
"licenseDesignation": "Adult-Use and Medicinal",
"issueDate": "2018-11-02",
"expirationDate": "2020-11-02",
"businessLegalName": "Psgc, Inc.",
"businessDbaName": "Atomic Budz",
"businessOwnerName": "John Chaisson, Robert Wolter",
"businessStructure": "Corporation",
"activity": "",
"premiseStreetAddress": "68415 Perez Rd, Suite A",
"premiseCity": "Cathedral CTY",
"premiseCounty": "Riverside",
"premiseState": "CA",
"premiseZipCode": "92234",
"businessEmail": "Jeff@atomicbudz.Com",
"businessPhone": "(760) 322-4481",
"parcelNumber": "",
"latitude": "33.784464",
"longitude": "-116.468354",
"refreshed": "2026-09-24T15:45:04.4266667",
"mode": "record",
"groupKey": "",
"groupCount": ""
}

aggregate=true, groupBy=status - the register's status mix:

Expired 9,010
Active 7,600
Surrendered 2,124
Canceled 1,589
Revoked 325
Limited Operations 183
Suspended 44

Source

  • DCC Cannabis License Search - official public license search over the same register.
  • License data is DCC's own published register; status reflects the state's record as of the nightly refresh.