Documentation Index
Fetch the complete documentation index at: https://docs.judit.io/llms.txt
Use this file to discover all available pages before exploring further.
New CNPJ format (IN 2229/24)Judit already accepts the new alphanumeric CNPJ format in compliance with the Brazilian Federal Revenue Normative Instruction No. 2229/2024.
- Zero effort: no changes are required in your integration.
- Test environment: use the document
A1B2C3D4/E5F6-68to validate the flow and receive a mock lawsuit in response.
🤖 Endpoint:POST https://lawsuits.production.judit.io/lawsuits/count. The response is synchronous (HTTP 200 with{ "total": <number> }) and supports the same filter object as the Hot Storage Query — tribunal, side, classes, subjects, claim amount, dates, etc.
When to use
Risk score and tiering
”≥ 5 labor lawsuits, defendant side, last 3 years = high risk.” In one call.
Portfolio dashboards
How many lawsuits does each portfolio client accumulate? Ping all of them in parallel in milliseconds.
Exposure limits
Decide credit limits or insurance policies based on lawsuit counts per class.
Pre-check before Hot Storage
Knowing the result is “0” before requesting a full list saves payload billing.
To just check whether there is a lawsuit (boolean), use
POST /lawsuits with page_size: 1. For the full lawsuit list, use POST /lawsuits (Hot Storage).Step 1: Create the query (POST)
POST https://lawsuits.production.judit.io/lawsuits/count
Payload examples
Payload parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
search.search_type | string | Yes | cpf, cnpj, oab, name, lawsuit_cnj or rji. |
search.search_key | string | Yes | Document or name to count. |
search.response_type | string | Yes | Use "lawsuits". |
search.search_params.filter | object | No | Filters (same shape as Hot Storage). |
Supported filters (search_params.filter)
Party identity and role
Party identity and role
| Filter | Type | Behavior |
|---|---|---|
side | enum | Active, Passive, Interested, Unknown. |
party_names | string[] | Filter by party exact name. |
party_documents | string[] | Filter by party CPF/CNPJ. |
Dates
Dates
| Filter | Type | Behavior |
|---|---|---|
distribution_date_gte / _lte | datetime | Distribution-date window. |
last_step_date_gte / _lte | datetime | Last-step-date window. |
Tribunals, classes and subjects
Tribunals, classes and subjects
| Filter | Type | Behavior |
|---|---|---|
tribunals | { keys, not_equal } | Includes (false) or excludes (true) the tribunals. List at Coverage. |
classification_codes / classification_names | { keys, not_equal } | Official CNJ class codes/names. |
subject_codes / subject_names | { contains, not_contains } | Official CNJ subject codes/names. |
Claim amount
Claim amount
| Filter | Type | Behavior |
|---|---|---|
amount_gte | number | Minimum claim amount. |
amount_lte | number | Maximum claim amount. |
Request example
Step 2: Read the response
Response
| Field | Type | Description |
|---|---|---|
total | number | Number of lawsuits matching the filters. |
Without filters,
total brings all datalake lawsuits linked to the queried document/name. Apply filters to tier by category (e.g. “labor on defendant side”, “civil with amount above $100k”).Patterns and tips
Fan-out for portfolios
Fan-out for portfolios
For large portfolios, fire calls in parallel (10-50 simultaneous) — the route is synchronous and lightweight. Respect your plan limits.
Combine with aggregations
Combine with aggregations
Want more than the total number? Combine with
POST /lawsuits/synthetic to receive buckets per tribunal, class, phase, side, etc. — also synchronous.Threshold tiering
Threshold tiering
Define thresholds (
>= 5 lawsuits = high tier) in your code and pass granular filters to the endpoint to refine. For example, count only labor lawsuits for a pre-employment check, or only civil with amount above $50k for credit.Avoid redundant recounts
Avoid redundant recounts
Cache
total by (document, hash of filters). Refresh every N hours per criticality. If you need fresh court data, use POST /requests.Next steps
- 👉 Has Lawsuits? (true/false) — light boolean gate.
- 👉 Hot Storage (full list) — paginated listing.
- 👉 Synthetic Aggregations — buckets per tribunal, class, phase, side.
- 👉 Asynchronous query (Requests) — fresh data from court.