UK RTW Share Code Checker avatar

UK RTW Share Code Checker

Pricing

from $0.10 / completed right-to-work check

Go to Apify Store
UK RTW Share Code Checker

UK RTW Share Code Checker

Automate UK right to work checks via the official GOV.UK share code service. Supports single and batch checks, extracts check details and work restrictions, classifies outcomes, and can optionally return the worker photo.

Pricing

from $0.10 / completed right-to-work check

Rating

5.0

(1)

Developer

Sam

Sam

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Share

UK Right to Work Share Code Checker

Check a job applicant's right to work in the UK using their Home Office share code and date of birth — via the official GOV.UK employer checking service.

Returns one dataset item per check with the GOV.UK check details, extracted work conditions and restrictions, outcome classification, and an optional compressed worker photo. Supports single checks and batch processing.


When to use this

Under the Immigration, Asylum and Nationality Act 2006, UK employers must verify the right to work of any employee who is not a British or Irish citizen before they start work. Non-British/Irish workers generate a 9-character share code (starting with W) via their UKVI account, which employers use alongside the worker's date of birth to verify their status.

This actor automates that employer-side verification step.


Input

Single check

{
"shareCode": "W1X2Y3Z4A",
"dateOfBirth": "1990-06-15",
"companyName": "Acme Contractors Ltd",
"include_image": false,
"allow_sponsorship": true,
"allow_student": true
}

Batch check

{
"companyName": "Acme Contractors Ltd",
"include_image": true,
"allow_sponsorship": false,
"allow_student": true,
"checks": [
{
"shareCode": "W1X2Y3Z4A",
"dateOfBirth": "1990-06-15",
"companyName": "Acme Contractors Ltd",
"reference": "candidate-001"
},
{
"shareCode": "W9A8B7C6D",
"dateOfBirth": "1985-03-22",
"companyName": "Acme Contractors Ltd",
"reference": "candidate-002"
}
]
}

Input fields:

  • shareCode (string, required for single checks): 9-character share code starting with W.
  • dateOfBirth (string, required for single checks): Worker's DOB in DD/MM/YYYY or YYYY-MM-DD format.
  • companyName (string, required): Employer name entered into the GOV.UK service. For batch runs, item-level companyName is used when present, otherwise the top-level value is used as a fallback.
  • checks (array, required for batch checks): Array of {shareCode, dateOfBirth, companyName, reference} objects.
  • reference (string, optional): Your own reference ID, passed through to output.
  • include_image (boolean, optional): Include the worker photo as a compressed JPEG data URL.
  • allow_sponsorship (boolean, optional): If false, applicants requiring sponsorship are marked REJECTED.
  • allow_student (boolean, optional): If false, applicants with student visa work restrictions are marked REJECTED.
  • proxyConfiguration (object, recommended): Apify proxy config. Residential proxies are recommended for repeated checks.

Output

Each check produces one record in the dataset:

{
"code": 200,
"status": {
"govuk_check_details": {
"check_date": "Demo check",
"company_name": "Demo Employer Ltd",
"reference_number": "DEMO-REF-001"
},
"details": {
"data": {
"conditions": ["Demo mode: this is a synthetic result used for health checks and Store previews."],
"restrictions": []
},
"expiry_date": "31 December 2099",
"name": "DEMO APPLICANT",
"start_date": "1 January 2026",
"summary": "Demo mode: this synthetic applicant has the right to work in the UK."
},
"image": null,
"outcome": "ACCEPTED",
"outcome_reason": null,
"title": "Right to work (Demo)"
},
"error": null,
"checkedAt": "2026-04-05T19:48:09.899Z",
"shareCode": "WDEMO0000",
"reference": "demo-healthcheck",
"demo": true
}

Response shape

  • code: HTTP-style result code returned by the actor.
  • status.govuk_check_details: Metadata shown on the GOV.UK result page.
  • status.details: Extracted worker name, summary, start and expiry dates, conditions, and restrictions.
  • status.image: Compressed base64 JPEG data URL when include_image is enabled and a photo is present.
  • status.outcome: Actor decision, one of ACCEPTED, REFUSED, REJECTED, or UNKNOWN.
  • status.outcome_reason: Additional rejection or refusal reason when available.
  • shareCode and reference: Request identifiers passed through at the top level.
  • demo: Present and true when the actor returns a synthetic demo result.
  • error: Error message for technical failures or explicit NOT_FOUND responses.

Codes

  • 200: Check completed and the actor classified the worker as ACCEPTED or REFUSED.
  • 422: Check completed but the actor classified the result as REJECTED or UNKNOWN.
  • 404: status is NOT_FOUND. GOV.UK did not recognise the supplied details.
  • 500: status is ERROR. A technical error occurred during the run.

Outcomes

  • ACCEPTED: Worker appears to have the right to work under the current actor rules.
  • REFUSED: Worker appears not to have the right to work.
  • REJECTED: Worker has a right to work result, but was rejected by your configured sponsorship or student filters.
  • UNKNOWN: The page was reached but the result could not be confidently classified.

Notes

  • Share codes must start with W — codes starting with R (right to rent) or S (immigration status) will not work on this service
  • Share codes are valid for 90 days from issue
  • dateOfBirth must exactly match the worker's Home Office record
  • companyName is required by the GOV.UK flow and is recorded in the output
  • When include_image is enabled, the actor returns the worker photo as a compressed JPEG data URL to reduce payload size
  • This actor automates the standard employer-side GOV.UK check. You remain responsible for retaining evidence of the check per Home Office guidance (download the PDF confirmation where required)
  • Residential proxies are recommended to avoid rate limiting on repeated checks

Support

Raise issues via the Apify console or contact via the actor page.