Discover/OSCN API
live

OSCN APIoscn.net

Access Oklahoma State Court Network records via API. Search cases across 80+ counties, retrieve docket entries, party info, and daily filing reports.

Endpoint health
verified 19h ago
list_counties
list_district_court_case_types
search_cases
get_daily_filings_by_county
get_case_details
5/5 passing latest checkself-healing
Endpoints
5
Updated
22d ago

What is the OSCN API?

The OSCN API provides structured access to Oklahoma State Court Network records through 5 endpoints covering case search, docket details, and daily filing reports across 80+ counties. Use search_cases to filter by party name, case type, or filing date range, then pass the returned cmid to get_case_details to retrieve the full docket — including party roles, judge assignment, and linked documents.

Try it

No input parameters required.

api.parse.bot/scraper/36371741-d78c-4d8e-8eac-70ab6b987f9f/<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/36371741-d78c-4d8e-8eac-70ab6b987f9f/list_counties' \
  -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 oscn-net-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.

from parse_apis.oklahoma_court_records_oscn_api import OSCN, County, CaseType, CaseSummary, Case, Filing

oscn = OSCN()

# List available counties
for county in oscn.counties.list():
    print(county.id, county.name)

# List case types
for case_type in oscn.casetypes.list():
    print(case_type.id, case_type.name)

# Search for criminal felony cases in Tulsa
for case_summary in oscn.casesummaries.search(db="tulsa", case_type="31", filed_date_l="06/01/2026", filed_date_h="06/05/2026"):
    print(case_summary.case_number, case_summary.style, case_summary.date_filed)
    # Drill into full details
    full_case = case_summary.details()
    print(full_case.header.style, full_case.header.judge)
    for entry in full_case.docket_entries:
        print(entry.date, entry.code, entry.description)

# Get case details directly
case = oscn.cases.get(db="tulsa", case_number="CF-2026-2214")
print(case.case_number, case.url)
for party in case.parties:
    print(party.name, party.role)

# Get daily filings
for filing in oscn.filings.list_by_county(date="06/05/2026", db="Tulsa"):
    print(filing.case_number, filing.style, filing.db)
All endpoints · 5 totalmissing one? ·

Returns all Oklahoma county/court database identifiers available for search. Each entry includes a lowercase id (e.g., 'tulsa', 'oklahoma') and the full court name. Use the id value as the db parameter in other endpoints.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "items": "array of county objects with id and name"
  },
  "sample": {
    "data": {
      "items": [
        {
          "id": "tulsa",
          "name": "Tulsa County District Court"
        },
        {
          "id": "oklahoma",
          "name": "Oklahoma County District Court"
        }
      ]
    },
    "status": "success"
  }
}

About the OSCN API

Case Search and Lookup

The search_cases endpoint accepts combinations of db (county identifier), lname/fname (party name), case_type (numeric code from list_district_court_case_types), case_number, and a filing date range via filed_date_l and filed_date_h in MM/DD/YYYY format. Results are capped at 500 by the source; narrow the date range to page through dense result sets. Each result returns a case_number, date_filed, style, found_party, and a cmid (Case Master ID) used to fetch full details.

Case Details and Dockets

get_case_details takes a case_number and db and returns a header object (Style, Case Number, Filed date, Judge), a parties array with each party's name and role, and a docket_entries array. Each docket entry includes a date, code, description, and a documents array with links to associated filings. Passing the cmid from search results is recommended when multiple cases share a case number to ensure the correct record is returned.

County and Case Type Reference Endpoints

list_counties returns the full set of county/court database identifiers — the lowercase id values (e.g., tulsa, oklahoma) that power the db parameter across all other endpoints. list_district_court_case_types returns numeric codes and labels (e.g., 31 for Criminal Felony, 7 for Probate) used as the case_type filter in search_cases.

Daily Filing Reports

get_daily_filings_by_county retrieves the filing report for a specific county on a given past date. The db parameter must be capitalized (e.g., Tulsa, not tulsa), and the date must be a completed past day — the current day returns empty results. Coverage is limited to approximately 13 counties including Tulsa and Oklahoma County. Each filing in the response includes case_number, style, url, cmid, and db.

Reliability & maintenanceVerified

The OSCN API is a managed, monitored endpoint for oscn.net — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when oscn.net 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 oscn.net 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
19h 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
  • Monitor daily court filings in Tulsa or Oklahoma County using get_daily_filings_by_county to track new cases by date.
  • Build a party-name lookup tool using search_cases with lname/fname to find all cases involving a specific individual.
  • Pull full docket histories for civil or criminal cases using get_case_details to extract docket_entries with document links.
  • Aggregate probate or felony filings over a date range by combining case_type with filed_date_l and filed_date_h in search_cases.
  • Populate a legal research database with judge assignments and party roles from the header and parties fields in get_case_details.
  • Cross-reference case activity across multiple Oklahoma counties by iterating over ids from list_counties.
  • Alert on new filings matching a specific party name by scheduling daily calls to search_cases filtered by lname.
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 OSCN have an official developer API?+
OSCN does not publish an official developer API. The site at oscn.net provides a public-facing web interface for court record lookups, but no documented REST or data API is available to developers.
What does get_case_details actually return — is it just header metadata?+
No, it returns three main sections: a header object with Style, Case Number, Filed date, and Judge; a parties array listing each party's name and role; and a docket_entries array where each entry has a date, code, description, and a documents array containing links to associated court documents.
Why does search_cases sometimes return fewer results than expected?+
The source caps results at 500 matches per query. If a combination of filters matches more than 500 cases, only the first 500 are returned. Narrowing the filed_date_l to filed_date_h range is the recommended way to paginate through large result sets. Searching by case_number alone can also be slow or time out on some counties.
Does the daily filings endpoint cover all 80+ counties?+
No — get_daily_filings_by_county currently covers approximately 13 counties, including Tulsa and Oklahoma County. The broader search_cases and get_case_details endpoints cover 80+ counties. You can fork this API on Parse and revise it to extend daily filing coverage to additional counties.
Can I retrieve appellate court records or Supreme Court opinions through this API?+
Not currently. The API covers district court cases, dockets, and daily filings across Oklahoma counties accessible through OSCN. Appellate or Supreme Court records are not exposed by the current endpoints. You can fork this API on Parse and revise it to add an endpoint targeting those record types.
Page content last updated . Spec covers 5 endpoints from oscn.net.
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.
examplecourt.gov API
Search and retrieve court judgments, case details, and legal metadata from a national court reporting portal, with support for advanced filtering by court and case category. Access complete case information including full text and browse paginated results to find relevant legal precedents.
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.
publicaccess.hillsclerk.com API
Search and retrieve court records, foreclosure judgments, and case details from Hillsborough County's court system by case number, date range, or court type. Access comprehensive legal documentation including foreclosure judgment information to research pending cases and court proceedings.
sarasotaclerk.com API
Search and retrieve official land and court records from Sarasota County including foreclosures and Lis Pendens documents by name, date, or document type. Access detailed record information with full pagination support to find the specific legal documents you need.
indiankanoon.org API
indiankanoon.org API
naco.org API
Search and explore detailed U.S. county government information, including profiles, economic indicators, funding data, and research resources all in one place. Quickly access bulk county statistics and NACo insights to support planning, analysis, and decision-making at the local government level.
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.