Search persons

Search person detections of the organization associated with the API key.

Only timeRange is required; every other filter is optional. Filters are combined with AND
semantics, values inside an array filter are OR-ed.

Results are sorted by startTime descending (newest first) and paginated with page/size
(zero-based page, size 1..100, default 25).
The response envelope always includes the total number of detections matching the filters, so
total can exceed items.length.

cameraIds and locationIds intersect: a detection must match all provided scope filters.
An empty intersection returns an empty page with total: 0.

Each returned detection carries its trackerId, objectId (PERSON / VEHICLE), the
detection startTime and endTime in milliseconds since epoch, the camera, edge and location
names, the IANA timezone of the camera location, and two image URLs: thumbnailUrl
(GET /v1/search/trackers/{trackerId}/thumbnail, the detection frame) and croppedImageUrl
(GET /v1/search/trackers/{trackerId}/cropped-image, the cropped object). Fetch either with the
same API key — Authorization: Bearer <token> header (preferred) or ?token=<token> query
parameter for <img> embedding (note: query tokens can appear in access logs). Either URL can be
null when the image is unavailable.

Filters:

filtermeaning
timeRangeRequired. { start, end } in milliseconds since epoch.
cameraIdsOnly detections from these cameras.
locationIdsOnly detections from cameras at these locations.
upperBodyTypesUpper body clothing types.
upperBodyColorsUpper body clothing colors.
lowerBodyTypesLower body clothing types.
lowerBodyColorsLower body clothing colors.
gendersGenders.
ageGroupsAge groups.
accessoriesAccessories worn.
carryingCarried items.
hairColorsHair colors.
footwearColorsFootwear colors.
personIdsOnly detections face-matched to these saved person ids, AND-ed with the attribute filters.

Attribute values:

filtervalues
colors (all color filters)BLACK, BLUE, BROWN, GREEN, GREY, ORANGE, PINK, PURPLE, RED, YELLOW, WHITE
upperBodyTypesSHORT_SLEEVE, LONG_SLEEVE, LOGO, NO_LOGO, SOLID, NOT_SOLID
lowerBodyTypesSHORTS, TROUSERS, SKIRT_AND_DRESS, SOLID, NOT_SOLID
gendersMALE, FEMALE
ageGroupsUNDER_18, FROM_18_TO_60, OVER_60
accessoriesHAT, NO_HAT, GLASSES, NO_GLASSES
carryingBAG, NO_BAG, OBJECT, NO_OBJECT

When a detection is face-matched to a saved person, the item carries personId, personName
and faceConfidence (1 = none, 3 = low, 5 = medium, 7 = high).

Request examples:

{ "timeRange": { "start": 1752451200000, "end": 1752537600000 } }
{
  "timeRange": { "start": 1752451200000, "end": 1752537600000 },
  "upperBodyColors": ["BLACK"],
  "upperBodyTypes": ["LONG_SLEEVE"],
  "genders": ["MALE"],
  "ageGroups": ["FROM_18_TO_60"],
  "accessories": ["HAT"],
  "page": 0,
  "size": 25
}
{
  "timeRange": { "start": 1752451200000, "end": 1752537600000 },
  "personIds": [12345],
  "cameraIds": ["6a460f4759e6bb0eb32c6778"]
}
{
  "timeRange": { "start": 1752451200000, "end": 1752537600000 },
  "locationIds": ["60c72b2f9b1d8e001c8a4d3f"],
  "carrying": ["BAG"]
}
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params

The person search filters and pagination.

timeRange
object
required

Time range to search in (milliseconds since epoch)

cameraIds
array of strings

Only detections from these cameras

cameraIds
locationIds
array of strings

Only detections from cameras at these locations

locationIds
upperBodyTypes
array of objects

Upper body clothing types

upperBodyTypes
Allowed:
upperBodyColors
array of objects

Upper body clothing colors

upperBodyColors
lowerBodyTypes
array of objects

Lower body clothing types

lowerBodyTypes
Allowed:
lowerBodyColors
array of objects

Lower body clothing colors

lowerBodyColors
genders
array of objects

Genders

genders
Allowed:
ageGroups
array of objects

Age groups

ageGroups
Allowed:
accessories
array of objects

Accessories worn

accessories
Allowed:
carrying
array of objects

Carried items

carrying
Allowed:
hairColors
array of objects

Hair colors

hairColors
footwearColors
array of objects

Footwear colors

footwearColors
personIds
array of numbers

Only detections face-matched to these saved person ids (combined with the attribute filters)

personIds
number
Defaults to 0

Page number for pagination (zero-based)

number
≤ 100
Defaults to 25

Number of items per page

Responses

400

Invalid request: missing timeRange, unknown attribute value, non-numeric personIds, page below 0, or size outside 1..100.

401

Missing or invalid API key.

403

Organization not allowed by this token.

500

Internal server error.

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json