I recently wanted to get a custom license plate for my car, and was looking for a cool combination of letters and numbers. The California DMV has a license plate availability checker that lets you check if a specific plate is available, but it only allows you to check one plate at a time.

California DMV Plate Checker
Finding the endpoint
You can go through the process of checking a plate without ever signing in, so this seemed feasible to automate. I opened up devtools and started inspecting the network requests.
Interestingly enough, they seem to have an invisible recaptcha check, but this recaptcha is never used or validated, fortunately for us.

POST request to initialize the session
This POST
request sets a JSESSIONID
cookie, if that cookie is not already present. This cookie is required for all subsequent requests.

POST request to initialize the session
Writing the script
I wrote a simple script to generate a session and then start searching for plates in paralle. The project is open source, and can be found on GitHub. After writing this I realized there was already another project on GitHub that already did this, this project in Python - always shows you should check if someone else has already done it.
The script is simple - it generates a session using the first request, then uses that session to check for available plates.
We use an async generator and streamed reads to be performant, and can check ~50,000 plates in about a minute and a half. I didn't test above 50 parallel requests, but the DMVs service seemed to be able to handle that no problem.
Interesting plates
Now we could find interesting plates - the requirements are that the plate be between 2 and 7 characters, and can only contain letters and numbers.
I started by checking if any of the 2 character combinations were available - there were only 4 valid available.

All available two character plates
The only four currently available are C2, C5, C6, and C9. These are all Chevrolet car models, so I'm not sure if the DMV is holding on to these for some reason or denying their requests. I'd at least assume that C9 would be taken by someone, as it's a pretty cool plate for a Chevy aficionado getting ready for the next gen Corvette.
I then moved on to 3 character combinations, of which there are a ton. I won't write them all here, but there are 1,315 available 3 character combinations.
Common words
I found a list of the 10,000 most common English words here, and processed those. There were 439 available plates in that list.
Obviously a lot of these are not very interesting, but there were some fun ones. These are some highlights that I found:
ADSL
CITED
ATTACKS
BROWSE
CAUSE
CONF
DIES
DIFFS
DISK
DISKS
DONATED
DROVE
ENDED
ENTERS
ENTRY
EXPIRES
FAILS
FOLLOWS
GOTTA
INCHES
LOCATED
LOGGED
MOBILES
NCAA
PASSES
PHPBB
RELAY
SPIES
SPOUSE
TEXTS
TITLED
TOWARD
VIDEO
YEARS
The DMV always reserves the right to reject a plate, so some of these may be requested frequently but approved.
The full list of words can be found on this gist.
Conclusion
Unfortunately there doesn't seem to be a way to reserve a plate without actually assigning it to your car. It looks like if you already have a car, and have a plate you want to keep, you can sell the car and then pay a $45/year fee to keep the plate, but it must be attached to a VIN first. At least this means it's pretty hard to "park" or "squat" valuable license plates.
I already have a pretty cool plate for my car (I won't say what it is on my blog, but my friends can easily recognize it), so I won't be using any of these plates, but hopefully someone else can find a cool one!