Skip to content

Batches API — Monitors

The Batches API lets you create monitors — named collections of subjects that are periodically re-searched against criminal databases. Each monitor runs on a configurable schedule and stores results over time.

See Subjects for managing the individuals within a monitor.

Authentication

All requests require an API key passed as a header:

X-API-Key: your-api-key

Monitor Object

FieldTypeDescription
idIntegerUnique monitor identifier
statusStringCurrent status of the monitor (e.g., active, disabled)
titleStringMonitor name
descriptionString | nullOptional description
frequencyStringRun frequency code (e.g., month)
frequencyTitleStringHuman-readable frequency label
lastRunDateDateTime | nullWhen the monitor last executed
nextRunDateDateTime | nullWhen the monitor is next scheduled to run
createDateDateTimeWhen the monitor was created

Frequency Values

ValueDescription
dayDaily
weekWeekly
monthMonthly (default)

List Monitors

GET /batch/

Returns a paginated list of all monitors for the authenticated account.

Query Parameters

ParameterTypeDefaultDescription
pageInteger1Page number
pageSizeInteger25Records per page
searchStringFilter monitors by title
orderByStringSort field: createDate, lastRunDate, nextRunDate, title
orderDirectionStringascSort direction: asc or desc

Response

json
{
  "success": true,
  "paging": {
    "size": 2,
    "num": 1,
    "hasMore": false
  },
  "data": [
    {
      "id": 101,
      "status": "active",
      "title": "Employee Background Checks",
      "description": "Monthly checks for all active employees",
      "frequency": "month",
      "frequencyTitle": "Monthly",
      "lastRunDate": "2026-03-01T00:00:00Z",
      "nextRunDate": "2026-04-01T00:00:00Z",
      "createDate": "2025-01-15T10:30:00Z"
    }
  ]
}

Create a Monitor

POST /batch/

Creates a new monitor.

Request Body

FieldTypeRequiredDescription
titleStringYesName for the monitor
descriptionStringNoOptional description
frequencyStringNoRun frequency. Default: month
profileStringNoOptional pre-configured search profile
optionsObjectNoSearch options applied to all subjects. Same structure as Search Options
clientRequestIdString (≤36)NoClient-supplied correlation ID
bash
curl -X POST "https://api.infocusinfo.com/batch/" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your-api-key" \
  -d '{
  "title": "Employee Background Checks",
  "description": "Monthly checks for all active employees",
  "frequency": "month",
  "options": {
    "birthDate": {
      "includePartial": true
    }
  }
}'
http
POST https://api.infocusinfo.com/batch/
Content-Type: application/json
X-API-Key: your-api-key

{
  "title": "Employee Background Checks",
  "description": "Monthly checks for all active employees",
  "frequency": "month",
  "options": {
    "birthDate": {
      "includePartial": true
    }
  }
}

Response

json
{
  "success": true,
  "message": "Batch was saved successfully.",
  "data": {
    "id": 101,
    "status": "active",
    "title": "Employee Background Checks",
    "description": "Monthly checks for all active employees",
    "frequency": "month",
    "frequencyTitle": "Monthly",
    "lastRunDate": null,
    "nextRunDate": "2026-04-01T00:00:00Z",
    "createDate": "2026-03-26T12:00:00Z"
  }
}

Get a Monitor

GET /batch/:id

Returns details for a specific monitor.

Path Parameters

ParameterTypeDescription
idIntegerMonitor ID

Response Codes

CodeDescription
200Monitor returned successfully
400Missing batch ID
404Monitor not found

Update a Monitor

POST /batch/:id
PUT  /batch/:id

Both POST and PUT update an existing monitor. The request body is the same as Create a Monitor.

bash
curl -X PUT "https://api.infocusinfo.com/batch/101" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your-api-key" \
  -d '{
  "title": "Employee Background Checks — Quarterly",
  "frequency": "month"
}'
http
PUT https://api.infocusinfo.com/batch/101
Content-Type: application/json
X-API-Key: your-api-key

{
  "title": "Employee Background Checks — Quarterly",
  "frequency": "month"
}

Response Codes

CodeDescription
200Monitor updated successfully
404Monitor not found

Disable a Monitor

DELETE /batch/:id

Disables the monitor. Disabled monitors will no longer run on schedule.

Path Parameters

ParameterTypeDescription
idIntegerMonitor ID

Response

json
{
  "success": true,
  "message": "Batch was disabled successfully."
}

Response Codes

CodeDescription
200Monitor disabled
400Missing batch ID
404Monitor not found