Discover/Examplecourt API
live

Examplecourt APIexamplecourt.gov

Access Kenyan court judgments, case metadata, full ruling text, court listings, and document categories via 5 structured endpoints from the Kenya Law portal.

Endpoint health
verified 6d ago
search_cases
list_cases
list_courts
list_case_categories
get_case_details
5/5 passing latest checkself-healing
Endpoints
5
Updated
21d ago

What is the Examplecourt API?

The Kenya Law API exposes 5 endpoints covering full-text search, paginated case listings, detailed judgment retrieval, court directory data, and document category facets from Kenya's national court reporting portal. Use search_cases to query judgments by keyword and date range, or get_case_details to retrieve the full text, judge names, case number, court station, and case action for any individual ruling.

Try it
Page number for pagination.
Search keyword or phrase (e.g. 'murder', 'land dispute'). If omitted, returns all judgments.
Filter cases up to this date in YYYY-MM-DD format.
Filter cases from this date in YYYY-MM-DD format.
api.parse.bot/scraper/0732f9fc-ccaf-461f-989e-ee9f37e6fbe2/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/0732f9fc-ccaf-461f-989e-ee9f37e6fbe2/search_cases?page=1&query=murder&date_to=2026-07-07&date_from=2024-07-07' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace examplecourt-gov-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Kenya Law API — search cases, browse courts, get full judgments."""
from parse_apis.court_judgments_api import KenyaLaw, CaseNotFound

client = KenyaLaw()

# Search for murder cases, capped at 3 results
for case in client.cases.search(query="murder", limit=3):
    print(case.title, case.date, case.court)

# Browse recent case summaries and drill into the first one
summary = client.casesummaries.list(limit=1).first()
if summary:
    detail = summary.details()
    print(detail.title, detail.judgment_date, detail.full_text[:200])

# List available courts
for court in client.courts.list(limit=5):
    print(court.name, court.code)

# List document type categories with counts
for cat in client.categories.list(limit=3):
    print(cat.name, cat.count)

# Fetch a specific case by URL with typed error handling
try:
    specific = client.cases.get(url="/akn/ke/judgment/kehc/2023/22140/eng@2023-09-11")
    print(specific.title, specific.court_station, specific.judges)
except CaseNotFound as exc:
    print(f"Case not found: {exc}")

print("exercised: cases.search / casesummaries.list / details / courts.list / categories.list / cases.get")
All endpoints · 5 totalmissing one? ·

Full-text search over Kenyan court judgments. Matches title and body text; results ordered by relevance score. Supports date-range filtering. Paginates server-side (10 results per page). When query is omitted, returns all judgments ordered by score.

Input
ParamTypeDescription
pageintegerPage number for pagination.
querystringSearch keyword or phrase (e.g. 'murder', 'land dispute'). If omitted, returns all judgments.
date_tostringFilter cases up to this date in YYYY-MM-DD format.
date_fromstringFilter cases from this date in YYYY-MM-DD format.
Response
{
  "type": "object",
  "fields": {
    "page": "integer current page number",
    "total": "integer total number of matching cases",
    "results": "array of case objects with title, url, date, court, citation, case_number, judges, and registry"
  },
  "sample": {
    "data": {
      "page": 1,
      "total": 10000,
      "results": [
        {
          "url": "https://new.kenyalaw.org/akn/ke/judgment/kehc/2023/26701/eng@2023-12-21",
          "date": "2023-12-21",
          "court": "High Court",
          "title": "Republic v Loriu (Murder Case 32 of 2017) [2023] KEHC 26701 (KLR) (21 December 2023) (Judgment)",
          "judges": [
            "CM Kariuki"
          ],
          "citation": "Republic v Loriu [2023] KEHC 26701 (KLR)",
          "registry": "High Court at Nyahururu",
          "case_number": [
            "Murder Case 32 of 2017"
          ]
        }
      ]
    },
    "status": "success"
  }
}

About the Examplecourt API

Case Search and Listing

The search_cases endpoint accepts a query string (e.g. 'land dispute', 'murder') and optional date_from / date_to parameters in YYYY-MM-DD format. Results are ordered by relevance score and paginate server-side at 10 per page. Each result includes title, url, date, court, citation, case_number, judges, and registry. When query is omitted, the endpoint returns all judgments ordered by score. The list_cases endpoint returns the 20 most recent judgments per page without any filtering — useful for monitoring new filings.

Case Details

get_case_details takes a url path obtained from search_cases or list_cases and returns the complete record for a single judgment: full_text of the ruling, court, title, judges, case_number, court_station, language, type, and case_action (values include Ruling, Judgment, and similar). Fields that the source does not populate are returned as null. This is the primary endpoint for extracting the actual legal reasoning and outcome of a case.

Courts and Document Categories

list_courts returns two arrays: courts (each with name, code, and url) and court_classes (each with name, slug, and url). Court classes group courts into tiers such as Superior Courts, Subordinate Courts, and Tribunals. list_case_categories returns categories (document types like Judgment, Gazette, Bill, each with a count and type field) and courts with per-court case counts drawn from search facets — useful for understanding the distribution of documents across the portal before issuing targeted queries.

Reliability & maintenanceVerified

The Examplecourt API is a managed, monitored endpoint for examplecourt.gov — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when examplecourt.gov changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official examplecourt.gov API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
6d ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a legal research tool that lets lawyers search Kenyan precedent by keyword and filter results to a specific date range using search_cases.
  • Monitor new court filings daily by polling list_cases and alerting when cases matching certain titles appear.
  • Extract the full text of rulings via get_case_details to feed into NLP pipelines for legal summarization or classification.
  • Map the Kenyan court hierarchy by consuming list_courts court classes and codes for directory or reference applications.
  • Analyze document-type distribution across the portal using the count fields returned by list_case_categories.
  • Aggregate citations and registries from search_cases results to study which courts produce the most judgment activity in a given period.
  • Cross-reference judge names from get_case_details responses to build profiles of judicial output over time.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Kenya Law have an official developer API?+
Kenya Law (kenyalaw.org) does not publish a documented public REST API for programmatic access to its case database. This Parse API provides structured access to the same content.
What does `get_case_details` return beyond basic metadata?+
get_case_details returns the complete full_text of the ruling alongside structured fields: court, judges, case_number, court_station, language, type, case_action (e.g. Ruling or Judgment), and the canonical url. Fields not populated by the source return null rather than being omitted.
Can I filter `search_cases` results by a specific court or judge?+
The search_cases endpoint currently supports filtering by query, date_from, and date_to only. Court-level and judge-level filtering are not available as dedicated parameters. You can fork this API on Parse and revise it to add court or judge filter parameters if needed.
Does `list_cases` return the full judgment text, or just titles?+
list_cases returns only title and url per case — it is a lightweight index endpoint. To get the full text, ruling metadata, and judge information, pass the returned url to get_case_details.
Are tribunal decisions and gazette documents covered, not just court judgments?+
The list_case_categories endpoint exposes document type categories including Gazette and Bill entries in addition to Judgments, indicating the portal indexes multiple document types. However, the current endpoints are optimized around court judgments; dedicated filtering or listing by non-judgment document type is not built in. You can fork the API on Parse and revise it to add endpoints scoped to specific document categories.
Page content last updated . Spec covers 5 endpoints from examplecourt.gov.
Related APIs in Government PublicSee all →
ecourtsindia.com API
Search and retrieve detailed information about court cases across India's Supreme Court, High Courts, and District Courts from a database of over 239 million cases. Find case details, track legal proceedings, and access comprehensive court records to stay informed about judicial matters across the Indian court system.
judgments.ecourts.gov.in API
Search for Indian court judgments and orders across multiple courts to access legal rulings, case decisions, and judicial orders. Find relevant court cases by searching through a comprehensive database of Indian judicial decisions.
bailii.org API
Search and retrieve court judgments and case law from British and Irish courts across multiple jurisdictions, with filtering by date range and location. Access complete case details including full judgment text and metadata to research legal precedents and decisions.
indiankanoon.org API
indiankanoon.org API
judyrecords.com API
Search and retrieve detailed court records including case information and statistics from a comprehensive legal database. Access specific case details and view aggregated court record stats to research legal proceedings and case outcomes.
scholar.google.com API
Search and retrieve case law from Google Scholar by keyword, with optional filtering by date range and court type. Fetch full case details including citations, court, and opinion text for any case returned by search.
oscn.net API
Search Oklahoma State Court Network records across 80+ counties to find cases, review detailed docket information, and track daily court filings. Quickly look up case details by county and district court type to stay informed on legal proceedings and filing activity.
livelaw.in API
Access Supreme Court and High Court judgments, legal news, articles, and digests from LiveLaw.in, with the ability to filter by year, category, and author. Stay updated on the latest legal developments, court decisions, and expert legal analysis across Indian courts.