Harvard Lawyer
Harvard Lawyer · GPT アクション
Harvard Law Library Case Law API
API for accessing case law, jurisdictions, courts, volumes, reporters, ngrams, user history, and resolution data from the Harvard Law Library.
GET /cases/Search case lawRetrieve cases based on search criteria.
GET /jurisdictions/List jurisdictionsRetrieve a list of all jurisdictions available in the database.
GET /courts/List courtsRetrieve a list of all courts available in the database.
GET /volumes/List volumesRetrieve a list of all volumes available in the database.
GET /reporters/List reportersRetrieve a list of all reporters available in the database.
GET /ngrams/List ngramsRetrieve ngram data from the database.
GET /user_history/Get user historyRetrieve the user's search history.
GET /resolve/Resolve URLResolve a URL to a specific case or other legal document.
元の API スキーマ
{
"openapi": "3.1.0",
"info": {
"title": "Harvard Law Library Case Law API",
"description": "API for accessing case law, jurisdictions, courts, volumes, reporters, ngrams, user history, and resolution data from the Harvard Law Library.",
"version": "1.0.0"
},
"servers": [
{
"url": "https://api.case.law/v1",
"description": "Harvard Case Law API Server"
}
],
"paths": {
"/cases/": {
"get": {
"operationId": "getCases",
"summary": "Search case law",
"description": "Retrieve cases based on search criteria.",
"parameters": [
{
"name": "search",
"in": "query",
"description": "Search term for case law (e.g., case name, keywords).",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "jurisdiction",
"in": "query",
"description": "Jurisdiction abbreviation (e.g., \"us\", \"ill-app\").",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "decision_date_min",
"in": "query",
"description": "Minimum decision date (YYYY-MM-DD).",
"required": false,
"schema": {
"type": "string",
"format": "date"
}
},
{
"name": "decision_date_max",
"in": "query",
"description": "Maximum decision date (YYYY-MM-DD).",
"required": false,
"schema": {
"type": "string",
"format": "date"
}
},
{
"name": "court",
"in": "query",
"description": "Specific court abbreviation, if required.",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "page",
"in": "query",
"description": "Page number for pagination.",
"required": false,
"schema": {
"type": "integer",
"default": 1
}
},
{
"name": "page_size",
"in": "query",
"description": "Number of cases per page (default is 10).",
"required": false,
"schema": {
"type": "integer",
"default": 10
}
}
],
"responses": {
"200": {
"description": "A JSON array of case law.",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"count": {
"type": "integer"
},
"next": {
"type": "string",
"format": "uri",
"nullable": true
},
"previous": {
"type": "string",
"format": "uri",
"nullable": true
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"jurisdiction": {
"type": "string"
},
"court": {
"type": "string"
},
"decision_date": {
"type": "string",
"format": "date"
},
"citations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"cite": {
"type": "string"
}
}
}
}
}
}
}
}
}
}
}
},
"400": {
"description": "Bad request"
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/jurisdictions/": {
"get": {
"operationId": "getJurisdictions",
"summary": "List jurisdictions",
"description": "Retrieve a list of all jurisdictions available in the database.",
"responses": {
"200": {
"description": "A list of jurisdictions.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"abbreviation": {
"type": "string"
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/courts/": {
"get": {
"operationId": "getCourts",
"summary": "List courts",
"description": "Retrieve a list of all courts available in the database.",
"responses": {
"200": {
"description": "A list of courts.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"jurisdiction": {
"type": "string"
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/volumes/": {
"get": {
"operationId": "getVolumes",
"summary": "List volumes",
"description": "Retrieve a list of all volumes available in the database.",
"responses": {
"200": {
"description": "A list of volumes.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"volume_number": {
"type": "string"
},
"reporter": {
"type": "string"
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/reporters/": {
"get": {
"operationId": "getReporters",
"summary": "List reporters",
"description": "Retrieve a list of all reporters available in the database.",
"responses": {
"200": {
"description": "A list of reporters.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/ngrams/": {
"get": {
"operationId": "getNgrams",
"summary": "List ngrams",
"description": "Retrieve ngram data from the database.",
"responses": {
"200": {
"description": "A list of ngrams.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"ngram": {
"type": "string"
},
"count": {
"type": "integer"
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/user_history/": {
"get": {
"operationId": "getUserHistory",
"summary": "Get user history",
"description": "Retrieve the user's search history.",
"responses": {
"200": {
"description": "A list of user history entries.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"query": {
"type": "string"
},
"timestamp": {
"type": "string",
"format": "date-time"
}
}
}
}
}
}
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
},
"/resolve/": {
"get": {
"operationId": "resolveUrl",
"summary": "Resolve URL",
"description": "Resolve a URL to a specific case or other legal document.",
"parameters": [
{
"name": "url",
"in": "query",
"description": "The URL to resolve.",
"required": true,
"schema": {
"type": "string",
"format": "uri"
}
}
],
"responses": {
"200": {
"description": "Resolved case or document.",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Bad request"
},
"401": {
"description": "Unauthorized (invalid API key)"
},
"500": {
"description": "Internal server error"
}
}
}
}
}
}