Skip to content

Instant Criminal Search API

The Instant Criminal Search API performs a real-time search of criminal records across national and state-level databases.

Authentication

All requests require an API key passed as a header:

X-API-Key: your-api-key

Endpoint

POST /instantcrim/search

Request Body

The request body is a JSON object with the following top-level fields:

FieldTypeRequiredDescription
clientRequestIdString (≤36 chars)NoClient-supplied correlation ID included in the response
subjectObjectYesThe person to search for. See Subject Parameters
optionsObjectNoSearch behavior options. See Search Options
profileStringNoOptional profile identifier for pre-configured search settings

Subject Parameters

FieldTypeRequiredDescription
subject.name.firstNameStringYesSubject's first name
subject.name.lastNameStringYesSubject's last name — required
subject.name.middleNameStringNoSubject's middle name
subject.name.suffixStringNoName suffix (e.g., Jr, Sr, III)
subject.birthDate.yearInteger (4-digit)NoBirth year
subject.birthDate.monthInteger (1–12)NoBirth month
subject.birthDate.dayInteger (1–31)NoBirth day
subject.aliasArray of name objectsNoAdditional names/aliases to search. Each alias has the same structure as subject.name
subject.ssnStringNoSocial Security Number

Search Options

Name Matching

FieldTypeDefaultDescription
options.firstNameExactMatchBooleanfalseWhen true, only returns records where the first name is an exact match
options.lastNameExactMatchBooleanfalseWhen true, only returns records where the last name is an exact match
options.middleNameMatchOnInitialBooleanfalseWhen true, matches middle name by initial only

Birth Date Options

FieldTypeDefaultDescription
options.birthDate.includeIncompleteBooleanfalseInclude records with an incomplete (partial) date of birth
options.birthDate.includePartialBooleanfalseInclude records where only some DOB components match
options.birthDate.includeNullBooleanfalseInclude records that have no date of birth
options.birthDate.excludeNullStatesArray of stringsnullState codes where null-DOB records should be excluded even when includeNull is true
options.birthDate.yearRangeInteger0Number of years +/- to match around the subject's birth year

Geographic & Source Filtering

FieldTypeDescription
options.statesArray of stringsLimit results to specific state codes (e.g., ["NY", "CA", "TX"])
options.sources.includeArray of stringsInclude only these source type identifiers
options.sources.excludeArray of stringsExclude these source type identifiers
options.sources.sourceIdArray of stringsTarget specific data source IDs directly

Response

The response is a JSON object containing the original request and a paginated set of results.

Top-Level Response Fields

FieldTypeDescription
requestObjectEcho of the submitted request
result.offsetIntegerPagination offset (default: 0)
result.limitIntegerMaximum records returned (default: 500)
result.hasMoreBooleanWhether additional records exist beyond this page
result.sizeIntegerNumber of records in this response
result.dataArrayArray of criminal result objects

Criminal Result Fields

Each object in result.data includes:

FieldTypeDescription
sourceIdStringIdentifier of the data source
sourceTitleStringDisplay name of the data source
subCountryStringState or sub-country code for this source
offenderIdStringUnique offender identifier within the source
nameObjectMatched name (firstName, lastName, middleName, suffix)
birthDateObjectMatched birth date components
matchQualityObjectQuality of match. See Match Quality
offenderObjectFull offender record from the source. See Offender Fields
offensesArrayList of offense records. See Offense Fields

Match Quality

FieldTypeDescription
isExactNameMatchBooleanBoth first and last name matched exactly
isExactBirthDateMatchBooleanAll provided DOB components matched exactly
isPartialBirthDateMatchBooleanSome but not all DOB components matched
isExactMatchBooleanComputed — true when both name and birth date are exact matches
descriptionStringHuman-readable summary of match quality

Offender Fields

The offender object contains the raw record from the source database. Common fields include:

FieldTypeDescription
offenderIdStringSource offender ID
fullNameStringFull name as stored in source
firstName, middleName, lastName, suffixStringName components
dobStringDate of birth as stored in source
ageIntegerAge
address1, city, state, zipStringAddress information
raceStringRace
sexStringSex
hair, eye, height, weightStringPhysical description

TIP

The offender object may contain many additional source-specific fields depending on the jurisdiction and data source.

Offense Fields

Each object in offenses may include:

FieldTypeDescription
caseNumStringCase number
caseTypeStringType of case
courtStringCourt name
courtDateStringDate of court proceeding
offenseDateStringDate of offense
offenseCodeStringOffense code
arrestDateStringDate of arrest
convictionDateStringDate of conviction
sentenceDateStringDate of sentencing
dispositionStringCase disposition

Validation

ValidationDetails
subject.name.lastName is requiredReturns an error if omitted: "The subject's Last Name is required"

Examples

bash
curl -X POST "https://api.infocusinfo.com/instantcrim/search" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your-api-key" \
  -d '{
  "subject": {
    "name": {
      "firstName": "John",
      "lastName": "Smith"
    }
  }
}'
http
POST https://api.infocusinfo.com/instantcrim/search
Content-Type: application/json
X-API-Key: your-api-key

{
  "subject": {
    "name": {
      "firstName": "John",
      "lastName": "Smith"
    }
  }
}

Search with Date of Birth and State Filter

bash
curl -X POST "https://api.infocusinfo.com/instantcrim/search" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your-api-key" \
  -d '{
  "clientRequestId": "req-abc-123",
  "subject": {
    "name": {
      "firstName": "John",
      "middleName": "Q",
      "lastName": "Smith"
    },
    "birthDate": {
      "year": 1985,
      "month": 6,
      "day": 15
    }
  },
  "options": {
    "lastNameExactMatch": true,
    "birthDate": {
      "includePartial": true,
      "yearRange": 1
    },
    "states": ["NY", "NJ", "CT"]
  }
}'
http
POST https://api.infocusinfo.com/instantcrim/search
Content-Type: application/json
X-API-Key: your-api-key

{
  "clientRequestId": "req-abc-123",
  "subject": {
    "name": {
      "firstName": "John",
      "middleName": "Q",
      "lastName": "Smith"
    },
    "birthDate": {
      "year": 1985,
      "month": 6,
      "day": 15
    }
  },
  "options": {
    "lastNameExactMatch": true,
    "birthDate": {
      "includePartial": true,
      "yearRange": 1
    },
    "states": ["NY", "NJ", "CT"]
  }
}

Example Response

json
{
  "request": {
    "clientRequestId": "req-abc-123",
    "subject": {
      "name": {
        "firstName": "John",
        "lastName": "Smith"
      },
      "birthDate": {
        "year": 1985,
        "month": 6,
        "day": 15
      }
    }
  },
  "result": {
    "offset": 0,
    "limit": 500,
    "hasMore": false,
    "size": 1,
    "data": [
      {
        "sourceId": "ny-statewide",
        "sourceTitle": "New York Statewide Criminal",
        "subCountry": "NY",
        "offenderId": "NY12345678",
        "name": {
          "firstName": "JOHN",
          "lastName": "SMITH"
        },
        "birthDate": {
          "year": 1985,
          "month": 6,
          "day": 15
        },
        "matchQuality": {
          "isExactNameMatch": true,
          "isExactBirthDateMatch": true,
          "isPartialBirthDateMatch": false,
          "isExactMatch": true,
          "description": "Exact name and birth date match"
        },
        "offender": {
          "offenderId": "NY12345678",
          "fullName": "JOHN QUINCY SMITH",
          "firstName": "JOHN",
          "middleName": "QUINCY",
          "lastName": "SMITH",
          "dob": "1985-06-15",
          "age": 40,
          "city": "BROOKLYN",
          "state": "NY",
          "race": "WHITE",
          "sex": "M"
        },
        "offenses": [
          {
            "caseNum": "2010-CR-001234",
            "caseType": "FELONY",
            "offenseDate": "2010-03-22",
            "convictionDate": "2010-09-14",
            "disposition": "CONVICTED"
          }
        ]
      }
    ]
  }
}