WA Dealer & Transporter Licenses - Bonds & Surety avatar

WA Dealer & Transporter Licenses - Bonds & Surety

Pricing

from $0.06 / 1,000 wa dealer license records

Go to Apify Store
WA Dealer & Transporter Licenses - Bonds & Surety

WA Dealer & Transporter Licenses - Bonds & Surety

Washington vehicle, vessel & transporter licenses (public DOL data, 38.5k locations, monthly): dealers, transporters, limousine, tow-truck and scrap operators with the surety-bond block a plain dealer list omits - bond status, amount, company, dates. Filter by type/name/number or pull active bonds.

Pricing

from $0.06 / 1,000 wa dealer 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

4 days ago

Last modified

Categories

Share

WA Dealer & Transporter Licenses - With the Bond Block

The Washington Department of Licensing publishes its dealer and transporter license file - every licensed vehicle, vessel, transporter, tow and scrap-metal business location in the state - as open data. This actor turns that file into a charged-per-record lookup with the surety-bond detail a plain dealer list leaves out.

Built for: lenders and floor-plan financiers verifying a dealer's bond, wholesale and auction platforms onboarding dealers, dealership M&A and territory research, and compliance checks on tow, transporter and scrap operators.

What it covers

38,514 licensed locations, refreshed ~monthly, across 24 license types:

License typeLocations
Motor Vehicle Dealer8,457
Vehicle Transporter8,280
For Hire3,740
Limousine Carrier1,980
Vessel Dealer1,925
MVD Subagency / Misc Dealer / Wholesaler / Tow Truck / Manufacturer / Mfd-Home / Wrecker / Snowmobile / Salvage / Scrap Metalthe long tail

Status is the state's own four values - Active 8,271 / Expired 17,255 / Terminated 12,758 / Held 230 - and licensees cluster where the market is: Seattle (3,794 licensee addresses), Spokane (1,920), Tacoma (1,769), Kent (1,476), Everett (1,071).

Each record carries the licensee and the site:

  • license number, type and status
  • licensee name and address plus the site / DBA name and address (they differ - the licensed party and the lot often have separate addresses)
  • phone
  • first-issue and expiration dates

The bond block - the depth the competition omits

Every row carries the surety bond behind it, which a shallow "dealer list" scraper does not:

  • bond status - Active 7,183 / Bond Not Required 16,986 / No Bond information on record 14,345
  • bond amount (from $0 to $30,000,000 across the active bonds)
  • the bonding company, its phone and address
  • the bond number and its effective / cease dates

Bonds are held by the dealer family, not the transporter lanes: Active bonds concentrate in Motor Vehicle Dealer (3,331), Vessel Dealer (650), MVD Subagency (615) and Registered Tow Truck Operator (593) - exactly the operators a financier or platform needs to vet.

One license number, many sites

The row grain in this file is a licensed location, not a licensee - and that trips up naive reads two ways. A single dealer number can sit on many sites: Home Depot holds 43 store locations under the number 06972. And old numbers get reused across unrelated businesses: 00101 carries seven different companies at seven addresses. So license_number is not a unique key - 38,514 rows carry only 22,478 distinct numbers. This actor handles both: match a number to get every site it has ever covered, or match a business name to get every site it is licensed at.

The expiration field is also a trap: 27,331 rows carry the sentinel 9999-12-31 meaning "no expiration on file" - read literally, thousands of dead licenses look valid forever. Status is the only honest active read, and the sentinel is cleared from the output so it never surfaces as a real date.

Typical questions

  • "Is this dealer's bond active, for how much, and with which surety?"
  • "Every active Motor Vehicle Dealer in King County's cities."
  • "Vessel dealers with a current bond - the marina-facing list."
  • "Which sites does license number 06972 cover?"
  • "Every licensed location for a business name."
  • "Aggregate by license type, city, bond status, or first-issue year."

Inputs

InputWhat it does
moderows (default) / active (status Active) / bond (active surety bond) / aggregate
licenseTypea lane: dealer / vessel / transporter / limousine / tow / wholesaler / manufacturer / ...
statusexact: Active / Expired / Terminated / Held
licenseNumberexact number (returns every site it covers)
name / citybusiness/site name and city (fuzzy)
bondingCompanysurety company (fuzzy)
issuedFrom/To, expiresFrom/Toissue and expiration windows
groupByaggregate over licenseType / status / city / bondStatus / firstIssueYear
maxResultscap records (default 50)

Default run = the 50 most recently issued licenses (mode defaults to rows) - fast for the daily auto-test.

Example inputs

Every site one number covers - licenseNumber is exact, and a reused number returns each business behind it.

{ "licenseNumber": "06972" }

Vessel dealers with a current bond - mode=bond keeps the rows with an active surety bond on file.

{ "mode": "bond", "licenseType": "vessel", "maxResults": 10 }

A business name across sites - name matches the licensee or the site/DBA name.

{ "name": "HOME DEPOT", "maxResults": 10 }

The statewide license-type mix - mode=aggregate returns one count row per group.

{ "mode": "aggregate", "groupBy": "licenseType" }

Low cost

From $0.0001 per record, down to $0.00006 at Gold - billed only for the rows you use, at the low end of the store. A bond check on one dealer, or the whole active-dealer list with bonds, costs pennies.

The file reads like a plain register and is dirty enough to punish a quick read. The 9,999 sentinel makes thousands of lapsed licenses look perpetually valid. The number is not a key - reused across businesses and split across sites, so a "look up this dealer" either returns one row or forty-three depending on which number you meant. Licensee and site addresses diverge, and the bond columns are three-quarters empty ("Not Required" / "No Bond information on record") with the real bonding detail living only on the dealer family. Normalizing all of that into a register where a licenseType / status / bondingCompany query returns exactly the locations you mean is the actual product. Every pull is integrity-checked against the file's known shape, so a degraded source fails loudly instead of returning bad rows.

Example output

One licensed location - licenseNumber="18062" returns records like this one (with the bond block behind it):

{
"platform": "wa-dol-transport",
"source": "washington-dol-dealer-licenses",
"mode": "rows",
"groupKey": "",
"groupCount": "",
"groupBy": "",
"licenseNumber": "18062",
"licenseType": "Scrap Metal Processor",
"status": "Active",
"expirationDate": "2027-07-31",
"firstIssueDate": "2026-07-31",
"siteName": "DICKSON IRON & METALS, INC.",
"siteStreet": "907 N DYER RD",
"siteCity": "SPOKANE VALLEY",
"siteState": "WA",
"siteZip": "99212",
"businessName": "DICKSON IRON & METALS, INC.",
"businessStreet": "907 N DYER RD",
"businessCity": "SPOKANE VALLEY",
"businessState": "WA",
"businessZip": "99212",
"phone": "(509) 535-6146",
"bondStatus": "Active",
"bondAmount": "0",
"bondingCompany": "COCHRANE & CO",
"bondNumber": "100262286",
"bondEffectiveDate": "",
"bondCeaseDate": "",
"bondCompanyPhone": "(509) 838-0655",
"bondCompanyAddress": "PO BOX 19150 SPOKANE WA 99219-9150"
}

mode=aggregate, groupBy=licenseType - one row per license lane (groupKey + groupCount):

Motor Vehicle Dealer 8,457
Vehicle Transporter 8,280
For Hire 3,740
Limousine Carrier 1,980

Source