NAV undefined
undefined
bash ruby python php javascript go csharp java

Introduction

API Endpoint

https://crime.getupforchange.com/api/

Welcome to the CrimeCheck API! You can use our API to access court cases in our database.

Currently, the API checks for Court Records in all courts across India, including Supreme Court, All High Courts, District Courts and Tribunals. This includes pending and disposed cases. It also searches in important defaulter lists. The total number of records being searched is 33 Crores as on October 2024.

We have provided examples in cURL, Ruby, Python, PHP, JavaScript, Go, C# and Java! You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right.

The CrimeCheck API is organized around REST. Our API has predictable, resource-oriented URLs, and uses HTTP response codes to indicate API errors. We support cross-origin resource sharing, allowing you to interact securely with our API from a client-side web application (though you should never expose your secret API key in any public website's client-side code). JSON is returned by all API responses, including errors.

To make the API as explore-able as possible, accounts have test mode and live mode API keys. There is no "switch" for changing between modes, just use the appropriate key to perform a live or test transaction.

Watch this short video to understand more about Report API integration.

Report API

CrimeReport API accepts the profile of a company or individual. After we receive the request, our team of analysts and lawyers will work and provide a report (PDF/JSON) within the agreed Turn Around Time (TAT). There are two APIs available as a part of CrimeReport.

Previous version documentation here

You can download a sample Postman collection here. Save the file locally, and import it into Postman tool. Update the API key you received from CrimeCheck integration / support team in Postman, and then start using.

1. Create Report Request

  curl  -X POST \
    https://crime.getupforchange.com/api/reports/v4 \
     -H 'Content-Type: application/x-www-form-urlencoded' \
     -H 'Authorization: {{apiKey}}' \
     -d 'companyName=Feminine And Infant Healthcare Private Limited' \
     -d 'companyAddress=B-805 & B-806, Rico Industrial Area Alwar Rajasthan' \
     -d 'companyType=PvtLtd' \
     -d 'callbackUrl=https://backend.com/crimecheck-callback' \
     -d 'clientRefNo=85472352' \
     -d 'reqTag=Auto Loan'
    require 'uri'
    require 'net/http'

    url = URI("https://staging-crime-api.getupforchange.com/api/reports/v4")
    http = Net::HTTP.new(url.host, url.port)
    http.use_ssl = true

    request = Net::HTTP::Post.new(url)
    request["Content-Type"] = "application/x-www-form-urlencoded"
    request["Authorization"] = "{{apiKey}}"
    request.body = "companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan"

    response = http.request(request)
    puts response.read_body
  import requests

  url = "https://staging-crime-api.getupforchange.com/api/reports/v4"
  headers = {
      "Content-Type": "application/x-www-form-urlencoded",
      "Authorization": "{{apiKey}}"
  }
  data = {
      "companyName": "Feminine And Infant Healthcare Private Limited",
      "companyAddress": "B-805 & B-806, Rico Industrial Area Alwar Rajasthan",
      "companyType": "PvtLtd",
      "callbackUrl": "https://backend.com/crimecheck-callback",
      "clientRefNo": "85472352",
      "reqTag": "Auto Loan"
  }

  response = requests.post(url, headers=headers, data=data)
  print(response.text)
  <?php
    $curl = curl_init();

    curl_setopt_array($curl, array(
        CURLOPT_URL => "https://staging-crime-api.getupforchange.com/api/reports/v4",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_CUSTOMREQUEST => "POST",
        CURLOPT_POSTFIELDS => "companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan",
        CURLOPT_HTTPHEADER => array(
            "Content-Type: application/x-www-form-urlencoded",
            "Authorization: {{apiKey}}"
        ),
    ));

    $response = curl_exec($curl);
    curl_close($curl);
    echo $response;
  ?>
  const request = require("request");

  const options = {
      method: "POST",
      url: "https://staging-crime-api.getupforchange.com/api/reports/v4",
      headers: {
          "Content-Type": "application/x-www-form-urlencoded",
          "Authorization": "{{apiKey}}"
      },
      form: {
          "companyName": "Feminine And Infant Healthcare Private Limited",
          "companyAddress": "B-805 & B-806, Rico Industrial Area Alwar Rajasthan",
          "companyType": "PvtLtd",
          "callbackUrl": "https://backend.com/crimecheck-callback",
          "clientRefNo": "85472352",
          "reqTag": "Auto Loan"
      }
  };

  request(options, function (error, response, body) {
      if (error) throw new Error(error);
      console.log(body);
  });
package main
import (
    "fmt"
    "net/http"
    "strings"
    "io/ioutil"
)

func main() {
    url := "https://staging-crime-api.getupforchange.com/api/reports/v4"
    payload := strings.NewReader("companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan")

    req, _ := http.NewRequest("POST", url, payload)
    req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
    req.Header.Add("Authorization", "{{apiKey}}")

    res, _ := http.DefaultClient.Do(req)
    defer res.Body.Close()
    body, _ := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
  using RestSharp;
  using System;

  public class Program
  {
      public static void Main()
      {
          var client = new RestClient("https://staging-crime-api.getupforchange.com/api/reports/v4");
          var request = new RestRequest(Method.POST);
          request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
          request.AddHeader("Authorization", "{{apiKey}}");
          request.AddParameter("application/x-www-form-urlencoded", "companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan", ParameterType.RequestBody);

          IRestResponse response = client.Execute(request);
          Console.WriteLine(response.Content);
      }
  }
  import kong.unirest.HttpResponse;
  import kong.unirest.Unirest;

  public class Main {
      public static void main(String[] args) {
          HttpResponse<String> response = Unirest.post("https://staging-crime-api.getupforchange.com/api/reports/v4")
            .header("Content-Type", "application/x-www-form-urlencoded")
            .header("Authorization", "{{apiKey}}")
            .body("companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan")
            .asString();

          System.out.println(response.getBody());
      }
  }

Create Report Request API accepts details of the Company or Indiviual, and it will return a unique requestId for each request. This unique requestId can be used to retrieve the final report for the given input.

HTTP Request

POST https://crime.getupforchange.com/api/reports/v4

Format of optional directors JSON array
(only name is mandatory, others will increase relevance of results):
----------------------------------------------------------------
 [
  {
    "name" : "...", <-- Mandatory
    "fatherName" : "",
    "dob" : "...",
    "address" : "...",
    "panNumber" : ""
  }
]
Possible values of companyType
------------------------------
Private Limited => "PvtLtd"
Public Limited => "Limited"
Limited Liability Company => "LLC"
Limited Liability Partnership => "LLP"
Registered Firm => "RegFirm"
Unregistered Firm => "UnregFirm"
Proprietary => "Proprietary"
Don't Know => "dontknow"

Header Parameters

Authorization string
Mandatory
API key or authorization token to authenticate the request. Ensure the token is valid to access the report resource securely.
Content-Type string
Should be set to application/x-www-form-urlencoded

Form URL-encoded Parameters - For Company

companyName string
Mandatory
Name of the company
companyType string
Optional for Default/Detailed Reports
Default: PvtLtd
Mandatory for realTimeHighAccuracy
Type of the company. See sidebar for possible options.
companyAddress string
Optional
Registered address of the company
directors JSON array
Optional
Director(s)/Owner(s)/Partner(s) of the company
Each object in the array represents one individual (see sidebar)
clientRefNo string
Optional
Unique internal Reference Number which will be included in the report
reportMode string
Optional
If the value realTimeHighAccuracy is passed, generates a Real-time report, compiling all cases returned by highAccuracy mode of Crime Records API. Report will be available in next few mins. There is no manual scrutiny by legal team.
If no value is passed, report generation will happen through usual process of filtering by CrimeCheck's operations team, including manual scrutiny by legal team. Report will be available in agreed TAT (4 - 24 hours usually).
If realTimeHighAccuracy mode is set, then companyType is mandatory.
priority string
Optional
Default: normal
If value is set to high, it will be targeted to be finished within 4 hours. If completed within 4 hours, higher charges will be applicable (contact CrimeCheck for details). If not completed within 4 hours, charges will be normal.
callbackUrl string
Mandatory
CrimeCheck will send an HTTP POST call to this URL, with the report in a x-www-form-urlencoded parameter named data, whenever the report is ready (more info).
cinNumber string
Optional
CIN of the company
gstNumber string
Optional
GST Number of Company
panNumber string
Optional
PAN of Company
reqTag string
Optional
Any string tag you want to attach to this request. E.g. "Agri Loan", "Auto Loan"
ticketSize string
Optional
Slab of the monetary value to be delivered to the assessee, based on this request's risk profile. Will be used to determine the risk, comparing with the kind of cases the assessee is involved in. Possible values are: 0 - 1 Lakh ₹, 1 - 10 Lakh ₹, More than 10 lakh ₹
crimewatch boolean
Optional
Default: false
If set to true, we'll monitor this profile at a regular frequency for any new cases or updates to existing cases, and send you updated reports via callback (more info)
The CrimeWatch callback body will have crimewatch key set to true to indicate that it is a CrimeWatch response. It'll also have an additional crimewatch object inside each case object, which has a flag field indicating the nature of change from previous report (new,modified,nochange), followed by a modified_fields array listing the fields that were changed if any. See sample response below.
Note: Usage of CrimeWatch needs to be enabled for each API key from CrimeCheck side. Request explicitly to enable this before use.

Form URL-encoded Parameters - For Individual

name string
Mandatory
Name of the Individual
fatherName string
Optional
Father's name or relative name. While not mandatory, this field increases relevance of the results
address string
Optional
Address of the Individual. While not mandatory, this field increases relevance of the results significantly
address2 string
Optional
Alternate address, if available.
If provided, CrimeCheck checks for cases separately using this second address. The final result is a consolidated report containing cases from both addresses, if any.
If provided, this request will be counted as 2 requests, for billing purposes.
dob string
Optional
Date of birth
panNumber string
Optional
PAN of the individual
clientRefNo string
Optional
Unique internal Reference Number which will be included in the report
reportMode string
Optional
If the value realTimeHighAccuracy is passed, generates a Real-time report, compiling all cases returned by highAccuracy mode of Crime Records API. Report will be available in next few mins. There is no manual scrutiny by legal team.
If no value is passed, report generation will happen through usual process of filtering by CrimeCheck's operations team, including manual scrutiny by legal team. Report will be available in agreed TAT (4 - 24 hours usually).
priority string
Optional
Default: normal
If value is set to high, it will be targeted to be finished within 4 hours. If completed within 4 hours, higher charges will be applicable (contact CrimeCheck for details). If not completed within 4 hours, charges will be normal.
callbackUrl string
Mandatory
CrimeCheck will send an HTTP POST call to this URL, with the report in a x-www-form-urlencoded parameter named data, whenever the report is ready (more info).
reqTag string
Optional
Any string tag you want to attach to this request. E.g. "Agri Loan", "Auto Loan"
ticketSize string
Optional
Slab of the monetary value to be delivered to the assessee, based on this request's risk profile. Will be used to determine the risk, comparing with the kind of cases the assessee is involved in. Possible values are: 0 - 1 Lakh ₹, 1 - 10 Lakh ₹, More than 10 lakh ₹
crimewatch boolean
Optional
Default: false
If set to true, we'll monitor this profile at a regular frequency for any new cases or updates to existing cases, and send you updated reports via callback (more info)
The CrimeWatch callback body will have crimewatch key set to true to indicate that it is a CrimeWatch response. It'll also have an additional crimewatch object inside each case object, which has a flag field indicating the nature of change from previous report (new,modified,nochange), followed by a modified_fields array listing the fields that were changed if any. See sample response below.
Note: Usage of CrimeWatch needs to be enabled for each API key from CrimeCheck side. Request explicitly to enable this before use.

Response

Response for reports API
{
    "status": "OK",
    "requestTime": "11/04/2018 12:58:17",
    "requestId": "1523431697863"
}

If successful, Create Report Request API will return a JSON response containing unique id of the request.

If callbackUrl is provided, CrimeCheck application will do an HTTP POST to the given callback URL. The report data is sent through a request body as raw JSON parameter named data. See sidebar for a sample cURL to try callback mechanism locally.

The fields in the response and some sample values are documented here.

Note: In case the callback URL doesn't respond with a 200 response, CrimeCheck application will re-attempt callbacks for 10 times with a gap of few minutes. After that it'll be marked as a permanent failure and an email will be sent to configured email address(es). During API integration, we recommend that you provide such an email address to which API failures can be notified.

In case of failure, API will return error code listed in error section.

Response via callBack
{
  "status": "OK",
  "requestId": 1523431697863,
  "requestTime": "15/09/2022 03:15 pm",
  "responseTime": "15/09/2022 03:34 pm",
  "searchTerm": [
    {
      "companyName": "TURBOTECH ENGINEERS",
      "ownerName": "MANAVALAN SRIDHAR",
      "cinNumber": "",
      "address": "FLATNO.503 SUNSHINE RESIDENCY HUDA COLONY CHANDANAGAR SERLINGAMPALLY,Hyderabad"
    },
    {
      "name": "MANAVALAN SRIDHAR",
      "fatherName": "KANNAIYA MANAVALAN",
      "dob": "09/11/1979",
      "address": "PLOT NO:411,VIBHAVARI APPTS,HUDA TRADE CENTRE,NEAR RAIL VIHAR,SERLINGAMPALLY,Hyderabad"
    }
  ],
  "crimewatch": false,
  "riskType": "Average Risk",
  "riskSummary": "MANAVALAN SRIDHAR has 1 civil matter registered in the High court of Telangana.",
  "numberOfCases": 1,
  "caseDetails": [
    {
      "slNo": 1,
      "petitioner": "M/s AMR Infra Projects Pvt. Ltd., represented by",
      "respondent": "State Bank of India, Stressed Assets Recovery Branch",
      "cinNumber": "WP/4737/2015",
      "caseTypeName": "WP(WRIT PETITION)",
      "hearingDate": "",
      "courtNumberAndJudge": "The Honourable Sri Justice RAMESH RANGANATHAN,The Honourable Sri Justice M.SATYANARAYANA MURTHY",
      "courtName": "High Court of Telangana",
      "state": "Telangana",
      "district": "",
      "petitionerAddress": "1) Name: M/s AMR Infra Projects Pvt Ltd represented by - A Rami Reddy sonof  A Malla Reddy Occ Managing director having its office at 63347/9 N R Plaza Dwarakapuri Colony Punjagutta Hyderabad",
      "respondentAddress": "1) Name: State Bank of India Stressed Assets Recovery Branch - Opp Borad of Intermediate Latha Complex Nampally Hyderabad represented by its Authorized Officer ----------------------------2) Name: The State Bank of India SME Branch Saifabad Hyderabad ----------------------------3) Name: The Debt Recovery Tribunal represented by its Registrar - Koti Hyderabad ----------------------------4) Name: Basavaraju Varalakshmi wifeof  Gopala Krishna - Age not known to the petitioner Occnot known to the petitioner inagar 7/1 Guntur----------------------------5) Name: Koduri Maruthi Rama Krishna sonof  Purushothamarao - Age not known to the petitioner Occnot known to the petitioner 3571 MIG PhaseII Vidyanagar Rarnachandrapuram Hyderabad 500032----------------------------6) Name: Sandepudi Jaya Lakshmi wifeof  SVRK Anjaneya Sarma - Age not known to the petitioner Occnot known to the petitioner Flat No 313 Vaibhavari Towers HUDA Trade Centre Serilingampally Hyderabad500019----------------------------7) Name: Sridhar Manvalan sonof  K Manvalan - Age not known to the petitioner Occnot known to the petitioner Flat No 411 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19----------------------------8) Name: Thota Sai Krishna sonof  late T Narsingarao - Age not known to the petitioner Occnot known to the petitioner Flat No 203 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19----------------------------9) Name: Veerabomma Srinivas sonof  late Mallaiah - Age not known to the petitioner Occnot known to the petitioner Flat No 312 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19----------------------------10) Name: Smt K Raja Rajeswari wifeof  Suresh Kumar - Age not known to the petitioner Occnot known to the petitioner  5E Madhavi Estates Motinagar Hyderabad 18----------------------------",
      "caseNumber": "WP/4737/2015",
      "caseNo": "WP/4737/2015",
      "caseYear": "2015",
      "underAct": "NA",
      "section": "NA",
      "underSection": "NA",
      "caseStatus": "Disposed",
      "firLink": "N/A",
      "judgementLink": "https://judgements.getupforchange.com/XydaUXoBo35PCZTJMOpI.pdf",
      "caseFlow": [],
      "gfc_uniqueid": "HC_29_0_NA_WPWRITPETITION_WP_4737_2015_NA_2015",
      "caseLink": "https://tshcstatus.nic.in",
      "caseType": "Civil",
      "natureOfDisposal": "",
      "riskType": "Average Risk",
      "riskSummary": "There is a disposed case filed against the subject, the case is filed for Writ petition in the High court of Telangana.",
      "severity": "Writ petition - HC",
      "judgementSummary": "Judgement attached",
      "caseRegDate": "26/02/2015",
      "regNumber": "",
      "filingDate": "26/02/2015",
      "filingNumber": "",
      "courtType": "High Court",
      "gfc_orders_data": {
        "petitioners": [],
        "respondents": []
      },
      "gfc_respondents": [
        {
          "name": "State Bank of India Stressed Assets Recovery Branch - Opp Borad of Intermediate Latha Complex Nampally Hyderabad represented by its Authorized Officer "
        },
        {
          "name": "The State Bank of India SME Branch Saifabad Hyderabad "
        },
        {
          "name": "The Debt Recovery Tribunal represented by its Registrar - Koti Hyderabad "
        },
        {
          "name": "Basavaraju Varalakshmi wifeof  Gopala Krishna - Age not known to the petitioner Occnot known to the petitioner inagar 7/1 Guntur"
        },
        {
          "name": "Koduri Maruthi Rama Krishna sonof  Purushothamarao - Age not known to the petitioner Occnot known to the petitioner 3571 MIG PhaseII Vidyanagar Rarnachandrapuram Hyderabad 500032"
        },
        {
          "name": "Sandepudi Jaya Lakshmi wifeof  SVRK Anjaneya Sarma - Age not known to the petitioner Occnot known to the petitioner Flat No 313 Vaibhavari Towers HUDA Trade Centre Serilingampally Hyderabad500019"
        },
        {
          "name": "<em>Sridhar</em> <em>Manvalan</em> sonof  K <em>Manvalan</em> - Age not known to the petitioner Occnot known to the petitioner Flat No 411 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19"
        },
        {
          "name": "Thota Sai Krishna sonof  late T Narsingarao - Age not known to the petitioner Occnot known to the petitioner Flat No 203 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19"
        },
        {
          "name": "Veerabomma Srinivas sonof  late Mallaiah - Age not known to the petitioner Occnot known to the petitioner Flat No 312 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19"
        },
        {
          "name": "Smt K Raja Rajeswari wifeof  Suresh Kumar - Age not known to the petitioner Occnot known to the petitioner  5E Madhavi Estates Motinagar Hyderabad 18"
        }
      ],
      "gfc_petitioners": [
        {
          "name": "M/s AMR Infra Projects Pvt Ltd represented by - A Rami Reddy sonof  A Malla Reddy Occ Managing director having its office at 63347/9 N R Plaza Dwarakapuri Colony Punjagutta Hyderabad"
        }
      ],
      "matchingAddress": "Sridhar Manvalan S/o K Manvalan Age not known to the petitioner Occnot known to the petitioner Flat No 411 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19",
      "matchSummary": "99% match with Name full match + Father name partial match + Address close match as per court details.",
      "caseDetailsLink": "https://crime.getupforchange.com/getDetails?gfcId=d775bfce61f5a85e67a87159c5ba72f09404befff494b20f71fcb102e75f09499a559ec123f9f98c491ac0385da67f97"
    }
  ],
  "disclaimer": "This report contains information about the Subject in question which has been compiled using data collected from the public domain. This report was generated from a database which contains 21 Crore crime records from all courts, Tribunals & Defaulters List across India. To that effect, the correctness, accuracy, and completeness of this report are directly related to the data available online in the public domain at the time of report generation. This report is not to be treated as an advice in any form and the users are advised to carry out necessary due diligence/ verification or to seek proper professional advice as may be necessary on the information provided in this report before taking any decision."
}
Sample cURL for Testing Callback Mechanism Locally with Reports API V4
curl --location --request POST 'https://your-server-or-localhost/test/crimecheck/callback' \
--header 'Content-Type: application/json' \
--data '{
    "status": "OK",
    "requestId": 1663235156831,
    "requestTime": "15/09/2022 03:15 pm",
    "responseTime": "15/09/2022 03:34 pm",
    "searchTerm": [
        {
            "companyName": "TURBOTECH ENGINEERS",
            "ownerName": "MANAVALAN SRIDHAR",
            "cinNumber": "",
            "address": "FLATNO.503 SUNSHINE RESIDENCY HUDA COLONY CHANDANAGAR SERLINGAMPALLY,Hyderabad"
        },
        {
            "name": "MANAVALAN SRIDHAR",
            "fatherName": "KANNAIYA MANAVALAN",
            "dob": "09/11/1979",
            "address": "PLOT NO:411,VIBHAVARI APPTS,HUDA TRADE CENTRE,NEAR RAIL VIHAR,SERLINGAMPALLY,Hyderabad"
        }
    ],
    "crimewatch": false,
    "riskType": "Average Risk",
    "riskSummary": "MANAVALAN SRIDHAR has 1 civil matter registered in the High court of Telangana.\n",
    "numberOfCases": 1,
    "caseDetails": [
        {
            "slNo": 1,
            "petitioner": "M/s AMR Infra Projects Pvt. Ltd., represented by",
            "respondent": "State Bank of India, Stressed Assets Recovery Branch",
            "cinNumber": "WP/4737/2015",
            "caseTypeName": "WP(WRIT PETITION)",
            "hearingDate": "",
            "courtNumberAndJudge": "The Honourable Sri Justice RAMESH RANGANATHAN,The Honourable Sri Justice M.SATYANARAYANA MURTHY",
            "courtName": "High Court of Telangana",
            "state": "Telangana",
            "district": "",
            "petitionerAddress": "1) Name: M/s AMR Infra Projects Pvt Ltd represented by - A Rami Reddy sonof  A Malla Reddy Occ Managing director having its office at 63347/9 N R Plaza Dwarakapuri Colony Punjagutta Hyderabad",
            "respondentAddress": "1) Name: State Bank of India Stressed Assets Recovery Branch - Opp Borad of Intermediate Latha Complex Nampally Hyderabad represented by its Authorized Officer ----------------------------2) Name: The State Bank of India SME Branch Saifabad Hyderabad ----------------------------3) Name: The Debt Recovery Tribunal represented by its Registrar - Koti Hyderabad ----------------------------4) Name: Basavaraju Varalakshmi wifeof  Gopala Krishna - Age not known to the petitioner Occnot known to the petitioner inagar 7/1 Guntur----------------------------5) Name: Koduri Maruthi Rama Krishna sonof  Purushothamarao - Age not known to the petitioner Occnot known to the petitioner 3571 MIG PhaseII Vidyanagar Rarnachandrapuram Hyderabad 500032----------------------------6) Name: Sandepudi Jaya Lakshmi wifeof  SVRK Anjaneya Sarma - Age not known to the petitioner Occnot known to the petitioner Flat No 313 Vaibhavari Towers HUDA Trade Centre Serilingampally Hyderabad500019----------------------------7) Name: Sridhar Manvalan sonof  K Manvalan - Age not known to the petitioner Occnot known to the petitioner Flat No 411 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19----------------------------8) Name: Thota Sai Krishna sonof  late T Narsingarao - Age not known to the petitioner Occnot known to the petitioner Flat No 203 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19----------------------------9) Name: Veerabomma Srinivas sonof  late Mallaiah - Age not known to the petitioner Occnot known to the petitioner Flat No 312 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19----------------------------10) Name: Smt K Raja Rajeswari wifeof  Suresh Kumar - Age not known to the petitioner Occnot known to the petitioner  5E Madhavi Estates Motinagar Hyderabad 18----------------------------",
            "caseNumber": "WP/4737/2015",
            "caseNo": "WP/4737/2015",
            "caseYear": "2015",
            "underAct": "NA",
            "section": "NA",
            "underSection": "NA",
            "caseStatus": "Disposed",
            "firLink": "N/A",
            "judgementLink": "https://judgements.getupforchange.com/XydaUXoBo35PCZTJMOpI.pdf",
            "caseFlow": [],
            "gfc_uniqueid": "HC_29_0_NA_WPWRITPETITION_WP_4737_2015_NA_2015",
            "caseLink": "https://tshcstatus.nic.in",
            "caseType": "Civil",
            "natureOfDisposal": "",
            "riskType": "Average Risk",
            "riskSummary": "There is a disposed case filed against the subject, the case is filed for Writ petition in the High court of Telangana.\n",
            "severity": "Writ petition - HC",
            "judgementSummary": "Judgement attached",
            "caseRegDate": "26/02/2015",
            "regNumber": "",
            "filingDate": "26/02/2015",
            "filingNumber": "",
            "courtType": "High Court",
            "gfc_orders_data": {
                "petitioners": [],
                "respondents": []
            },
            "gfc_respondents": [
                {
                    "name": "State Bank of India Stressed Assets Recovery Branch - Opp Borad of Intermediate Latha Complex Nampally Hyderabad represented by its Authorized Officer "
                },
                {
                    "name": "The State Bank of India SME Branch Saifabad Hyderabad "
                },
                {
                    "name": "The Debt Recovery Tribunal represented by its Registrar - Koti Hyderabad "
                },
                {
                    "name": "Basavaraju Varalakshmi wifeof  Gopala Krishna - Age not known to the petitioner Occnot known to the petitioner inagar 7/1 Guntur"
                },
                {
                    "name": "Koduri Maruthi Rama Krishna sonof  Purushothamarao - Age not known to the petitioner Occnot known to the petitioner 3571 MIG PhaseII Vidyanagar Rarnachandrapuram Hyderabad 500032"
                },
                {
                    "name": "Sandepudi Jaya Lakshmi wifeof  SVRK Anjaneya Sarma - Age not known to the petitioner Occnot known to the petitioner Flat No 313 Vaibhavari Towers HUDA Trade Centre Serilingampally Hyderabad500019"
                },
                {
                    "name": "<em>Sridhar</em> <em>Manvalan</em> sonof  K <em>Manvalan</em> - Age not known to the petitioner Occnot known to the petitioner Flat No 411 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19"
                },
                {
                    "name": "Thota Sai Krishna sonof  late T Narsingarao - Age not known to the petitioner Occnot known to the petitioner Flat No 203 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19"
                },
                {
                    "name": "Veerabomma Srinivas sonof  late Mallaiah - Age not known to the petitioner Occnot known to the petitioner Flat No 312 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19"
                },
                {
                    "name": "Smt K Raja Rajeswari wifeof  Suresh Kumar - Age not known to the petitioner Occnot known to the petitioner  5E Madhavi Estates Motinagar Hyderabad 18"
                }
            ],
            "gfc_petitioners": [
                {
                    "name": "M/s AMR Infra Projects Pvt Ltd represented by - A Rami Reddy sonof  A Malla Reddy Occ Managing director having its office at 63347/9 N R Plaza Dwarakapuri Colony Punjagutta Hyderabad"
                }
            ],
            "matchingAddress": "Sridhar Manvalan S/o K Manvalan\nAge not known to the petitioner Occnot known to the petitioner Flat No 411 Vaibhavari Towers HUDA Trade Centre Lingampally Hyderabad19",
            "matchSummary": "99% match with Name full match + Father name partial match + Address close match as per court details.",
            "caseDetailsLink": "https://crime.getupforchange.com/getDetails?gfcId=d775bfce61f5a85e67a87159c5ba72f09404befff494b20f71fcb102e75f09499a559ec123f9f98c491ac0385da67f97"
        }
    ],
    "disclaimer": "This report contains information about the Subject in question which has been compiled using data collected from the public domain. This report was generated from a database which contains 21 Crore crime records from all courts, Tribunals & Defaulters List across India. To that effect, the correctness, accuracy, and completeness of this report are directly related to the data available online in the public domain at the time of report generation. This report is not to be treated as an advice in any form and the users are advised to carry out necessary due diligence/ verification or to seek proper professional advice as may be necessary on the information provided in this report before taking any decision."
}'

2. Download Report

Completed reports from CrimeCheck can be retrieved using the download report API.

HTTP Request

GET https://crime.getupforchange.com/api/reports/v4?requestId={requestId}

Header Parameters

Authorization string
Mandatory
API key or authorization token to authenticate the request. Ensure the token is valid to access the report resource securely.
Content-Type string
Default: application/pdf
Specifies the media type for the response.
For JSON reports, set this to application/json
For PDF reports, set this to application/pdf

URL Parameters

requestId string
Mandatory
Unique requestId sent by Create Report Request API.

Response

On success, it'll respond with full body of the JSON/PDF report in the body. On failure, it'll show appropriate failure reason as per Errors section.

See sidebar for sample responses on failure and success.

The fields in the response and some sample values are documented here.

Failure
-------
{
  "status": "failed",
  "message": "Invalid UniqueId or APIKey"
}

Or,

{
  "status": "failed",
  "message": "Report not available. Please try again later."
}

Success
-------
{
  "status": "OK",
  "requestId": "1597298625363",
  "riskType": "Very High Risk",
  "riskSummary": "There is a pending case filed against the subject,the case is filed for Husband or relative of husband of a woman subjecting her to cruelty.",
  "numberOfCases": 1,
  "caseDetails": [
    {
      "slNo": 1,
      "petitioner": "Antophill Police Staion",
      "respondent": "Sanjay Akhilesh Gupta",
      "cinNumber": "MHMM130045422012",
      "caseTypeName": "PW - Police Warrant Trible",
      "courtName": "Additional Chief Metropolitan Magistrate, Kurla,M",
      "state": "MAHARASHTRA",
      "district": "MUMBAI",
      "petitionerAddress": "1) Name: Antophill Police StaionAddress: C.G.S. Colony, Sector No. 6, Kane Nagar Antophill, Mumbai",
      "respondentAddress": "1) Name: Sanjay Akhilesh GuptaAddress: B. NO. B-1 ROOM NO. 18 SARDAR NGR NO. 4 SION KOLIWADA MUMBAI 37gfc_pincode: 400037",
      "caseNumber": "208551015842012",
      "caseYear": "2012",
      "underAct": "U/s 498A406, Indian Penal Code",
      "section": "498A406",
      "caseStatus": "Pending",
      "firLink": "N/A",
      "judgementLink": "https://judgements.getupforchange.com/MHMM130045422012.pdf",
      "caseLink": "https://services.ecourts.gov.in/ecourtindia_v6/",
      "caseType": "Criminal",
      "caseRemarks": "Address: B. NO. B-1 ROOM NO. 18 SARDAR NGR NO. 4 SION KOLIWADA MUMBAI 37",
      "natureOfDisposal": "",
      "final_riskType": null,
      "final_riskSummary": null,
      "courtType": "Magistrate Court",
      "caseDetailsLink": "https://crime.getupforchange.com/getDetails?id=AWK5YCr-aQi7HkqivKOM"
    }
  ]
}
Message Description
Invalid UniqueId or APIKey Invalid Unique ID or APIKey is passed
Report not available. Please try again later. Our team has not uploaded the report. Please try later.

Errors

CrimeCheck uses conventional HTTP response codes to indicate the success or failure of an API request. In general, codes in the 2xx range indicate success, codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, invalid API key etc.), and codes in the 5xx range indicate an error with CrimeCheck servers (these are rare). It is recommended to handle basic retries in case of 5xx errors as it is usually a temporary error.

HTTP status code summary

Status Description
200 OK - Everything worked as expected.
400 INVALID_REQUEST_ERROR - The request was unacceptable, often due to missing a required parameter or invalid value
401 INVALID_API_KEY, API_LIMIT_EXCEEDED - Authorization related
403 ACCOUNT_DISABLED - Accound disabled / deactivated
404 Report not available or URL not found
429 Too Many Requests (Rate limit of Max per MINUTE=1800, HOUR=9000, DAY=228000)
500 Crimecheck service issue

Appendix

List of States and Union Territories

List of Districts

List of court names

Sample Response

Real-time report

  curl  -X POST \
    https://crime.getupforchange.com/api/reports/v4 \
     -H 'Content-Type: application/x-www-form-urlencoded' \
     -H 'Authorization: {{apiKey}}' \
     -d 'companyName=Feminine And Infant Healthcare Private Limited' \
     -d 'companyAddress=B-805 & B-806, Rico Industrial Area Alwar Rajasthan' \
     -d 'companyType=PvtLtd' \
     -d 'callbackUrl=https://backend.com/crimecheck-callback' \
     -d 'clientRefNo=85472352' \
     -d 'reqTag=Auto Loan' \
     -d 'reportMode=realTimeHighAccuracy'
    require 'uri'
    require 'net/http'

    url = URI("https://staging-crime-api.getupforchange.com/api/reports/v4")
    http = Net::HTTP.new(url.host, url.port)
    http.use_ssl = true

    request = Net::HTTP::Post.new(url)
    request["Content-Type"] = "application/x-www-form-urlencoded"
    request["Authorization"] = "{{apiKey}}"
    request.body = "companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan&reportMode=realTimeHighAccuracy"

    response = http.request(request)
    puts response.read_body
  import requests

  url = "https://staging-crime-api.getupforchange.com/api/reports/v4"
  headers = {
      "Content-Type": "application/x-www-form-urlencoded",
      "Authorization": "{{apiKey}}"
  }
  data = {
      "companyName": "Feminine And Infant Healthcare Private Limited",
      "companyAddress": "B-805 & B-806, Rico Industrial Area Alwar Rajasthan",
      "companyType": "PvtLtd",
      "callbackUrl": "https://backend.com/crimecheck-callback",
      "clientRefNo": "85472352",
      "reqTag": "Auto Loan",
      "reportMode"="realTimeHighAccuracy"
  }

  response = requests.post(url, headers=headers, data=data)
  print(response.text)
  <?php
    $curl = curl_init();

    curl_setopt_array($curl, array(
        CURLOPT_URL => "https://staging-crime-api.getupforchange.com/api/reports/v4",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_CUSTOMREQUEST => "POST",
        CURLOPT_POSTFIELDS => "companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan&reportMode=realTimeHighAccuracy",
        CURLOPT_HTTPHEADER => array(
            "Content-Type: application/x-www-form-urlencoded",
            "Authorization: {{apiKey}}"
        ),
    ));

    $response = curl_exec($curl);
    curl_close($curl);
    echo $response;
  ?>
  const request = require("request");

  const options = {
      method: "POST",
      url: "https://staging-crime-api.getupforchange.com/api/reports/v4",
      headers: {
          "Content-Type": "application/x-www-form-urlencoded",
          "Authorization": "{{apiKey}}"
      },
      form: {
          "companyName": "Feminine And Infant Healthcare Private Limited",
          "companyAddress": "B-805 & B-806, Rico Industrial Area Alwar Rajasthan",
          "companyType": "PvtLtd",
          "callbackUrl": "https://backend.com/crimecheck-callback",
          "clientRefNo": "85472352",
          "reqTag": "Auto Loan",
          "reportMode"="realTimeHighAccuracy"
      }
  };

  request(options, function (error, response, body) {
      if (error) throw new Error(error);
      console.log(body);
  });
package main

import (
    "fmt"
    "net/http"
    "strings"
    "io/ioutil"
)

func main() {
    url := "https://crime.getupforchange.com/api/reports/v4"
    payload := strings.NewReader("companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan&reportMode=realTimeHighAccuracy")

    req, _ := http.NewRequest("POST", url, payload)
    req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
    req.Header.Add("Authorization", "{{apiKey}}")

    res, _ := http.DefaultClient.Do(req)
    defer res.Body.Close()
    body, _ := ioutil.ReadAll(res.Body)

    fmt.Println(string(body))
}
  using RestSharp;
  using System;

  public class Program
  {
      public static void Main()
      {
          var client = new RestClient("https://staging-crime-api.getupforchange.com/api/reports/v4");
          var request = new RestRequest(Method.POST);
          request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
          request.AddHeader("Authorization", "{{apiKey}}");
          request.AddParameter("application/x-www-form-urlencoded", "companyName=Feminine%20And%20Infant%20Healthcare%20Private%20Limited&companyAddress=B-805%20%26%20B-806,%20Rico%20Industrial%20Area%20Alwar%20Rajasthan&companyType=PvtLtd&callbackUrl=https://backend.com/crimecheck-callback&clientRefNo=85472352&reqTag=Auto%20Loan", ParameterType.RequestBody);

          IRestResponse response = client.Execute(request);
          Console.WriteLine(response.Content);
      }
  }
  import kong.unirest.HttpResponse;
  import kong.unirest.Unirest;

  public class Main {
      public static void main(String[] args) {
          HttpResponse<String> response = Unirest.post("https://crime.getupforchange.com/api/reports/v4")
            .header("Content-Type", "application/x-www-form-urlencoded")
            .header("Authorization", "{{apiKey}}")
            .field("companyName", "Feminine And Infant Healthcare Private Limited")
            .field("companyAddress", "B-805 & B-806, Rico Industrial Area Alwar Rajasthan")
            .field("companyType", "PvtLtd")
            .field("callbackUrl", "https://backend.com/crimecheck-callback")
            .field("clientRefNo", "85472352")
            .field("reqTag", "Auto Loan")
            .field("reportMode", "realTimeHighAccuracy")
            .asString();

          System.out.println(response.getBody());
      }
  }

The above command returns JSON structured like this:

{
    "status": "OK",
    "requestTime": "28/05/2021 18:16:34",
    "requestId": "1622205994888"
}

Example Data used:
Name: Ramakant Shankarmal Pilani
Address: Plot No 10 Shanti Sadan J B Nagar,near Subhash Hotel,andheri East Mumbai,maharashtra,mumbai,400059

CrimeWatch response

See sidebar for sample response. Observe that top-level field crimewatch is set to true. Observe that each object inside caseDetails array has an object called crimewatch, which indicates the nature of the change and the case fields that were changed.

{
  "status": "OK",
  "requestId": "1650885132243",
  "requestTime": "25/04/2022 04:42 pm",
  "responseTime": "25/04/2022 04:46 pm",
  "searchTerm": [
    {
      "companyName": "AYURWIN PHARMA PRIVATE LIMITED",
      "cinnumber": "",
      "address": "1ST BLOCK, RAJAJINAGAR NO. 1094, 19TH MAIN 560010 BANGALORE India 560010 INDIA"
    }
  ],
  "crimewatch": true,
  "crimewatchNewCasesCount": 13,
  "riskType": "Very High Risk",
  "riskSummary": "The subject is a defaulter in the CIBIL defaulter list for an amount of Rs. 623.20 lakhs",
  "numberOfCases": 17,
  "caseDetails": [
    {
      "slNo": 1,
      "petitioner": "CORPORATION BANK",
      "respondent": "AYURWIN PHARMA PRIVATE LIMITED,  Mr.P.B.Shivakumar--3331842, Mrs.P.R.Shwetha--3640307",
      "cinNumber": "m",
      "caseTypeName": "",
      "hearingDate": "n",
      "courtNumberAndJudge": "",
      "courtName": "CIBIL - Willful Defaulters list",
      "state": "Center",
      "district": "",
      "petitionerAddress": "1) Name: CORPORATION BANK Address: BANGALORE-MALLESHWARAM",
      "respondentAddress": "1) Name: AYURWIN PHARMA PRIVATE LIMITED Address: NO 1094 19TH MAIN, I BLOCK RAJAJINAGAR BANGALORE -560010----------------------------2) Name:  Mr.P.B.Shivakumar ----------------------------3) Name:  Mrs.P.R.Shwetha ----------------------------",
      "caseNumber": "",
      "caseNo": "",
      "caseYear": "Unknown",
      "underAct": "CIBIL - Willful Defaulters list",
      "section": "",
      "underSection": "",
      "caseStatus": "Other",
      "firLink": "N/A",
      "judgementLink": "",
      "caseFlow": [],
      "gfc_uniqueid": "LIST_0_0_CIBIL_CORPORATIONBANK_AYURWINPHARMAPRIVATE_30_09_19_NA",
      "caseLink": "https://suit.cibil.com/",
      "caseType": "Civil",
      "natureOfDisposal": "",
      "riskType": "High Risk",
      "riskSummary": " The subject is a defaulter in the CIBIL - Willful defaulter list and  has done a default of Rs. 623.20 lakhs\"\n",
      "severity": "CIBIL - Willful Defaulters listmmk",
      "judgementSummary": "There are no judgement/order's provided in the court records",
      "caseRegDate": "30-09-19",
      "regNumber": "",
      "filingDate": "",
      "filingNumber": "",
      "courtType": "Willfull Defaulters List",
      "crimewatch": {
        "flag": "modified",
        "modified_fields": [
          "riskType"
        ]
      },
      "gfc_orders_data": {
        "petitioners": [],
        "respondents": []
      },
      "gfc_respondents": [
        {
          "name": "<em>AYURWIN</em> <em>PHARMA</em> <em>PRIVATE</em> <em>LIMITED</em> ",
          "address": "<mem>NO</mem> <mem>1094</mem> <mem>19TH</mem> <mem>MAIN</mem>, I <mem>BLOCK</mem> <mem>RAJAJINAGAR</mem> <mem>BANGALORE</mem> -<mem>560010</mem>"
        },
        {
          "name": " Mr.P.B.Shivakumar "
        },
        {
          "name": " Mrs.P.R.Shwetha "
        }
      ],
      "gfc_petitioners": [
        {
          "name": "CORPORATION BANK ",
          "address": "<mem>BANGALORE</mem>-MALLESHWARAM"
        }
      ],
      "matchingAddress": "1) Name: AYURWIN PHARMA PRIVATE LIMITED Address: NO 1094 19TH MAIN, I BLOCK RAJAJINAGAR BANGALORE -560010----------------------------",
      "caseDetailsLink": "https://crime.getupforchange.com/getDetails?gfcId=0e30f2e3e49d976567da6d54c83fc8fc39ddda057134ed5d46fb07e125cd8eeefe0a1dd093e6984a39362bbfebbaf97ae184b6f718ef8a9d74dc99fb6ea45f"
    }
  ]
}

FAQ

Q: Does CrimeCheck API support authentication in the callback?
A: Yes. Basic Authentication with a token is supported. Share the details with the CrimeCheck's API integration team during initial discussions, to set this up.

Q: Does CrimeCheck API support custom encryption?
A: Yes. This involves custom development, and possibly additional timeline and cost depending on the specific requirement. Discuss with CrimeCheck's API integration team for more details.

Change History

Date Version Author Change Description
29/10/2024 1.18 Pavan Update Report API docs for V4
06/06/2024 1.17 Aswin Add parameter for PAN for company requests
17/07/2023 1.16 Aswin Update missing params in Individual request params - priority, reqTag, ticketSize
09/06/2023 1.16 Aswin Remove deprecated parameters in directors list
16/02/2023 1.15 Aswin Provide more details and sample for callback mechanism
13/02/2023 1.14 Aswin Update address2 details for Report API
09/02/2023 1.13 Aswin Update sample callback response, add link to doc for field details
06/05/2022 1.12 Aswin HTTP Error Codes updated, CrimeWatch response details added
12/04/2022 1.11 Aswin CrimeWatch details added
26/01/2022 1.10 Aswin Add API Integration video, add Usage Count API details
07/07/2021 1.9 Mukul Update with priority field
29/05/2021 1.8 Mukul Update with reportMode info
26/08/2020 1.7 Aswin Add details of downloadJsonReport API
30/07/2020 1.6 Aswin Add PAN number to Individual CrimeReport, JSON array format for directors
06/03/2018 1.5 Vinoth Added courtType and courtName Filters.
05/11/2017 1.4 Vinoth Added searchFields.
24/10/2017 1.3 Vinoth Added resultsPerPage and courtType.
09/10/2017 1.2 Vinoth Added filters and pagination.
01/09/2017 1.1 Vinoth Added SearchType for Partial searches.
28/08/2017 1.0 Pradeep Incorporated review comments.
26/08/2017 0.3 Vinoth Added detailed description for all the parameters.
25/08/2017 0.2 Vinoth Fixed formatting errors. Added some examples.
24/08/2017 0.1 Prasad Added categories for status of response.
20/08/2017 First Draft Vinoth Created first version with API and details.