UK Court Listings avatar

UK Court Listings

Pricing

from $0.60 / 1,000 hearings

Go to Apify Store
UK Court Listings

UK Court Listings

Daily hearing lists from the HMCTS Court and Tribunal Hearings service. Case number, party, hearing type, time, courtroom and judge for Crown, magistrates, civil, family, tribunal and Insolvency and Companies Court lists.

Pricing

from $0.60 / 1,000 hearings

Rating

0.0

(0)

Developer

丂卩ㄖㄖҜㄚ

丂卩ㄖㄖҜㄚ

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

🔍 What does UK Court Listings do?

UK Court Listings reads the daily hearing lists published by HMCTS on the Court and Tribunal Hearings service and returns them as structured rows: what is being heard, where, when, and before which judge. It covers around 365 courts and tribunals in England and Wales, including Crown courts, magistrates courts, civil and family courts, Social Security and Child Support tribunals, and the Business and Property Courts at the Rolls Building, where the Insolvency and Companies Court publishes its daily cause list.

The easiest way to try it is to press Start with the fields as they come. That reads the Rolls Building plus three large regional courts and returns a few hundred hearings listed for the next sitting day. To follow something specific, put a company name in Party name contains or a case prefix in Case number contains.

The Actor needs no proxy. The pages it reads are published openly by HMCTS.

📊 What data can I extract?

One row per listed hearing. Every field below is emitted on every row, and is null where the court did not publish that column for that list.

FieldTypeDescription
courtNamestringCourt or tribunal the list belongs to, as named in the service A to Z
locationIdnumberHMCTS numeric location id of the court
listTypestringTitle of the published list this hearing appeared on
listTypeSlugstringService identifier for the kind of list, for example crown-daily-list
listDatestringDay the hearings are listed for, as YYYY-MM-DD
listLastUpdatedstringWhen the court last amended this list, as printed on the page
venueSectionstringBuilding or venue heading the hearing was listed under
courtRoomstringCourtroom the hearing is listed in
judgestringJudge listed to hear the case, from the row or the section heading
hearingTimestringListed start time, in the wording the court published
hearingTypestringKind of hearing, such as a companies application or a trial
caseTypestringCase category, published by the civil and family lists
caseNumberstringCase reference, URN or appeal reference as published
caseNamestringCase name or the party named in the list, as published
applicantstringApplicant or petitioner, where the list has its own column
respondentstringRespondent, where the list has its own column
prosecutingAuthoritystringProsecuting authority on a Crown or magistrates list
tribunalstringTribunal panel or judge, published by the tribunal lists
venuestringWhere the hearing takes place, including remote and non-attendance
durationstringListed duration, published by the civil and family lists
additionalInformationstringListing notes the court added against this hearing
fieldsobjectEvery column of the source row, keyed by the heading the court used
listUrlstringPage on the hearings service this row was read from
retrievedAtstringWhen this row was collected, ISO 8601

Different list types use different column names for the same thing. A Crown court writes Case Reference, a magistrates list writes URN, a tribunal writes Appeal reference number. UK Court Listings maps all of them onto caseNumber so one query works across every court, and keeps the original headings in fields so nothing published is lost.

💡 Why monitor court hearing lists?

  • Winding up and insolvency. The Insolvency and Companies Court publishes its daily cause list at the Rolls Building. Filter listTypes to insolvency and you get the companies applications, petitions and interim hearings listed for that day, with case numbers and company names.
  • Litigation tracking. Put a case number prefix in caseNumberContains and the same case reappears in the dataset every time it is relisted, with the new date, room and judge.
  • Counterparty watch. Put a company name in partyContains and the run returns any hearing on that day naming it, across every court you selected, whether the company is applicant, respondent or the case name.
  • Court reporting. Journalists covering a specific court get the whole day's list in one call, with courtroom and judge, rather than clicking through a court at a time.
  • Judicial listings. judgeContains follows one judge's list across courts and days.
  • Coverage planning. Run with no court filter and a high maxCourts to see everything listed nationally for the next sitting day.

🚀 How do I use UK Court Listings?

  1. Click Try for free on the Apify Store listing, or open the Actor in Apify Console.
  2. Leave the input as it comes for a first run, or type court names into Court or tribunal names. Names match as a substring, so Manchester reaches every Manchester court.
  3. Narrow the lists if you want a specific kind, for example insolvency or crown in List types.
  4. Narrow the hearings with Case number contains, Party name contains, Hearing type contains or Judge name contains. They combine as AND.
  5. Press Start and wait. A four court run finishes in well under a minute.
  6. Download the results as JSON, CSV, Excel or XML from the Storage tab, or pull them from the API using the examples below.
  7. To keep watching a court or a case, open Schedules and run it every morning. Lists appear the working day before the hearing.

⬇️ Input

FieldTypeDefaultWhat it does
courtNamesarrayemptyCourt names to read, matched as a case insensitive substring. Empty means every court
locationIdsarrayemptyNumeric HMCTS location ids, used instead of or alongside the names
maxCourtsinteger25Hard cap on how many matching courts are visited
listTypesarrayemptyKeep only lists whose type contains one of these words
listDateFromstringemptyKeep only lists dated on or after this day, YYYY-MM-DD
listDateTostringemptyKeep only lists dated on or before this day, YYYY-MM-DD
includeWelshbooleanfalseInclude the Welsh language edition of a bilingual list
caseNumberContainsstringemptyKeep only hearings whose case number contains this text
partyContainsstringemptyKeep only hearings naming this party in any party column
hearingTypeContainsstringemptyKeep only hearings of this kind
judgeContainsstringemptyKeep only hearings before a judge whose name contains this text
maxHearingsinteger1000Hard cap on hearings saved, and so on what one run can cost

Every filter is applied by the Actor to rows it has already parsed, and each one is covered by a test that checks the filter narrowed the result and that every remaining row satisfies it.

{
"courtNames": ["Business and Property Courts Rolls Building"],
"listTypes": ["insolvency"],
"maxCourts": 1,
"maxHearings": 500
}

⬆️ Output

Table view

listDatehearingTimecourtNamecourtRoomcaseNumbercaseNamehearingTypejudge
2026-08-1710:30amBusiness and Property Courts Rolls BuildingBR-2025-001331Example PersonPre-trial reviewChief Insolvency and Companies Court Judge Briggs
2026-08-1712pmBusiness and Property Courts Rolls BuildingCR-2026-003628Example Trading LimitedCompanies applicationChief Insolvency and Companies Court Judge Briggs
2026-08-1710amPlymouth Combined CourtCourtroom 01183DC462Example v Example Foam Products LimitedPTR Hearing (Civil)Her Honour Judge Ingham

JSON

{
"courtName": "Business and Property Courts Rolls Building",
"locationId": 111,
"listType": "Insolvency and Companies Court (Chancery Division) Daily Cause List 17 August 2026",
"listTypeSlug": "insolvency-and-companies-court-chd-daily-cause-list",
"listDate": "2026-08-17",
"listLastUpdated": "14 August 2026 at 4:43pm",
"venueSection": null,
"courtRoom": null,
"judge": "Chief Insolvency and Companies Court Judge Briggs",
"hearingTime": "12pm",
"hearingType": "Companies application",
"caseType": null,
"caseNumber": "CR-2026-003628",
"caseName": "Example Trading Limited",
"applicant": null,
"respondent": null,
"prosecutingAuthority": null,
"tribunal": null,
"venue": "Remotely via MS Teams",
"duration": null,
"additionalInformation": null,
"fields": {
"Judge": "Chief Insolvency and Companies Court Judge Briggs",
"Time": "12pm",
"Venue": "Remotely via MS Teams",
"Type": "Companies application",
"Case number": "CR-2026-003628",
"Case name": "Example Trading Limited",
"Additional information": null
},
"listUrl": "https://www.court-tribunal-hearings.service.gov.uk/insolvency-and-companies-court-chd-daily-cause-list?artefactId=71ada28b-6e93-4cac-ae77-9985837308da",
"retrievedAt": "2026-08-16T13:24:07.512Z"
}

📋 What the source publishes, and what this Actor adds

This matters, because court and insolvency lists name people.

HMCTS publishes these lists openly, with no sign-in, under the Open Justice Licence and its own publishing policy. A daily list carries the case reference, the parties or the defendant's name, the hearing type, the time, the courtroom and the judge, because a hearing in open court is public and the list is how the public and the press find it.

UK Court Listings adds nothing to that. It does not enrich a name against Companies House, a credit file, an address register or any other source. It does not infer, score, classify or link individuals. It reshapes the published page into rows and returns the same words the court printed, with listUrl on every row so any value can be checked against its source.

Two properties of the source are worth knowing before you build on it:

  • Lists are short lived. A list is published the working day before the hearing and comes down once that day has passed. There is no archive on the service, so a history has to be built by running on a schedule and keeping the results.
  • Lists change. Courts amend a list during the day, which is why listLastUpdated is on every row. The same hearing can appear on an original and an amended list, and the Actor removes those duplicates within a run.

Handling this data means handling personal data, and that is your responsibility as the controller. The lawful basis, the retention period and the question of whether a given use is fair are yours to decide, not ours. Court lists are published for open justice, and republishing them for another purpose is a decision worth taking with advice.

🌍 What is covered, and what is not

Covered: England and Wales, and some non-devolved tribunals sitting in Scotland, exactly as the service itself covers them. Around 365 courts and tribunals, including Crown, magistrates, county, civil and family courts, the Business and Property Courts, administrative courts, Social Security and Child Support tribunals, and Single Justice Procedure lists.

Not covered, because the service does not publish them: the Scottish courts, the Northern Ireland Courts and Tribunals Service, and any hearing held in private. A court with nothing listed publishes no list at all, which the Actor reports as an empty result rather than an error.

💰 How much does it cost?

UK Court Listings uses Apify's pay per event pricing. It charges one hearing-listed event for each hearing saved to the dataset, plus Apify's standard Actor start event. Nothing else is charged: reading the A to Z of courts and reading each court's index of published lists are free.

The live price per hearing is shown on the Actor's Store listing, above this page. To work out what a run will cost, multiply that figure by the hearings you expect:

  • One day of the Insolvency and Companies Court daily cause list is around 10 to 30 hearings.
  • One large magistrates court for one day is around 100 hearings.
  • One Crown court for one day is around 40 to 50 hearings.
  • The default input, four courts for one day, saved 300 hearings when this page was written.

maxHearings is the ceiling on a run, so it is also the ceiling on the cost of that run. Set it to what you actually need and a run cannot surprise you. A run that matches nothing saves nothing and therefore charges nothing beyond the start event.

You need an Apify account to run it. The free tier includes monthly platform credit, which is enough to try this Actor properly.

🔌 Integrations

UK Court Listings is an ordinary Apify Actor, so everything the platform offers applies to it:

  • Schedules run it every morning, which is how you turn a service with no archive into a history you own.
  • Webhooks fire when a run finishes, so a new hearing on a case you are watching can raise an alert the moment it is found.
  • Integrations push results straight into Slack, Google Sheets, Airtable, Zapier, Make or a webhook of your own.
  • Monitoring alerts you when a scheduled run fails or returns less than you expected.
  • MCP exposes the Actor to AI agents, which can call it with the same inputs described above.

🔗 Using UK Court Listings with the Apify API

Start a run and wait for the results in one call:

curl -X POST "https://api.apify.com/v2/acts/spookyweb~uk-court-listings/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"courtNames": ["Business and Property Courts Rolls Building"],
"listTypes": ["insolvency"],
"maxHearings": 200
}'

With the JavaScript client:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('spookyweb/uk-court-listings').call({
courtNames: ['Manchester Crown Court'],
partyContains: 'Limited',
maxHearings: 500,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

With the Python client:

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("spookyweb/uk-court-listings").call(run_input={
"listTypes": ["insolvency"],
"maxCourts": 5,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["caseNumber"], item["caseName"], item["hearingTime"])

❓ FAQ

Do I need an account or an API key for the court service?

No. The Court and Tribunal Hearings service publishes these lists openly, and the Actor reads the same pages a member of the public reads.

How far ahead and how far back do the lists go?

Lists are published the working day before the hearing and are removed once the day has passed, so in practice you see today and the next sitting day. The service keeps no archive, so if you need history, schedule the Actor daily and keep the dataset.

Why did my run return nothing?

Most often because the courts you chose have nothing listed. A court with no hearings publishes no list, which is normal and not an error, so the run finishes successfully with zero rows. It can also mean a court name did not match, or that the case, party, hearing type or judge filters were too narrow. The run log says which of the three happened.

How do I find winding up petitions and insolvency hearings?

Set courtNames to Business and Property Courts Rolls Building and listTypes to insolvency. That returns the Insolvency and Companies Court daily cause list, which is where companies applications, petitions and interim hearings are listed at the Rolls Building. District registries publish their own insolvency hearings within their local lists.

Are the filters actually applied?

Yes, and it is tested rather than assumed. The service takes no filter parameters of its own, so all filtering happens inside the Actor on rows it has parsed. The test suite asserts for each filter that it narrowed the result and that every surviving row satisfies it.

Can I search by court name if I do not know the exact wording?

Yes. Court names match as a case insensitive substring with punctuation ignored, so Manchester finds every Manchester court and magistrates finds every magistrates court. Set maxCourts to control how many of the matches are actually read.

Does it use a browser or a proxy?

Neither. The pages are server rendered, so the Actor makes plain HTTP requests. That keeps it fast, cheap and well within a small memory allocation.

Is it polite to the service?

Yes. It reads at most two pages at a time with a delay between requests, honours Retry-After, backs off on HTTP 429 and 5xx, and slows itself down for the rest of the run after being throttled.

Are the names in the results real people?

Yes, where the court published a name. Criminal, insolvency and family lists name defendants, parties and appellants because hearings are held in open court. Please read what the source publishes before you build anything on this data.

Collecting publicly published information is legal in the UK and the EU, and HMCTS publishes these lists deliberately so the public and the press can find hearings. They carry the Open Justice Licence and sit under Crown copyright. This Actor requests those pages the way a browser does and adds nothing to them.

What you then do with the data is a separate question, and it is yours. These lists contain personal data, so under UK GDPR you become the controller the moment you store them. The Open Justice Licence sets conditions on reuse, reporting restrictions apply to some hearings and are noted on the lists themselves, and contempt of court rules apply to what is published about live proceedings. None of this is legal advice. If you plan to republish or make decisions about people from this data, take advice first.

👍 Your feedback

Found a court that parses badly, a column that is not mapped, or a list type that is missed? Open an issue on the Actor's Issues tab and it will be looked at. Requests for extra fields, other list types or a different output shape are welcome, and if you need something related built as a custom Actor, say so in an issue.

🔎 You might also like