# Vehicle Inspector Spec
### POST /vin/login
* BE check username/password
* if match, generate a access-token and return
### POST /vin/forget-password
* BE generate a reset password token, save in DB
* BE send a email with reset password link in it to inspector's inbox
### POST /vin/reset-password
* inspector visit reset password link and FE show a page to let user input new password(twice)
* FE call this endpoint with reset password token and new password
* BE check if reset password token match, if password and re_password equals to each other
* if match, change inspector's password to new password
### POST /vin/change-password
* inspector has logined
* BE check password and re_password equals to each other
* BE update inspector's password to new password
### POST /vin/contact
* intergrate with helpdesk, create a ticket in helpdesk
### GET /vin/driver
* not needed anymore
### GET /vin/driver/{driver_license}
* search a driver with driver license no
* search all existing inspection log of this driver(by driver id)
* return them to FE
### POST /vin/driver-inspect
* inspector click on a checkbox
* FE call this endpoint with {propertyName, propertyValue, status(checked/unchecked)}
* BE insert/update corresponding inspection log record
### POST /vin/driver-inspect-complete
* FE call this when everything has been checked(FE validate that)
* BE update driver's inspection status to PASSED
### POST /vin/driver-certificate
* FE upload certificate
* BE save certificate to S3?
* BE create a record in inspection certificate table
* BE update driver record, set driver inspection expired date
###### tags: `Nigeria`