ca-dmv-poller
TypeScript icon, indicating that this package has built-in type declarations

0.0.3 • Public • Published

CA DMV Poller

A developer API to access the CA DMV appointment system

NOTE: This is a developer API. Use CA DMV Appointment FastFinder, an Android app, if you just want to get an appointment.

Install

Install this module like any other npm package:

$ npm install ca-dmv-poller

Usage

const Poller = require('ca-dmv-poller')
 
const poller = new Poller({
  itemsToProcess: 1, // Number of items user would like to process
  maxDistanceMiles: 15, // Distance from home location to search for DMV Offices
 
  // Provide zipCode, coords, or address
  zipCode: '95630', // or
  coords: {
    lat: '38.733792',
    lng: '-121.141315'
  } // or
  address: '1600 Amphitheatre Pkwy, Mountain View, CA 94043',
 
  mode: 'OfficeVisit', // or 'DriveTest'
  // CID: Apply for, replace, or renew a California DL/ID
  // RID: Apply for, replace, or renew a REAL ID
  // VR: Register or title a vehicle or vessel (boat)
  appointmentTypes: ['CID'],
  // User's appointment information
  appointmentInfo: {
    appointmentInfo: {
      firstName: 'John',
      lastName: 'Doe',
      telArea: '123',
      telPrefix: '456',
      telSuffix: '7890',
      birthDay: '01',
      birthMonth: '01',
      birthYear: '2001',
      dlNumber: 'I0004567', // AKA Permit Number
      requestedTask: 'DT', // (automobile) or 'MC' (motorcycle),
      safetyCourseCompletedSelection: 'TRUE' // or 'FALSE', motorcycle test only
    }
  }
})
 
poller
  .check()
  .then(results => {
    results.forEach(result => {
      if (result.hasFailed) {
        console.log(
          `The request to ${result.location} (id ${
            result.id
          }) failed because: ${result.cause}`
        )
        return
      }
      console.log('Day of appointment: ', result.date)
      console.log('Days until appointment: ', result.daysUntil)
      console.log('Location of appointment: ', result.location)
    })
  })
  .catch(e => console.error(e))

Special Thanks to Michael Vartan and his tool, ca-dmv-poller, for inspiration and initial implementation of this app.

Dependencies (1)

Dev Dependencies (5)

Package Sidebar

Install

npm i ca-dmv-poller

Weekly Downloads

0

Version

0.0.3

License

MIT

Unpacked Size

130 kB

Total Files

19

Last publish

Collaborators

  • nklayman