Hanzo AI
OpenapiPatrol

List snapshot

Returns the whole picture in one read: sites, units with their position trails, today's tours and checkpoints, the key register, the recent feed and the…

GET /v1/patrol/snapshot

Addresshttps://api.hanzo.ai/v1/patrol/snapshot
MethodGET
Operationget_patrol_snapshot
AuthAuthorization: Bearer $HANZO_API_KEY

Returns the whole picture in one read: sites, units with their position trails, today's tours and checkpoints, the key register, the recent feed and the open incident. It replaces the five separate list calls the screen used to make. A client sees only their own sites, and the key register is empty for anyone whose roles do not reach it.

Request

1 field.

FieldInTypeRequiredDescription
eventsqueryintegerEvents caps how many feed rows ride along.

Response

StatusBodyMeaning
200patrol.patrolSnapshotOutok
defaultproblem-detailsrefused

200 body — 110 fields.

FieldInTypeAlwaysDescription
databodypatrol.patrolEstate
data.eventsbodypatrol.patrolEvent[]Events is the recent feed, newest first.
data.events[].atbodystringAt is when it was raised.
data.events[].detailbodystringDetail is the longer account, or empty.
data.events[].levelbodystringLevel is red, amber, green or cyan.
data.events[].namebodystringName is the event's document name.
data.events[].sitebodystringSite is the site the event is about, or empty.
data.events[].sourcebodystringSource is what raised it.
data.events[].titlebodystringTitle is the one line the feed shows.
data.events[].unitbodystringUnit is the unit the event is about, or empty.
data.incidentbodypatrol.patrolIncident
data.incident.checkedbodystringChecked is when the premises had been walked.
data.incident.clocksbodypatrol.patrolClock[]Clocks is the SLA clocks, present on a single-incident read.
data.incident.clocks[].elapsedbodyinteger (int64)Elapsed is the seconds run so far, or the seconds it took when settled.
data.incident.clocks[].labelbodystringLabel names the clock: Verify, Dispatch or On site.
data.incident.clocks[].settledbodyinteger (int64)Settled is the seconds it took, or -1 while the clock is still running.
data.incident.clocks[].targetbodyinteger (int64)Target is the contracted seconds.
data.incident.closedbodystringClosed is when the incident was closed.
data.incident.dispatchedbodystringDispatched is when a unit was assigned.
data.incident.enroutebodystringEnroute is when that unit started moving.
data.incident.escalatedbodystringEscalated is when it was escalated, or empty.
data.incident.falsebodybooleanFalse says the activation turned out to be nothing.
data.incident.filedbodystringFiled is when the report was written.
data.incident.namebodystringName is the incident's document name.
data.incident.onsitebodystringOnsite is when it arrived.
data.incident.openedbodystringOpened is when the activation landed.
data.incident.outcomebodystringOutcome is what it came to.
data.incident.refbodystringRef is the receiving centre's own reference.
data.incident.securedbodystringSecured is when the site was made safe.
data.incident.sitebodystringSite is where it is happening.
data.incident.slabodyinteger (int64)SLA is the contracted response time in minutes.
data.incident.statebodystringState is one of received, verified, dispatched, enroute, onsite, checked, secured, filed and closed.
data.incident.stepsbodypatrol.patrolAct[]Steps is the act trail, present on a single-incident read.
data.incident.steps[].actbodystringAct is the act performed.
data.incident.steps[].actorbodystringActor is who performed it.
data.incident.steps[].atbodystringAt is when it happened.
data.incident.steps[].detailbodystringDetail is what they wrote with it.
data.incident.steps[].frombodystringFrom is the state the incident left.
data.incident.steps[].tobodystringTo is the state it landed in.
data.incident.tierbodystringTier is the site's contracted service tier.
data.incident.triggerbodystringTrigger is what the panel reported.
data.incident.unitbodystringUnit is the call sign attending, or empty.
data.incident.verifiedbodystringVerified is when the activation was confirmed real.
data.incident.zonebodystringZone is the panel zone that reported.
data.keysbodypatrol.patrolKey[]Keys is the key register, empty for a caller whose roles do not reach it.
data.keys[].holderbodystringHolder is who has it now.
data.keys[].movedbodystringMoved is when it last changed hands.
data.keys[].namebodystringName is the key set's reference, which is its document name.
data.keys[].sitebodystringSite is the site the keys open.
data.keys[].wherebodystringWhere is where the set is kept.
data.sitesbodypatrol.patrolSite[]Sites is the estate under contract.
data.sites[].accountbodystringAccount is the alarm-panel account number the receiving centre reports.
data.sites[].camerasbodyinteger (int64)Cameras is how many cameras are registered here.
data.sites[].categorybodystringCategory is what kind of premises this is.
data.sites[].clientbodystringClient is the customer this site belongs to.
data.sites[].contactbodystringContact is the keyholder to reach.
data.sites[].eircodebodystringEircode is the postal code.
data.sites[].hazardsbodystring[]Hazards is the standing warnings, present on a single-site read.
data.sites[].keysbodybooleanKeys says whether the operation holds a key set for this site.
data.sites[].latbodynumber (double)Lat is the site's latitude in degrees.
data.sites[].lonbodynumber (double)Lon is the site's longitude in degrees.
data.sites[].namebodystringName is the site's document name and the segment /v1/patrol/site/{name} addresses it by.
data.sites[].notesbodystringNotes is the standing brief for the site.
data.sites[].refbodyinteger (int64)Ref is the site's number in the register.
data.sites[].riskbodyinteger (int64)Risk is the assessed risk score.
data.sites[].sectorbodystringSector is the patrol sector the site sits in.
data.sites[].slabodyinteger (int64)SLA is the contracted response time in minutes.
data.sites[].statusbodystringStatus is ok, fault, alarm or offline.
data.sites[].tierbodystringTier is the contracted service tier.
data.sites[].townbodystringTown is the town the site is in.
data.sites[].unitbodystringUnit is the call sign of the unit that covers the site, or empty.
data.sites[].visitsbodyinteger (int64)Visits is how many patrol visits the contract calls for.
data.sites[].zonesbodypatrol.patrolZone[]Zones is the panel's detection zones, present on a single-site read.
data.sites[].zones[].devicebodystringDevice is the detector type.
data.sites[].zones[].locationbodystringLocation is where in the building the zone is.
data.sites[].zones[].refbodystringRef is the zone number the panel reports.
data.sites[].zones[].statebodystringState is the zone's last known condition.
data.toursbodypatrol.patrolTour[]Tours is today's rounds with their checkpoints.
data.tours[].datebodystringDate is the day the round belongs to.
data.tours[].endbodystringEnd is when it finished.
data.tours[].namebodystringName is the tour's document name.
data.tours[].pointsbodypatrol.patrolCheckpoint[]Points is the round's checkpoints in store order.
data.tours[].points[].actorbodystringActor is who confirmed it.
data.tours[].points[].atbodystringAt is when it was confirmed, or empty.
data.tours[].points[].closebodystringClose is when that window shuts.
data.tours[].points[].latbodynumber (double)Lat is the latitude the confirmation was taken at.
data.tours[].points[].lonbodynumber (double)Lon is the longitude the confirmation was taken at.
data.tours[].points[].methodbodystringMethod is how it was confirmed: tag, scan, fence, manual or photo.
data.tours[].points[].namebodystringName is the checkpoint's document name and the segment /v1/patrol/point/{name}/confirm addresses it by.
data.tours[].points[].openbodystringOpen is when the window to confirm it opens.
data.tours[].points[].photobodystringPhoto is the object key of the photo taken, or empty.
data.tours[].points[].sitebodystringSite is the site to attend.
data.tours[].points[].statebodystringState is pending, done, late or skipped.
data.tours[].points[].tagbodystringTag is the tag or marker to read there.
data.tours[].points[].tourbodystringTour is the round this checkpoint belongs to.
data.tours[].startbodystringStart is when the round began.
data.tours[].unitbodystringUnit is the call sign running the round.
data.unitsbodypatrol.patrolUnit[]Units is the fleet, each with the tail of its position trail.
data.units[].duebodystringDue is the lone-worker deadline, or empty when none is set.
data.units[].latbodynumber (double)Lat is the unit's last latitude in degrees.
data.units[].lonbodynumber (double)Lon is the unit's last longitude in degrees.
data.units[].namebodystringName is the unit's call sign, which is its document name and the segment /v1/patrol/unit/{name}/fix addresses it by.
data.units[].officerbodystringOfficer is who is crewing it.
data.units[].sectorbodystringSector is the patrol sector it works.
data.units[].seenbodystringSeen is when the unit last reported.
data.units[].statebodystringState is available, assigned, enroute, onsite, offline, break or emergency.
data.units[].trailbodypatrol.patrolFix[]Trail is the tail of the unit's recorded positions, oldest first.
data.units[].trail[].atbodystringAt is when the position was recorded.
data.units[].trail[].latbodynumber (double)Lat is the latitude in degrees.
data.units[].trail[].lonbodynumber (double)Lon is the longitude in degrees.

Failure carries the platform error shape — see Errors.

Examples

hanzo patrol snapshot

Patrol API · All Hanzo APIs · Interactive reference

How is this guide?

On this page