Case Management - API Specifications

API to get next valid number from case

post

A case has multiple different types of numbers like filing number, CMP number, CNR number and CC/ST number. Each of these has its own format, its own sequencing and its uniqueness range. All of these numbers are owned by the Case Registry.

There is a need for applications raised against a case use the same CMP numbering series that the case uses and hence this API is to get the next valid CMP number.

NOTE-- If more entities like order, hearing or if other sequences like that of CNR or CC/ST number need to be shared as well, then, it would be worthwhile to make a separate registry and service for Numbers.

Body
Responses
200

ResponseInfo with cases matching the search criteria. Empty array is returned in case no cases match the search criteria.

*/*
post
/casemanager/case/v1/_cmpNumber
POST /casemanager/case/v1/_cmpNumber HTTP/1.1
Host: 
Content-Type: */*
Accept: */*
Content-Length: 196

{
  "RequestInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "action": "text",
    "did": "text",
    "key": "text",
    "msgId": "text",
    "requesterId": "text",
    "authToken": "text"
  },
  "criteria": {
    "tenantId": "text",
    "caseId": "text"
  }
}
{
  "ResponseInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "resMsgId": "text",
    "msgId": "text",
    "status": "SUCCESSFUL"
  },
  "cmpNumber": "text"
}

Provides the case file or case history given a case identifier

post

API to retrieve the full case file or history given a case identifier

Body
Responses
200

ResponseInfo with case details updated successfully

*/*
post
/casemanager/case/v1/_history
POST /casemanager/case/v1/_history HTTP/1.1
Host: 
Content-Type: */*
Accept: */*
Content-Length: 1174

{
  "requestInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "action": "text",
    "did": "text",
    "key": "text",
    "msgId": "text",
    "requesterId": "text",
    "authToken": "text",
    "userInfo": {
      "tenantId": "text",
      "id": 1,
      "uuid": "text",
      "userName": "text",
      "mobileNumber": "text",
      "emailId": "text",
      "roles": [
        {
          "tenantId": "text",
          "id": "text",
          "name": "text",
          "description": "text"
        }
      ],
      "salutation": "text",
      "name": "text",
      "gender": "text",
      "alternateMobileNumber": "text",
      "altContactNumber": "text",
      "pan": "text",
      "aadhaarNumber": "text",
      "permanentAddress": "text",
      "permanentCity": "text",
      "permanentPincode": "text",
      "correspondenceCity": "text",
      "correspondencePincode": "text",
      "correspondenceAddress": "text",
      "active": true,
      "locale": "text",
      "type": "text",
      "accountLocked": true,
      "accountLockedDate": 1,
      "fatherOrHusbandName": "text",
      "relationship": "text",
      "signature": "text",
      "bloodGroup": "text",
      "photo": "text",
      "identificationMark": "text",
      "createdBy": 1,
      "password": "text",
      "otpReference": "text",
      "lastModifiedBy": 1,
      "createdDate": "2025-11-08",
      "lastModifiedDate": "2025-11-08",
      "dob": 1,
      "pwdExpiryDate": 1
    }
  },
  "criteria": {
    "tenantId": "text",
    "caseId": "text",
    "filingNumber": "text",
    "caseNumber": "text"
  },
  "pagination": {
    "limit": 10,
    "offSet": 0,
    "sortBy": "text",
    "order": {}
  }
}
{
  "requestInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "action": "text",
    "did": "text",
    "key": "text",
    "msgId": "text",
    "requesterId": "text",
    "authToken": "text",
    "userInfo": {
      "tenantId": "text",
      "id": 1,
      "uuid": "text",
      "userName": "text",
      "mobileNumber": "text",
      "emailId": "text",
      "roles": [
        {
          "tenantId": "text",
          "id": "text",
          "name": "text",
          "description": "text"
        }
      ],
      "salutation": "text",
      "name": "text",
      "gender": "text",
      "alternateMobileNumber": "text",
      "altContactNumber": "text",
      "pan": "text",
      "aadhaarNumber": "text",
      "permanentAddress": "text",
      "permanentCity": "text",
      "permanentPincode": "text",
      "correspondenceCity": "text",
      "correspondencePincode": "text",
      "correspondenceAddress": "text",
      "active": true,
      "locale": "text",
      "type": "text",
      "accountLocked": true,
      "accountLockedDate": 1,
      "fatherOrHusbandName": "text",
      "relationship": "text",
      "signature": "text",
      "bloodGroup": "text",
      "photo": "text",
      "identificationMark": "text",
      "createdBy": 1,
      "password": "text",
      "otpReference": "text",
      "lastModifiedBy": 1,
      "createdDate": "2025-11-08",
      "lastModifiedDate": "2025-11-08",
      "dob": 1,
      "pwdExpiryDate": 1
    },
    "correlationId": "text"
  },
  "caseFiles": [
    {
      "case": null,
      "hearings": [],
      "witnesses": [],
      "orders": [
        {
          "order": null,
          "tasks": []
        }
      ],
      "applications": [],
      "evidence": []
    }
  ],
  "pagination": {
    "limit": 10,
    "offSet": 0,
    "totalCount": 1,
    "sortBy": "text",
    "order": {}
  }
}

Provides the ability to group cases together for operational and/or other purposes.

post

API to create a logical grouping of cases for operational reasons. Cases will continue to be treated as separate entities and orders/judgements will be issued separately. This grouping is primarily meant for hearings to be scheduled together.

Body
Responses
200

ResponseInfo with case group created successfully

*/*
post
/casemanager/case/v1/_group
POST /casemanager/case/v1/_group HTTP/1.1
Host: 
Content-Type: */*
Accept: */*
Content-Length: 1037

{
  "requestInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "action": "text",
    "did": "text",
    "key": "text",
    "msgId": "text",
    "requesterId": "text",
    "authToken": "text",
    "userInfo": {
      "tenantId": "text",
      "id": 1,
      "uuid": "text",
      "userName": "text",
      "mobileNumber": "text",
      "emailId": "text",
      "roles": [
        {
          "tenantId": "text",
          "id": "text",
          "name": "text",
          "description": "text"
        }
      ],
      "salutation": "text",
      "name": "text",
      "gender": "text",
      "alternateMobileNumber": "text",
      "altContactNumber": "text",
      "pan": "text",
      "aadhaarNumber": "text",
      "permanentAddress": "text",
      "permanentCity": "text",
      "permanentPincode": "text",
      "correspondenceCity": "text",
      "correspondencePincode": "text",
      "correspondenceAddress": "text",
      "active": true,
      "locale": "text",
      "type": "text",
      "accountLocked": true,
      "accountLockedDate": 1,
      "fatherOrHusbandName": "text",
      "relationship": "text",
      "signature": "text",
      "bloodGroup": "text",
      "photo": "text",
      "identificationMark": "text",
      "createdBy": 1,
      "password": "text",
      "otpReference": "text",
      "lastModifiedBy": 1,
      "createdDate": "2025-11-08",
      "lastModifiedDate": "2025-11-08",
      "dob": 1,
      "pwdExpiryDate": 1
    }
  },
  "caseGroups": []
}
{
  "responseInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "resMsgId": "text",
    "msgId": "text",
    "status": "SUCCESSFUL"
  },
  "caseGroups": []
}

Provides the ability to ungroup one or more cases from a group.

post

API to remove a case or all cases from the logical grouping.

Body
Responses
200

ResponseInfo with case group created successfully

*/*
post
/casemanager/case/v1/_ungroup
POST /casemanager/case/v1/_ungroup HTTP/1.1
Host: 
Content-Type: */*
Accept: */*
Content-Length: 1037

{
  "requestInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "action": "text",
    "did": "text",
    "key": "text",
    "msgId": "text",
    "requesterId": "text",
    "authToken": "text",
    "userInfo": {
      "tenantId": "text",
      "id": 1,
      "uuid": "text",
      "userName": "text",
      "mobileNumber": "text",
      "emailId": "text",
      "roles": [
        {
          "tenantId": "text",
          "id": "text",
          "name": "text",
          "description": "text"
        }
      ],
      "salutation": "text",
      "name": "text",
      "gender": "text",
      "alternateMobileNumber": "text",
      "altContactNumber": "text",
      "pan": "text",
      "aadhaarNumber": "text",
      "permanentAddress": "text",
      "permanentCity": "text",
      "permanentPincode": "text",
      "correspondenceCity": "text",
      "correspondencePincode": "text",
      "correspondenceAddress": "text",
      "active": true,
      "locale": "text",
      "type": "text",
      "accountLocked": true,
      "accountLockedDate": 1,
      "fatherOrHusbandName": "text",
      "relationship": "text",
      "signature": "text",
      "bloodGroup": "text",
      "photo": "text",
      "identificationMark": "text",
      "createdBy": 1,
      "password": "text",
      "otpReference": "text",
      "lastModifiedBy": 1,
      "createdDate": "2025-11-08",
      "lastModifiedDate": "2025-11-08",
      "dob": 1,
      "pwdExpiryDate": 1
    }
  },
  "caseGroups": []
}
{
  "responseInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "resMsgId": "text",
    "msgId": "text",
    "status": "SUCCESSFUL"
  },
  "caseGroups": []
}
post

API used to create a case bundle for a single case. This is directly called from the font end, when there is a need to create the bundle at a specific time

Body
tenantIdstringOptional
caseIdstring · uuid · min: 36 · max: 36Optional
Responses
200

ResponseInfo with case group created successfully

*/*
post
/casemanager/case/v1/_buildcasebundle
POST /casemanager/case/v1/_buildcasebundle HTTP/1.1
Host: 
Content-Type: */*
Accept: */*
Content-Length: 1087

{
  "requestInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "action": "text",
    "did": "text",
    "key": "text",
    "msgId": "text",
    "requesterId": "text",
    "authToken": "text",
    "userInfo": {
      "tenantId": "text",
      "id": 1,
      "uuid": "text",
      "userName": "text",
      "mobileNumber": "text",
      "emailId": "text",
      "roles": [
        {
          "tenantId": "text",
          "id": "text",
          "name": "text",
          "description": "text"
        }
      ],
      "salutation": "text",
      "name": "text",
      "gender": "text",
      "alternateMobileNumber": "text",
      "altContactNumber": "text",
      "pan": "text",
      "aadhaarNumber": "text",
      "permanentAddress": "text",
      "permanentCity": "text",
      "permanentPincode": "text",
      "correspondenceCity": "text",
      "correspondencePincode": "text",
      "correspondenceAddress": "text",
      "active": true,
      "locale": "text",
      "type": "text",
      "accountLocked": true,
      "accountLockedDate": 1,
      "fatherOrHusbandName": "text",
      "relationship": "text",
      "signature": "text",
      "bloodGroup": "text",
      "photo": "text",
      "identificationMark": "text",
      "createdBy": 1,
      "password": "text",
      "otpReference": "text",
      "lastModifiedBy": 1,
      "createdDate": "2025-11-08",
      "lastModifiedDate": "2025-11-08",
      "dob": 1,
      "pwdExpiryDate": 1
    }
  },
  "tenantId": "text",
  "caseId": "123e4567-e89b-12d3-a456-426614174000"
}
{
  "responseInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "resMsgId": "text",
    "msgId": "text",
    "status": "SUCCESSFUL"
  },
  "fileStoreId": "123e4567-e89b-12d3-a456-426614174000"
}
post

API used to create a case bundle for multiple cases. This is typically called from the daily midnight cron job. It will query the case-bundle-pdf Index and create case bundle PDFs for the same. It will just store the files and log details with regards start time, end time, case bundles created, bundles failed. Since this is called by cron job, it will just return a success (if method got called) or failure, if something happened

Body
tenantIdstringOptional
Responses
200

ResponseInfo with case group created successfully

*/*
post
/casemanager/case/v1/bulk/_buildcasebundle
POST /casemanager/case/v1/bulk/_buildcasebundle HTTP/1.1
Host: 
Content-Type: */*
Accept: */*
Content-Length: 1039

{
  "requestInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "action": "text",
    "did": "text",
    "key": "text",
    "msgId": "text",
    "requesterId": "text",
    "authToken": "text",
    "userInfo": {
      "tenantId": "text",
      "id": 1,
      "uuid": "text",
      "userName": "text",
      "mobileNumber": "text",
      "emailId": "text",
      "roles": [
        {
          "tenantId": "text",
          "id": "text",
          "name": "text",
          "description": "text"
        }
      ],
      "salutation": "text",
      "name": "text",
      "gender": "text",
      "alternateMobileNumber": "text",
      "altContactNumber": "text",
      "pan": "text",
      "aadhaarNumber": "text",
      "permanentAddress": "text",
      "permanentCity": "text",
      "permanentPincode": "text",
      "correspondenceCity": "text",
      "correspondencePincode": "text",
      "correspondenceAddress": "text",
      "active": true,
      "locale": "text",
      "type": "text",
      "accountLocked": true,
      "accountLockedDate": 1,
      "fatherOrHusbandName": "text",
      "relationship": "text",
      "signature": "text",
      "bloodGroup": "text",
      "photo": "text",
      "identificationMark": "text",
      "createdBy": 1,
      "password": "text",
      "otpReference": "text",
      "lastModifiedBy": 1,
      "createdDate": "2025-11-08",
      "lastModifiedDate": "2025-11-08",
      "dob": 1,
      "pwdExpiryDate": 1
    }
  },
  "tenantId": "text"
}
{
  "responseInfo": {
    "apiId": "text",
    "ver": "text",
    "ts": 1,
    "resMsgId": "text",
    "msgId": "text",
    "status": "SUCCESSFUL"
  },
  "status": true
}

Last updated