id names one resolution.
The whole source, organized and ready to query: every endpoint on this page answers in milliseconds. Every response carries
as_of: how current the data is. How datasets work.Search the resolutions
POST /bo/tsj-bo/rulings-search/v1 Dataset
One search over the full text and the jurisprudence notes of every resolution since 2001, filtered by chamber, kind of resolution, area of law, outcome, number, reporting justice, department, year or date.
as_of (how current the data is), the applied filters, total and total_is_exact, page, per_page, total_pages, count and results[], most recent resolution first. Every result carries id (the resolution’s permanent number, e.g. 11378), registration_number (the resolution number, e.g. AS/0001/2010), case_number (the expediente), ruling_date, year, chamber, type (auto_supremo, sentencia or resolucion) with type_label and subtype, outcome (how the court resolved, e.g. Infundado, Casa), subject (the area of law), proceeding, department, reporting_judge, jurisprudence (the court’s jurisprudence notes, each with kind, descriptor, restrictor, ratio_decidendi, maxim, summary and precedent), descriptors, text_status (ok, scanned or missing), document_kind (scan, rendering or none), official_url (the resolution’s page on the court’s site), document_url (Croma’s copy of the document, byte for byte as the court served it, which stays available whatever happens to the court’s link) and source_document_url (where the court publishes the document: the scan’s own link, or the resolution’s page). Fields the court leaves empty are null or empty lists; party names are never included.
Search results leave out the text.
query still matches against it, so a phrase from the body finds the resolution; read the text itself with the Tribunal Supremo de Justicia de Bolivia Ruling endpoint.One resolution, in full
POST /bo/tsj-bo/ruling/v1 Dataset
as_of, found, ruling_id and ruling, which carries everything the search returns plus content: a window onto the resolution’s full text, with text, offset, total_length, has_more and next_offset. Every result carries id (the resolution’s permanent number, e.g. 11378), registration_number (the resolution number, e.g. AS/0001/2010), case_number (the expediente), ruling_date, year, chamber, type (auto_supremo, sentencia or resolucion) with type_label and subtype, outcome (how the court resolved, e.g. Infundado, Casa), subject (the area of law), proceeding, department, reporting_judge, jurisprudence (the court’s jurisprudence notes, each with kind, descriptor, restrictor, ratio_decidendi, maxim, summary and precedent), descriptors, text_status (ok, scanned or missing), document_kind (scan, rendering or none), official_url (the resolution’s page on the court’s site), document_url (Croma’s copy of the document, byte for byte as the court served it, which stays available whatever happens to the court’s link) and source_document_url (where the court publishes the document: the scan’s own link, or the resolution’s page). Fields the court leaves empty are null or empty lists; party names are never included.
Long resolutions are read a range at a time: send
offset and limit, then pass the response’s next_offset back as offset until has_more is false. content is null when text_status is not ok; document_url still gives the document when the court published one.An
id the court has not published returns found: false with HTTP 200, not an error.Full reference
Schemas, all response fields, and an interactive playground.