> ## Documentation Index
> Fetch the complete documentation index at: https://docs-neevlegal.neeved.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get case details for multiple CNR numbers (max 50)

> Batch lookup for up to 50 CNR numbers in a single request. Returns found cases, a list of CNRs that were not found, and any that failed to process.



## OpenAPI

````yaml post /case-detail/searchByCnr/bulk
openapi: 3.0.3
info:
  title: NeevLegal API
  description: >-
    The NeevLegal REST API provides structured, programmatic access to Indian
    court case data. Search cases, retrieve full case records by CNR number, and
    explore the court directory across district courts, high courts, and the
    Supreme Court of India.
  version: 1.0.0
servers:
  - url: https://api-neevlegal.neeved.com/api/v1
    description: Version 1
security: []
tags:
  - name: Case Detail
    description: Retrieve the complete case record for one or more CNR numbers.
  - name: Case Search
    description: >-
      Search across district courts, high courts, and the Supreme Court by party
      name, advocate, judge, FIR number, or other criteria.
  - name: Court Structure
    description: >-
      Browse the Indian court directory — states, districts, court complexes,
      and individual courts.
paths:
  /case-detail/searchByCnr/bulk:
    post:
      tags:
        - Case Detail
      summary: Get case details for multiple CNR numbers (max 50)
      description: >-
        Batch lookup for up to 50 CNR numbers in a single request. Returns found
        cases, a list of CNRs that were not found, and any that failed to
        process.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                cnrNumbers:
                  type: array
                  description: >-
                    Array of CNR numbers to look up. Each must be exactly 16
                    characters.
                  items:
                    type: string
                    minLength: 16
                    maxLength: 16
                    pattern: ^[A-Z]{4}[A-Z0-9]{2}\d{10}$
                  minItems: 1
                  maxItems: 50
              required:
                - cnrNumbers
      responses:
        '200':
          description: Bulk lookup complete
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  response:
                    type: object
                    properties:
                      totalRequested:
                        type: number
                        description: Total number of CNR numbers submitted in the request.
                        example: 3
                      totalFound:
                        type: number
                        description: >-
                          Number of CNR numbers for which a case record was
                          found.
                        example: 2
                      totalNotFound:
                        type: number
                        description: >-
                          Number of CNR numbers that did not match any case in
                          the NeevLegal database.
                        example: 1
                      totalFailed:
                        type: number
                        description: >-
                          Number of CNR numbers that encountered a processing
                          error.
                        example: 0
                      data:
                        type: array
                        description: >-
                          Case records for all CNR numbers that were
                          successfully found. Each item has the same structure
                          as the single-CNR case detail response.
                        items:
                          type: object
                          properties:
                            cnrNumber:
                              type: string
                              description: >-
                                The 16-character Case Number Register
                                identifier.
                              example: MHPN010123456789
                            caseStatus:
                              type: string
                              description: Current lifecycle state of the case.
                              enum:
                                - Pending
                                - Disposed
                            court:
                              type: object
                              description: The court where this case is filed.
                              properties:
                                stateName:
                                  type: string
                                  example: Maharashtra
                                stateCode:
                                  type: string
                                  example: MH
                                districtName:
                                  type: string
                                  example: Pune
                                districtCode:
                                  type: string
                                  example: PUNE
                                complexName:
                                  type: string
                                complexCode:
                                  type: string
                                courtName:
                                  type: string
                                courtNumber:
                                  type: string
                              required:
                                - stateName
                                - stateCode
                                - districtName
                                - districtCode
                                - complexName
                                - complexCode
                                - courtName
                                - courtNumber
                            judgeName:
                              type: string
                              nullable: true
                              description: Presiding judge. Null if not yet assigned.
                              example: Hon'ble Shri M. Rajendar Reddy
                            petitioners:
                              type: array
                              description: Parties on the filing side.
                              items:
                                type: object
                                properties:
                                  partyName:
                                    type: string
                                    nullable: true
                                    example: John Doe
                                  advocateName:
                                    type: string
                                    nullable: true
                                    example: Adv. Jane Smith
                                  partyType:
                                    type: string
                                    nullable: true
                                    example: Petitioner
                                required:
                                  - partyName
                                  - advocateName
                                  - partyType
                            respondents:
                              type: array
                              description: Parties on the opposing side.
                              items:
                                type: object
                                properties:
                                  partyName:
                                    type: string
                                    nullable: true
                                    example: Jane Doe
                                  advocateName:
                                    type: string
                                    nullable: true
                                    example: Adv. John Smith
                                  partyType:
                                    type: string
                                    nullable: true
                                    example: Respondent
                                required:
                                  - partyName
                                  - advocateName
                                  - partyType
                            nextHearingDate:
                              type: string
                              nullable: true
                              description: Next scheduled hearing date (DD-MM-YYYY).
                            nextHearingPurpose:
                              type: string
                              nullable: true
                              description: Purpose of the next hearing.
                            firstHearingDate:
                              type: string
                              nullable: true
                              description: Date of first hearing (DD-MM-YYYY).
                            caseType:
                              type: string
                              description: Court case type code.
                              example: CS
                            caseNumber:
                              type: string
                              description: Display case number.
                              example: CS/12/2023
                            filingDate:
                              type: string
                              description: Date submitted to court (DD-MM-YYYY).
                              example: 01-01-2023
                            filingNumber:
                              type: string
                              nullable: true
                              description: Pre-registration provisional number.
                            registrationNumber:
                              type: string
                              nullable: true
                              description: Officially registered case number.
                            registrationDate:
                              type: string
                              nullable: true
                              description: Date formally registered (DD-MM-YYYY).
                            decisionDate:
                              type: string
                              nullable: true
                              description: Date decided or disposed of.
                            natureOfDisposal:
                              type: string
                              nullable: true
                              description: How the case was concluded.
                            category:
                              type: string
                              nullable: true
                              description: Court registry subject category.
                            subCategory:
                              type: string
                              nullable: true
                              description: Sub-classification within category.
                            subject:
                              nullable: true
                              description: Reserved for future use.
                            acts:
                              type: array
                              description: Statutes and provisions invoked.
                              items:
                                type: object
                                properties:
                                  act:
                                    type: string
                                    nullable: true
                                    description: Statute name.
                                  section:
                                    type: string
                                    nullable: true
                                    description: Section or provision.
                                required:
                                  - act
                                  - section
                            stage:
                              nullable: true
                              description: Reserved for future use.
                            hearingHistory:
                              type: array
                              nullable: true
                              description: Past hearing log.
                              items:
                                type: object
                                properties:
                                  hearingDate:
                                    type: string
                                    nullable: true
                                    description: Date of hearing (DD-MM-YYYY).
                                    example: 15-01-2024
                                  purpose:
                                    type: string
                                    nullable: true
                                    description: Business of the day.
                                    example: Arguments
                                  nextDate:
                                    type: string
                                    nullable: true
                                    description: Next date given (DD-MM-YYYY).
                                    example: 20-02-2024
                                  judge:
                                    type: string
                                    nullable: true
                                    description: Presiding judge at this hearing.
                                  orderUrl:
                                    type: string
                                    nullable: true
                                    description: URL to order passed, if any.
                                required:
                                  - hearingDate
                                  - purpose
                                  - nextDate
                                  - judge
                                  - orderUrl
                            firDetails:
                              type: object
                              nullable: true
                              description: >-
                                FIR reference for criminal cases; null for civil
                                matters.
                              properties:
                                firNumber:
                                  type: string
                                  nullable: true
                                  description: FIR registration number.
                                policeStation:
                                  type: string
                                  nullable: true
                                  description: Police station name.
                                year:
                                  type: string
                                  nullable: true
                                  description: Year of FIR registration.
                              required:
                                - firNumber
                                - policeStation
                                - year
                            lowerCourtDetails:
                              type: object
                              nullable: true
                              description: >-
                                Originating lower court reference for High Court
                                cases.
                              properties:
                                courtName:
                                  type: string
                                  nullable: true
                                caseNumber:
                                  type: string
                                  nullable: true
                                decisionDate:
                                  type: string
                                  nullable: true
                                decision:
                                  type: string
                                  nullable: true
                              required:
                                - courtName
                                - caseNumber
                                - decisionDate
                                - decision
                            linkedCases:
                              type: array
                              nullable: true
                              description: Cases formally linked with this one.
                              items:
                                type: object
                                additionalProperties: {}
                            transferDetails:
                              nullable: true
                              description: Reserved for future use.
                            lastUpdated:
                              type: string
                              description: >-
                                ISO 8601 timestamp of the last NeevLegal sync
                                for this case.
                              example: '2024-01-15T10:30:00.000Z'
                          required:
                            - cnrNumber
                            - caseStatus
                            - court
                            - judgeName
                            - petitioners
                            - respondents
                            - nextHearingDate
                            - nextHearingPurpose
                            - firstHearingDate
                            - caseType
                            - caseNumber
                            - filingDate
                            - filingNumber
                            - registrationNumber
                            - registrationDate
                            - decisionDate
                            - natureOfDisposal
                            - category
                            - subCategory
                            - subject
                            - acts
                            - stage
                            - hearingHistory
                            - firDetails
                            - lowerCourtDetails
                            - linkedCases
                            - transferDetails
                            - lastUpdated
                      notFound:
                        type: array
                        description: >-
                          CNR numbers from the request that did not match any
                          case in the NeevLegal database.
                        items:
                          type: object
                          properties:
                            cnrNumber:
                              type: string
                              description: The CNR number that was not found.
                            reason:
                              type: string
                              description: Brief explanation.
                              example: Not found in database
                          required:
                            - cnrNumber
                            - reason
                      failed:
                        type: array
                        description: >-
                          CNR numbers that encountered a processing error during
                          the lookup.
                        items:
                          type: object
                          properties:
                            cnrNumber:
                              type: string
                            reason:
                              type: string
                              description: Error description.
                          required:
                            - cnrNumber
                            - reason
                    required:
                      - totalRequested
                      - totalFound
                      - totalNotFound
                      - totalFailed
                      - data
                      - notFound
                      - failed
                required:
                  - success
                  - response
        '400':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - apiKeyAuth: []
components:
  schemas:
    ErrorResponse:
      type: object
      description: Standard error envelope returned on all non-2xx responses.
      properties:
        success:
          type: boolean
          description: Always false for error responses.
          example: false
        message:
          type: string
          description: Human-readable description of what went wrong.
          example: API key not found or has been revoked.
        moreInfo:
          type: string
          description: Additional context when available.
          example: No additional info found.
      required:
        - success
        - message
        - moreInfo
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.