UK Visa Sponsor Register: Changes and Company Data
Pricing
Pay per event
UK Visa Sponsor Register: Changes and Company Data
Every UK employer that gains, loses or changes a sponsor licence, as JSON with the company number, status and SIC codes attached. Filter by route, town or change type, check a list of names in one run, and schedule it to get only what is new.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Arjun Shankar
Maintained by CommunityActor stats
0
Bookmarked
5
Total users
4
Monthly active users
6 days ago
Last modified
Categories
Share
Know the day a UK employer gains, loses or changes its sponsor licence, with the company record attached.
Every sponsor added to, removed from or re-rated on the Home Office register of licensed worker sponsors comes back as one JSON row: what changed, the values before and after, and the company number, status, incorporation date and SIC codes. The same actor checks a list of names against the register.
Run it with the default input: up to 10 recent changes.
Who uses it
- Immigration advisers and law firms catch a client's downgrade to a B rating, or a removal, the day it is published.
- Recruiters and job boards drop employers that can no longer sponsor and pick up new ones within hours.
- Sales and research teams find organisations that have just become sponsors, by route, town or industry.
- Compliance teams check a supplier or partner list against the register in one run.
Input
| Field | What it does |
|---|---|
mode | changes (default), snapshot (the current register) or verify (check names) |
since | Changes since a date, YYYY-MM-DD. Empty means the last 7 days |
sinceLastRun | true returns only changes newer than your last run. Best for schedules |
changeType | added, removed or changed. Empty means all |
route, town | Filter by visa route (e.g. Skilled Worker) or town (e.g. London) |
names | For verify: one organisation name per line, up to 100,000 |
maxItems | Caps the rows, and so the cost |
Schedule changes daily with sinceLastRun: true and you get, and pay for, each change once.
Output
Each changes row carries change_type, change_date, name, town, route,
type_rating, fields (what changed), before, after, company_number, company_status,
incorporation_date, sic_codes, match_confidence and data_as_of.
A real change from the 6 October 2026 register, trimmed:
{"change_type": "changed","change_date": "2026-10-06","name": "H&R ENERGY SOLUTIONS LTD","town": "Glasgow","route": "Skilled Worker","fields": ["type_rating"],"before": { "type_rating": "Worker (B rating)" },"after": { "type_rating": "Worker (A rating)" },"company_number": "SC597474","company_status": "Active","sic_codes": ["43290", "43999"],"match_confidence": "high","data_as_of": "2026-10-06"}
verify returns is_licensed_sponsor, the best matching register entry with its routes and
ratings, the company record and a match_confidence.
Pricing
Pay per result. See the Pricing tab for current rates; maxItems caps the rows and so the cost. A run that finds nothing charges nothing per item.
FAQ
How fresh is it? The register updates on most working days, and a new file reaches the actor within about 6 hours. Change history runs from 2 October 2026.
Why does a sponsor have no company number? It isn't a company (an NHS trust, school, charity
or sole trader), or its register name is too far from its official company name to match safely.
Those rows say match_confidence: "none" instead of guessing.
Will a daily schedule charge me twice? Not with sinceLastRun: true. A day with no new
register file returns nothing and costs nothing.
Can I monitor my own client list? Run verify once to find each entry, then schedule
changes and match on company_number or name.
Contains public sector information licensed under the
Open Government Licence v3.0.
Every row carries the full source attribution in an attribution field. Runs record anonymous
usage counts only, never your inputs or results.