Sign inTry it

Search UK court judgments in Find Case Law.

Searches Find Case Law (The National Archives) like its search page: judgment or decision title, link, court or tribunal (not returned by the list), and handed-down date, in the site's order. First page of results only.

No reports yetRead-only, no login
Site
Find Case Law, United Kingdom
Version
v1
Runs, last 7 days
No reports yet
sha256
392410ca2be4…

Run it with your agent

after installing Wield

Ask in plain words. Your agent finds this recipe and calls it:

“Search UK court judgments in Find Case Law.”

Read-only: it changes nothing on the site. No login needed.

{
  "tool": "run",
  "arguments": {
    "recipe_id": "caselaw.nationalarchives.gov.uk/search-government",
    "params": {
      "query": "employment tribunal"
    }
  }
}

Requests

sent from your browser, in order
  1. 1GET/search?queryServer-rendered search results page /search?query=…; read-only GET. Each judgment is one tbody of the results table: its first link carries the title and path, and a time element carries the handed-down date. The page's q parameter is ignored by the site, so query is used.

Parameters

from your agent
querystringrequiredKeywords, party names or a neutral citation, e.g. 'employment tribunal', 'unfair dismissal', '[2026] EWHC 2870'

Returns

to your agent
judgmentsobject[]handed_down, title, url
querystring

Where it can send

  • caselaw.nationalarchives.gov.uk

Anything else is blocked by the extension.

Reads from your session

Nothing. Your browser attaches the site's cookies by itself.

Used only in requests to the addresses on the left. Never sent to wield.run or your agent.

Checks

a run passes when
  • length(output.judgments) > `0`
  • length(output.judgments[?starts_with(url, 'https://caselaw.nationalarchives.gov.uk/')]) == length(output.judgments)
  • length(output.judgments[?title != `null`]) == length(output.judgments)

Raw recipe

Served as canonical JSON from /api/v1/recipes/caselaw.nationalarchives.gov.uk/search-government, so its sha256 matches the ETag and the index.

Check it yourself
curl -s https://wield.run/api/v1/recipes/caselaw.nationalarchives.gov.uk/search-government | shasum -a 256
# 392410ca2be4fa54fbbe02d3ddcc59a70c8aea06c1e844c23440a3d8418ff384
caselaw.nationalarchives.gov.uk/search-government.json, v1
{
  "description": "Searches Find Case Law (The National Archives) like its search page: judgment or decision title, link, court or tribunal (not returned by the list), and handed-down date, in the site's order. First page of results only.",
  "effect": "read",
  "id": "caselaw.nationalarchives.gov.uk/search-government",
  "keywords": [
    "find case law",
    "case law",
    "judgments",
    "court",
    "tribunal",
    "legal",
    "law",
    "national archives",
    "uk",
    "employment tribunal",
    "unfair dismissal",
    "copyright",
    "rulings",
    "decisions"
  ],
  "output": {
    "schema": {
      "properties": {
        "judgments": {
          "items": {
            "properties": {
              "handed_down": {
                "description": "Date handed down, YYYY-MM-DD",
                "type": [
                  "string",
                  "null"
                ]
              },
              "title": {
                "description": "Case name, e.g. 'X v The Secretary of State for the Home Department'",
                "type": "string"
              },
              "url": {
                "description": "Absolute URL of the judgment on Find Case Law",
                "type": "string"
              }
            },
            "required": [
              "title",
              "url"
            ],
            "type": "object"
          },
          "type": "array"
        },
        "query": {
          "type": "string"
        }
      },
      "required": [
        "query",
        "judgments"
      ],
      "type": "object"
    },
    "value": "{query: params.query, judgments: steps.search.judgments[?title != `null` && href != `null`].{title: title, url: join('', ['https://caselaw.nationalarchives.gov.uk', split(href, '?')[0]]), handed_down: (handed_down && split(handed_down, ' ')[0]) || `null`}}"
  },
  "params": {
    "additionalProperties": false,
    "properties": {
      "query": {
        "description": "Keywords, party names or a neutral citation, e.g. 'employment tribunal', 'unfair dismissal', '[2026] EWHC 2870'",
        "maxLength": 100,
        "minLength": 2,
        "type": "string"
      }
    },
    "required": [
      "query"
    ],
    "type": "object"
  },
  "provenance": {
    "method": "har",
    "notes": "GET /search?query=…: the server-rendered HTML holds the first page of judgments as tbody blocks of the results table (documents-table). Each block's first link is the case title and path; the time element holds the handed-down date. The q parameter from the work item does not filter (it returns the whole index), so query is used. Court names are in the table row but are not extracted because they have no stable attribute.",
    "recorded_at": "2026-11-08T16:55:00.000Z",
    "recorded_by": "wield-forge (claude-haiku agent)"
  },
  "requires_login": false,
  "schema": "https://wield.run/schema/recipe/v1.json",
  "site": {
    "country": "GB",
    "id": "caselaw.nationalarchives.gov.uk",
    "language": "en",
    "name": "Find Case Law",
    "origin": "https://caselaw.nationalarchives.gov.uk",
    "origins": [
      "https://caselaw.nationalarchives.gov.uk"
    ]
  },
  "steps": [
    {
      "description": "Server-rendered search results page /search?query=…; read-only GET. Each judgment is one tbody of the results table: its first link carries the title and path, and a time element carries the handed-down date. The page's q parameter is ignored by the site, so query is used.",
      "expect": {
        "content_type": "html",
        "status": [
          200
        ]
      },
      "extract": {
        "html_items": {
          "judgments": {
            "fields": {
              "handed_down": {
                "attr": "datetime",
                "selector": "time"
              },
              "href": {
                "attr": "href",
                "selector": "a"
              },
              "title": {
                "selector": "a"
              }
            },
            "max": 50,
            "selector": ".documents-table tbody"
          }
        }
      },
      "id": "search",
      "request": {
        "headers": {
          "Accept": "text/html"
        },
        "method": "GET",
        "query": {
          "query": "{{params.query}}"
        },
        "url": "/search"
      }
    }
  ],
  "task": "Search UK court judgments in Find Case Law",
  "tos": {
    "notes": "Not reviewed. One search page per call, the same page a visitor loads. The site's terms on automated access were not checked.",
    "reviewed": false
  },
  "verify": {
    "checks": [
      "length(output.judgments) > `0`",
      "length(output.judgments[?starts_with(url, 'https://caselaw.nationalarchives.gov.uk/')]) == length(output.judgments)",
      "length(output.judgments[?title != `null`]) == length(output.judgments)"
    ],
    "example_params": {
      "query": "employment tribunal"
    },
    "max_ms": 5000
  },
  "version": 1
}