Checks
Right to work
POST https://checksharecode.co.uk/api/check/right-to-work checks a candidate or employee can work in the UK, on gov.uk, as their employer. 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 candidate made at gov.uk/prove-right-to-work. A right to rent code won’t open this check. Spaces and lower case are fine: we remove spaces and upper-case it.
Example:
AB1CD2EF3date_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-01company_namestringrequired
Your organisation's name, 1 to 200 characters. gov.uk records it as the employer making the check.
Example:
Acme LtdDon’t send checker_type: it is for right to rent, and a right to work request with it is refused with 400 INVALID_INPUT. You don’t need check either, as the endpoint names the check. If you send it, it must be right_to_work.
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-work \
-H "authorization: Bearer $CHECKSHARECODE_API_KEY" \
-H "content-type: application/json" \
-d '{
"share_code": "AB1CD2EF3",
"date_of_birth": "1990-01-01",
"company_name": "Acme Ltd"
}'200 OK
{
"outcome": "ACCEPTED",
"title": "Right to work",
"name": "JANE EXAMPLE DOE",
"date_of_birth": "1990-01-01",
"details": "They have the right to work in the UK.",
"nationality": null,
"permission_type": null,
"start_date": null,
"expiry_date": null,
"recheck_date": null,
"conditions": [],
"restrictions": [],
"reference": "WE-EXAMPLE-12",
"company_name": "Acme Ltd",
"check_date": "2026-09-27",
"share_code": "AB1CD2EF3",
"photo_data_url": "data:image/jpeg;base64,/9j/4AAQ…",
"pdf_data_url": "data:application/pdf;base64,JVBERi0…",
"checked_at": "2026-09-27T10: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 rent alike.