Lawsuit Tracking automatically follows a specific lawsuit by its CNJ number. You register the CNJ, define the recurrence (in days), and Judit polls the court for you. Whenever something changes — new step, attachment or decision — you get the update via webhook or e-mail.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.
🤖 Base endpoint:POST https://tracking.production.judit.io/trackingwithsearch.search_type: "lawsuit_cnj". Tracking runs in the background, within Judit’s optimal concurrency window for each court. The first run happens within 24 hours after registration; subsequent runs follow therecurrence(in days) you set.
When to use
Active caseload
Keep every lawsuit in the firm watched by CNJ — webhooks arrive the moment a new step lands.
Deadline tracking
Get timely alerts on summons, judgments and rulings so you never miss a deadline.
Continuous sync
Keep your firm’s internal records always in sync with the lawsuit’s latest state at the court.
Keyword alerts
Use
notification_filters.step_terms to be alerted only when specific steps (e.g. “judgment”, “summons”) appear.Tracking route
To start tracking a lawsuit, you must make a POST request to the/tracking route.
Request payload
The POST request must include a payload with the following properties:-
fixed_time(required): boolean. Whether the tracker runs at the same hour every day. Whentrue, combine withhour_range(0-23) to fix the hour. Whenfalse, Judit picks the best concurrency window. -
recurrence: The recurrence, in days, for updating the lawsuits. -
search(required): Object used for the search.search_type(required): In the context of lawsuit tracking, the value of this field will always belawsuit_cnj.search_key: The lawsuit number (CNJ code) you want to search;
-
with_attachments(optional): This field defines whether you want to fetch attachments related to the searched lawsuit. It can be true or falseNote:Attachments will only be returned if search_type is lawsuit_cnj.
-
search_params: An object containing some search parameters such as:-
lawsuit_instance(optional): This parameter allows you to define the instance in which you want to search the lawsuit;*Note: If the lawsuit_instance parameter is not specified, the search will automatically return the most recent instance of the lawsuit. For example, if the lawsuit is being processed in both the first and second instances, the search will consider the second instance, as it is the most up to date.
-
-
credential(optional): Object for using the credentials vault.customer_key(optional): Allows you to pass the user key you registered in the credentials vault. If not provided, the API will try to find a credential registered for an emptycustomer_key.
-
notification_emails(optional): Array of strings outside ofsearchwhere you can add email addresses to receive notifications for every update of the registered tracking. -
step_terms: This property is an array of strings that allows you to filter lawsuit steps based on specific terms. When used together with webhook-based tracking, the user will only receive notifications if any of the specified terms is found in a new lawsuit step.
See response example
See response example
In the tracking creation response, the
hour_range field is returned, indicating the time at which the court query will be performed for the first time. In the example above, the first query is scheduled to occur at 9 PM.The tracking will be started for the first time within the best court-request concurrency window, within the next 24 hours from the creation date.
Updating a tracking
To update a tracking, you can make a PATCH request to the/tracking/{tracking} route, replacing {tracking} with the ID of the tracking you want to update.
This route accepts optional fields for updating the tracking: recurrence, tags and the search object used for the search, with the exception of some fields.
Here is an example of how to do this using curl:
Listing your trackings
To list all your trackings, you can make a GET request to the/tracking route. This route accepts some optional query parameters for paginating and filtering the results:
page: Defines the page of results you want to query.
page_size: Defines the maximum number of results you want to receive per page;
search_type: returns trackings of the specified reference type “cpf”, “cnpj”, “oab”, “lawsuit_cnj”, name or rji;
search_key: returns trackings whose search is related to the provided CPF, CNPJ, OAB or lawsuit number;
status: returns trackings whose status can be ‘created’, ‘updating’, ‘updated’, ‘paused’ or ‘deleted’, or more than one status such as [‘updating’, ‘paused’];
Here is an example of how to query your trackings using curl:
Webhook notification example for tracking
Note: Every step will be notified via webhook containing the complete lawsuit, incrementing with the latest steps.See response example
See response example
Retrieving information about a tracking
To retrieve all information about a specific tracking, you can make a GET request to the/tracking/{tracking} route, replacing {tracking} with the ID of the tracking you want to query.
Here is an example of how to do this using curl:
Retrieving the history of a tracking
To retrieve the history of responses generated by a specific tracking, make a GET request to the /tracking/ route, replacing with the desired tracking ID. You can filter the results using thecreated_at_gte and created_at_lte parameters, where:
created_at_gte: defines the start date of the query.
created_at_lte: defines the end date of the query.
Here is an example of how to do this using curl:
See response example
See response example
Pausing a tracking
To pause a tracking, you can make a POST request to the/tracking/{tracking}/pause route, replacing {tracking} with the ID of the tracking you want to pause.
Here is an example of how to pause the tracking using curl:
Resuming a tracking
To resume a paused tracking, you can make a POST request to the/tracking/{tracking}/resume route, replacing {tracking} with the ID of the tracking you want to resume.
Here is an example of how to resume a tracking using curl:
Deleting a tracking
To delete a tracking, send a DELETE request to the/tracking/{tracking_id} route, replacing {tracking_id} with the ID of the tracking you want to remove.
Example deleting a tracking with curl:
Next steps
- Tracking by Document — detect new lawsuits linked to a CPF, CNPJ or OAB.
- Custom Tracking — advanced filters (court, amount, class, phase) on top of document tracking.
- Webhook & Callbacks — delivery behavior, idempotency and redelivery.
- Mass Monitoring — practical recipe for 10k+ lawsuit portfolios.