London Gazette Notices Scraper (UK Official JSON) avatar

London Gazette Notices Scraper (UK Official JSON)

Pricing

from $3.50 / 1,000 notice delivereds

Go to Apify Store
London Gazette Notices Scraper (UK Official JSON)

London Gazette Notices Scraper (UK Official JSON)

Returns official UK The Gazette notices for company subjects as JSON: insolvency, winding-up, liquidation and capital changes, with notice id, category, subject, case reference and publication date. Filter by notice code, keyword and publication date. Natural-person notices are discarded (GDPR).

Pricing

from $3.50 / 1,000 notice delivereds

Rating

0.0

(0)

Developer

Steadfetch

Steadfetch

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

London Gazette Notices Scraper (UK Insolvency Notices)

Monitor official UK The Gazette notices for company and entity subjects: insolvency, petitions to wind up, winding-up resolutions, liquidator appointments, creditors' meetings, capital reductions, limited partnerships, planning and environmental notices. Built by Steadfetch on the official The Gazette JSON feed.

Web data that doesn't break: keyless official feed, HTTP-only (no browser), schema-validated results and pay-per-event pricing.

What it does

The Actor reads the official The Gazette notice feed:

https://www.thegazette.co.uk/all-notices/notice/data.json

It paginates the requested publication-date window, filters by notice code, category and keyword, and saves one validated item per company/entity notice:

  • notice_id, notice_code, category, subject_name, status, published_at, case_reference, summary, source_url
  • plus the common Steadfetch envelope (url, title, scrapedAt)

Default window: last 7 days. Default cap: 100 notices (maximum 5,000).

GDPR and personal data

The Gazette licence (Open Government Licence v3.0) does not cover the re-use of personal data (The Gazette data page, terms). This Actor therefore:

  • discards every notice whose subject is a natural person (deceased estates, probate, personal insolvency and other person-only categories) before building an item, so the address or contact details of the person never reach the dataset;
  • only emits notices whose official feed title (or, for a few known generic categories, the opening of the notice text) identifies a company, authority or other organisation;
  • never outputs structured addresses, phone numbers or email addresses, and scrubs email addresses and phone-shaped numbers from summary;
  • never uses the per-notice ?view=linked-data endpoint: it is disallowed by robots.txt. Only the public search feed is read.

Notices that cannot be confidently classified as a company/entity are skipped, not guessed. They are never charged.

Monitor behaviour

  • Dedupe by notice_id inside a run: a notice is charged once even if the feed repeats it.
  • Schedule the Actor and set publishedAfter to the previous run date to receive only new notices. Only validated company/entity notices are charged; empty feeds, errors, person-subject notices, duplicates and malformed entries cost nothing beyond the run start event.
  • Printed-supplement page entries that appear in the feed without a notice code are skipped as non-notices and never charged.

Input

FieldTypeDescription
noticeCodesarray of stringsOptional official notice codes, for example ["2450"] (Petitions to Wind Up (Companies)) or ["2441"] (Resolutions for Winding-up).
categorystringOptional case-insensitive category filter, for example "Petitions to Wind Up (Companies)".
keywordstringOptional full-text search term passed to the official Gazette search.
publishedAfterstringISO date YYYY-MM-DD. Defaults to 7 days ago.
maxResultsinteger1-5,000. Default 100.
strictSchemabooleanFail the run on an invalid item. Default true.

Minimal test input:

{
"category": "Petitions to Wind Up (Companies)",
"maxResults": 10
}

Example output

A real item from the feed (20 October 2026):

{
"url": "https://www.thegazette.co.uk/notice/5234077",
"title": "VALESCAPE CONSTRUCTION LTD",
"scrapedAt": "2026-10-20T12:30:00.000Z",
"notice_id": "5234077",
"notice_code": "2450",
"category": "Petitions to Wind Up (Companies)",
"subject_name": "VALESCAPE CONSTRUCTION LTD",
"status": "published",
"published_at": "2026-10-20T12:10:21.000Z",
"case_reference": "CR-2026-MAN-001175",
"summary": "In the High Court of Justice CR-2026-MAN-001175 In the matter of VALESCAPE CONSTRUCTION LTD Trading As: Valescape Construction Ltd , and in the Matter of the Insolvency Act 1986 , A Petition to wind u...",
"source_url": "https://www.thegazette.co.uk/notice/5234077"
}

Fields marked required in .actor/dataset_schema.json are always present. case_reference and summary are optional and appear only when the feed provides them.

Pricing

Pay-per-event (PPE), the only per-result charge is the platform's synthetic dataset event. There is no custom event and no Actor.charge() call, so users are never billed twice.

EventCharged whenPrice
apify-actor-startOnce per run start (synthetic)$0.00005 per run (Apify-recommended default; includes 5 s of free compute)
apify-default-dataset-itemEach validated company/entity notice saved to the dataset$0.0035 per notice = $3.50 per 1,000 notices

3.50 USD per 1,000 results is inside the Steadfetch band (1-10 USD per 1,000) and inside the Gazette competitor band (roughly 0.001-0.05 USD per notice). Person-subject notices, duplicates, empty feeds and errors are never charged.

Cost per 1,000 notices

Measured on the dev container against the live official feed (20 October 2026, 35-day window, 1,000 valid notices):

ResourceMeasured
Feed requests / pages28
Candidate feed entries2,776 (including printed-supplement pages, skipped)
Feed transferabout 5.6 MB
Wall clockabout 114 s
Memory256 MB (Actor minimum)

Estimated platform cost at Apify's published rates (1 compute unit = 1 GB RAM/hour, $0.20/CU; external data transfer $0.20/GB; 1,000 dataset writes $0.005): about $0.01 per 1,000 notices. This is a resource-based estimate, not an invoice: no platform run was made during the build to preserve the team's Apify credit. At a $3.50/1,000 price the gross margin is above 99% (the specification's conservative ceiling was $0.20/1,000).

A short, recent publishedAfter window is cheaper. Use noticeCodes or category to narrow the scan when you only need one notice type.

Output schema

Everything is validated against .actor/dataset_schema.json (JSON Schema) before it reaches the dataset. With strictSchema: true the run fails rather than push a malformed item. The same schema is exercised by the offline test suite and by CI on Node 20 and 22.

FAQ

Does it need an API key, login or subscription? No. The Gazette search feed is public and keyless. The Actor never bypasses a login, paywall or CAPTCHA.

Does it scrape the website HTML? No. It reads the official JSON feed. The per-notice linked-data view is disallowed by robots.txt and is not called. For a few official categories whose feed title is the category name (planning, environmental protection, electricity, general partner statements, other notices), the subject is recovered from the opening of the notice text; if that is ambiguous the notice is skipped.

Why are some notices missing? Natural-person notices are deliberately discarded for GDPR reasons. Notices without a confidently identifiable company/entity subject are skipped. Printed-supplement page entries are not notices and are skipped.

How do I monitor only new notices? Run on a schedule and set publishedAfter to the date of the previous run. notice_id dedupe prevents duplicates within a run. Only validated company/entity notices are charged.

Is the output schema stable? Yes. New fields are additive and required fields do not change. url and scrapedAt are always present.

Can I request a new source? Yes. Open an issue in the Steadfetch Actors repository describing the public feed you want tracked.

Development

npm install
npm test # lint + typecheck + offline fixture tests
npm run publish:check # Steadfetch publish gate
npm run build # production build

Tests run entirely offline against real feed snapshots in test/fixtures/ (including personal-notice examples), so they spend zero Apify credit.

Maintenance

This Actor is tested daily: automated runs keep the feed reachable, the extraction working and the output schema valid. Person-subject filtering is part of the test suite: a regression fails CI before anything is published.

Source, licence and attribution

  • Source: The Gazette official notice feed, Crown Copyright.
  • Licence: Open Government Licence v3.0, except personal data.
  • Steadfetch does not claim endorsement by The Gazette, The National Archives or TSO.