Check UK share codes and driving licences from your own software
Four checks, an endpoint each. Send a share code and date of birth to POST /v1/check/right-to-work, POST /v1/check/right-to-rent or POST /v1/check/immigration-status and get gov.uk's answer back as JSON: the outcome or status, dates, conditions, the person's photo and the gov.uk PDF. Send a licence number and the driver's check code to POST /v1/check/driving-licence and get DVLA's record: status, points, the vehicles they can drive and DVLA's PDF.
Four checks, an endpoint each
Check a candidate can work in the UK before their first day.
- You send
share_code,date_of_birth,company_name- Code from
- gov.uk/prove-right-to-work
- Check again
- When their permission ends
POST /v1/check/right-to-workRight to work referenceCheck a tenant can rent in England before the tenancy starts.
- You send
share_code,date_of_birth,checker_name(landlord or company),checker_type- Code from
- gov.uk/prove-right-to-rent
- Check again
- The later of when their permission ends and one year after this check
POST /v1/check/right-to-rentRight to rent referenceCheck a person’s UK immigration status, for an account, a loan, a course, housing or a licence.
- You send
share_code,date_of_birth,company_name,job_title,purpose- Code from
- gov.uk/view-prove-immigration-status
- Check again
- When their permission ends,
valid_until.nullwhen there is no limit
POST /v1/check/immigration-statusImmigration status referenceCheck a driver’s licence before they drive for you: status, points and the vehicles they can drive.
- You send
licence_number,check_code- Code from
- gov.uk/view-driving-licence
- Check again
- With a new code from the driver: a code works once.
flagswarn 90 days before the licence or a category ends
POST /v1/check/driving-licenceDriving licence reference{
"share_code": "AB1CD2EF3",
"date_of_birth": "1990-01-01",
"company_name": "Acme Ltd"
}{
"licence_number": "MORGA753116SM9IJ",
"check_code": "Hb Rh fp 7g"
}{
"share_code": "AB1CD2EF3",
"date_of_birth": "1990-01-01",
"checker_name": "Acme Property Ltd",
"checker_type": "landlord"
}{
"share_code": "AB1CD2EF3",
"date_of_birth": "1990-01-01",
"company_name": "Example Bank, Leeds branch",
"job_title": "Account opening officer",
"purpose": "personal_finance"
}Start here
Quickstart in your language
Guides
.md to any docs URL for plain Markdown. Tell your agent which check you need: it picks the endpoint, and sends the fields only that check takes, such as checker_type for right to rent, purpose for immigration status or check_code for a driving licence.