Skip to main content
The platform has two data domains: court rules (filing compliance for 20+ courts and 630+ judges) and enforcement intelligence (privacy enforcement actions from 21 jurisdictions). This quickstart covers court rules via the REST API. For enforcement data, see Enforcement Data and MCP: Enforcement Data. By the end of this quickstart, you will have:
  • Listed available courts and judges
  • Retrieved judge-specific filing rules
  • Run a compliance check against those rules
All from your terminal in under 5 minutes. This guide walks through four calls: discover courts, list judges, get applicable rules, and check a document. All requests require a Bearer token. See Authentication for details.
Authorization: Bearer YOUR_API_KEY

1. See the universe

Start by listing all courts to see what’s available:
curl 'https://api.courtrules.app/api/v1/courts' \
  -H "Authorization: Bearer YOUR_API_KEY"
All courts are mapped. 20+ have judge data. Your plan determines which courts you can query. Use the accessible_districts field in the response to see what’s available to you.

2. List judges in a district

curl 'https://api.courtrules.app/api/v1/judges?district_id=edny' \
  -H "Authorization: Bearer YOUR_API_KEY"
Returns all judges for the district. Use the slug field when calling /rules or /check.

3. Get rules for a judge

curl 'https://api.courtrules.app/api/v1/rules?judge_slug=gary-r-brown&district_id=edny&document_scope=brief_support&motion_type=Rule_56' \
  -H "Authorization: Bearer YOUR_API_KEY"
Returns the full rule set organized by authority layer: FRCP, Local Rules, and Standing Order.

4. Check a document

Send document metadata to the /check endpoint:
curl -X POST https://api.courtrules.app/api/v1/check \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "judge_slug": "gary-r-brown",
    "district_id": "edny",
    "document_scope": "brief_support",
    "motion_type": "Rule_56",
    "is_pro_se": false,
    "pmc_completed": true,
    "opposing_party_pro_se": false,
    "filing_role": "movant",
    "document": {
      "page_count": 18,
      "word_count": 7200
    }
  }'

Minimal vs. full document input

The document object only requires page_count and word_count. With just these two fields, the API checks:
  • Page and word limits (judge-specific and local rules)
  • Courtesy copy requirements
  • Pre-motion conference requirements
  • Filing gate and bundling rules
To get structural checks (caption, signature, required sections), provide the optional fields. See Document Structure for the full schema.

Understanding results

Each result has:
FieldDescription
severityCRITICAL, WARNING, or INFO
categoryWhat kind of rule (e.g. PAGE_LIMIT, CAPTION, PMC)
messageHuman-readable explanation
sourceCitation (e.g. FRCP 10(a), EDNY LR 7.1(c), Brown SO §2.B)
statusFAIL, PASS, or ACTION_REQUIRED
The summary status is:
  • COMPLIANT: No failures, no action items
  • REVIEW: No failures, but action items exist (e.g. courtesy copy reminder)
  • NON_COMPLIANT: At least one FAIL result

Next steps