Philippine Supreme Court Decisions Scraper
Pricing
from $1.40 / 1,000 results
Philippine Supreme Court Decisions Scraper
Full-text search and bulk export of Philippine Supreme Court decisions from the Judiciary's official free E-Library (1996-present). Returns case number, parties, division, ponente, promulgation date, Philippine Reports citation and the complete opinion text. No account needed.
Pricing
from $1.40 / 1,000 results
Rating
0.0
(0)
Developer
Faisal Ahdan naufal
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Search and export Philippine Supreme Court decisions from the Judiciary's own free archive — the Supreme Court E-Library. No account, no API key, no login.
You get the case number, the parties, the deciding division, the ponente, the promulgation date, the Philippine Reports citation and the complete opinion text — as the Court itself prints them.
What you can do
| Mode | Use it for |
|---|---|
| Full-text search | Every decision mentioning a doctrine, statute, party or phrase — malversation, probable cause, syndicated estafa. Powered by the E-Library's own dtSearch engine, with keyword-in-context snippets and per-document hit counts. |
| Browse by year | Bulk-harvest the archive month by month for a year range (monthly listings run 1996 to present). |
| Full decision (by ID) | Pull the complete text of specific decisions you already have IDs for. |
Search reaches further back than browse — a 1991 decision was returned from the decisions index during testing.
Example input
Find recent decisions on a doctrine, with full opinions:
{"mode": "search","searchPhrase": "probable cause","searchCorpus": "sc_decision","searchType": "phrase","maxResults": 50,"fetchFullText": true}
Bulk-harvest a year:
{ "mode": "browse", "fromYear": 2025, "toYear": 2026, "maxResults": 500 }
Fetch specific decisions:
{ "mode": "decision", "docIds": ["70008", "69244", "70515"] }
Example output
{"_source": "S1-decision","docId": "69244","caseNumber": "G.R. No. 235790","caseTitle": "PEOPLE OF THE PHILIPPINES, PLAINTIFF-APPELLEE, VS. MONICO D. SANTOS AND FRANCIS H. CANOZA, ACCUSED, MONICO D. SANTOS, ACCUSED-APPELLANT.","documentType": "DECISION","division": "SECOND DIVISION","ponente": "LEONEN, SAJ.","reporterCitation": "930 Phil. 215","decisionDate": "2022-09-21","decisionDateText": "September 21, 2022","fullTextLength": 41129,"fullText": "930 Phil. 215 SECOND DIVISION [ G.R. No. 235790, September 21, 2022 ] …","documentUrl": "https://elibrary.judiciary.gov.ph/thebookshelf/showdocs/1/69244"}
Set fetchFullText: false (the default) in search/browse mode for fast,
cheap summary rows without the opinion text.
Good to know
- Three of the portal's eight search corpora are broken on the
judiciary's own servers —
sc_resolution,administrative_matterandbar_matteranswer with dtSearch'sUnable to access indexerror. The actor reports that as an explicitsearch_index_unavailablerecord instead of pretending there were no matches.sc_decision(the default) andsc_allwork fine. - dtSearch stops counting at 5,000 matches per query, so very broad
searches report 5,000 as the total. Narrow the phrase or use
browsefor exhaustive coverage. - Search results and portal pages use different document IDs. A search
row carries
dtSearchDocId(the engine's numbering) and links to the engine's document view;docId(the portal's numbering, usable withmode: "decision") appears on browse and decision records. They are not interchangeable. - Decisions not yet published in Philippine Reports have no
reporterCitation/reporterPdfUrl— that is expected, not an error. - Full opinions are long: 20,000–40,000 characters is typical, but en banc
and consolidated cases run far bigger — one was measured at 2,379,838
characters (2.4 MB) in a single record. Budget accordingly when
fetchFullTextis on.
Reliability
- HTTP-only. No browser, no login, no credentials. The site runs no WAF
and imposes no rate limit;
maxConcurrencystill defaults to a polite 4. - Never fails silently. Unknown document IDs soft-404 with HTTP 200 on
this portal; the actor detects that and returns
_error: "decision_not_found"rather than an empty-looking record. Every failure mode emits a row. - Raw passthrough. Values are the portal's own — nothing renamed into a different taxonomy, nothing re-derived.
Data source & limits
Data comes from the Supreme Court E-Library, the Philippine Judiciary's
official public archive of its decisions. The site publishes no robots.txt
policy (it 404s) and requires no authentication. Court decisions are public
records. You are responsible for how you use the output.