{
  "openapi": "3.0.1",
  "info": {
    "title": "CourtListener - US Federal Court Dockets & Opinions",
    "description": "US federal court filings from CourtListener (Free Law Project, public domain): every federal docket and decided case, with court, case name, docket number, dates, judge, nature of suit, precedential status and citation count. Search by court, case name, date or suit type; look up one; or aggregate.",
    "version": "0.0",
    "x-build-id": "okyvrIgH8thI6cYgO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/j0401~courtlistener-federal/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-j0401-courtlistener-federal",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/j0401~courtlistener-federal/runs": {
      "post": {
        "operationId": "runs-sync-j0401-courtlistener-federal",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/j0401~courtlistener-federal/run-sync": {
      "post": {
        "operationId": "run-sync-j0401-courtlistener-federal",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "corpus": {
            "title": "Corpus",
            "enum": [
              "dockets",
              "opinions",
              "courts"
            ],
            "type": "string",
            "description": "dockets = one row per federal court filing (default). opinions = one row per decided case (an opinion cluster, metadata only). courts = the federal court reference list (397 courts).",
            "default": "dockets"
          },
          "court": {
            "title": "Court",
            "type": "string",
            "description": "CourtListener court id, e.g. 'nysd' (S.D. New York), 'ca9' (Ninth Circuit), 'dcd' (D.D.C.), 'txsd' (case-insensitive; must be a real id from corpus=courts). Pins a single court's shard. Blank = search all federal courts.",
            "default": ""
          },
          "caseName": {
            "title": "Case name (contains)",
            "type": "string",
            "description": "Substring match on the case name, e.g. 'United States v.', 'Securities'. Blank = any.",
            "default": ""
          },
          "natureOfSuit": {
            "title": "Nature of suit (contains)",
            "type": "string",
            "description": "Substring match on the nature-of-suit classification, e.g. 'Contract', 'Civil Rights', 'Patent', 'Habeas'. Blank = any.",
            "default": ""
          },
          "juryDemand": {
            "title": "Jury demand",
            "enum": [
              "",
              "Plaintiff",
              "Defendant",
              "Both",
              "None"
            ],
            "type": "string",
            "description": "Who demanded a jury. Dockets corpus only. Blank = any.",
            "default": ""
          },
          "assignedTo": {
            "title": "Assigned judge (contains)",
            "type": "string",
            "description": "Substring match on the assigned judge. Dockets corpus only. Blank = any.",
            "default": ""
          },
          "judges": {
            "title": "Panel judges (contains)",
            "type": "string",
            "description": "Substring match on the deciding panel / judge. Opinions corpus only. Blank = any.",
            "default": ""
          },
          "precedentialStatus": {
            "title": "Precedential status",
            "enum": [
              "",
              "Published",
              "Unpublished",
              "Errata",
              "In-chambers",
              "Relating-to",
              "Unknown"
            ],
            "type": "string",
            "description": "Whether the decision is precedential. Opinions corpus only. Blank = any.",
            "default": ""
          },
          "dateFiledFrom": {
            "title": "Filed on or after",
            "type": "string",
            "description": "Earliest filing date, YYYY-MM-DD. Blank = any.",
            "default": ""
          },
          "dateFiledTo": {
            "title": "Filed on or before",
            "type": "string",
            "description": "Latest filing date, YYYY-MM-DD. Blank = any.",
            "default": ""
          },
          "mode": {
            "title": "Mode",
            "enum": [
              "rows",
              "aggregate"
            ],
            "type": "string",
            "description": "aggregate = one count row per group (default for an empty run; served from a precomputed record). rows = records matching your filters (auto-selected when any filter is set).",
            "default": "aggregate"
          },
          "groupBy": {
            "title": "Aggregate by",
            "enum": [
              "",
              "court",
              "year",
              "juryDemand",
              "jurisdictionType",
              "precedentialStatus",
              "jurisdiction"
            ],
            "type": "string",
            "description": "Which dimension to aggregate over (mode=aggregate). Blank = court. Clear it when switching corpus - not every dimension exists on every corpus.",
            "default": ""
          },
          "maxResults": {
            "title": "Max records",
            "minimum": 0,
            "type": "integer",
            "description": "Cap the number of records pushed in rows mode (0 = default 50; up to 2,000 per run). Each record is metered individually. Aggregate mode returns every group.",
            "default": 50
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}