openapi: 3.1.0 info: title: Free Law Project / CourtListener REST Alerts Case Law API description: The CourtListener REST API (operated by Free Law Project) provides programmatic access to case law, PACER data, the RECAP archive, oral arguments, judges, financial disclosures, citations, citation networks, alerts, tags, and visualizations. version: '4.3' contact: name: Free Law Project url: https://free.law/ servers: - url: https://www.courtlistener.com/api/rest/v4 description: CourtListener REST API v4 security: - TokenAuth: [] tags: - name: Case Law description: Opinions, clusters, dockets, and courts. paths: /opinions/: get: summary: List opinions operationId: listOpinions tags: - Case Law parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/Fields' - $ref: '#/components/parameters/Omit' - $ref: '#/components/parameters/OrderBy' responses: '200': description: Paginated list of opinions. content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse' /opinions/{id}/: get: summary: Retrieve an opinion operationId: getOpinion tags: - Case Law parameters: - name: id in: path required: true schema: type: integer responses: '200': description: Opinion detail. /clusters/: get: summary: List opinion clusters operationId: listClusters tags: - Case Law parameters: - $ref: '#/components/parameters/Page' responses: '200': description: Paginated list of clusters. components: parameters: Omit: name: omit in: query schema: type: string description: Comma-separated list of fields to omit. Page: name: page in: query schema: type: integer minimum: 1 maximum: 100 OrderBy: name: order_by in: query schema: type: string description: Field to order by; prefix with `-` for descending. Fields: name: fields in: query schema: type: string description: Comma-separated list of fields to include. schemas: PaginatedResponse: type: object properties: count: type: integer next: type: string nullable: true previous: type: string nullable: true results: type: array items: type: object securitySchemes: TokenAuth: type: apiKey in: header name: Authorization description: 'HTTP token authentication. Format: `Token `.'