UNPKG

court-api-wrapper

Version:

CLI & wrapper for CourtListener API

25 lines (21 loc) 989 B
const axios = require("axios"); /** * Search court cases * @param {Object} options * @param {string} options.query - Search keyword * @param {string} [options.court] - Court code (e.g., scotus) * @param {string} [options.dateFiledMin] - Minimum filing date (YYYY-MM-DD) * @param {string} [options.dateFiledMax] - Maximum filing date (YYYY-MM-DD) * @param {number} [options.page=1] - Page number for pagination */ async function searchCases({ query, court, dateFiledMin, dateFiledMax, page = 1 }) { const url = new URL("https://www.courtlistener.com/api/rest/v4/search/"); if (query) url.searchParams.append("q", query); if (court) url.searchParams.append("court", court); if (dateFiledMin) url.searchParams.append("date_filed_min", dateFiledMin); if (dateFiledMax) url.searchParams.append("date_filed_max", dateFiledMax); url.searchParams.append("page", page); const { data } = await axios.get(url.toString()); return data; } module.exports = { searchCases };