Checks

Right to rent

POST https://checksharecode.co.uk/api/check/right-to-rent checks a tenant can rent in England, on gov.uk, as a landlord or a letting agent. Everything you send to this endpoint is here, and only that. A live check usually takes 15 to 40 seconds, so set your timeout to at least 60 seconds, or use the async endpoint.

What you send

Authorizationstringheaderrequired
Bearer followed by your key. rtw_test_… keys return sandbox data. rtw_live_… keys run a real check.
Example: Bearer rtw_live_…
share_codestringrequired
The 9-character code the tenant made at gov.uk/prove-right-to-rent. A right to work code won’t open this check. Spaces and lower case are fine: we remove spaces and upper-case it.
Example: AB1CD2EF3
date_of_birthstringrequired
The applicant's date of birth as YYYY-MM-DD. It must match the share code, and they must be at least 16.
Example: 1990-01-01
checker_namestringrequired
Who is checking: the landlord's or the company's name, 1 to 200 characters. gov.uk records it as the name of landlord or company. Right to work calls this company_name.
Example: Acme Lettings Ltd
checker_typestringrequired
landlord or agent, whichever you are. We give it to gov.uk when it asks who is checking.
Example: agent

You don’t need check, as the endpoint names the check. If you send it, it must be right_to_rent.

Save the photo and PDF if you need a record: we keep a copy of the check for up to 7 days only to investigate problems, then delete it.

curl https://checksharecode.co.uk/api/check/right-to-rent \
  -H "authorization: Bearer $CHECKSHARECODE_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "share_code": "AB1CD2EF3",
    "date_of_birth": "1990-01-01",
    "checker_name": "Acme Property Ltd",
    "checker_type": "landlord"
  }'
200 OK
{
  "outcome": "ACCEPTED",
  "title": "Right to rent",
  "name": "JANE EXAMPLE DOE",
  "date_of_birth": "1990-01-01",
  "details": "They have the right to rent in the UK from 1 January 2024. They have the right to rent until 1 January 2027.",
  "nationality": null,
  "permission_type": null,
  "start_date": "2024-01-01",
  "expiry_date": "2027-01-01",
  "recheck_date": "2027-10-01",
  "conditions": [],
  "restrictions": [],
  "reference": "WE-EXAMPLE-12",
  "company_name": "Acme Property Ltd",
  "check_date": "2026-10-01",
  "share_code": "AB1CD2EF3",
  "photo_data_url": "data:image/jpeg;base64,/9j/4AAQ…",
  "pdf_data_url": "data:application/pdf;base64,JVBERi0…",
  "checked_at": "2026-10-01T10:14:03.000Z"
}

Try it

Sign up to try it with your sandbox key. It sends this request from the page and shows the answer, free, with test data.Log in

The same for both checks

These are written once, for this endpoint and right to work alike.