Get started
  • English
  • 简体中文
Official Site
Get started
  • English
  • 简体中文
Official Site
  • Get started
  • Concepts
  • Guides
  • Device capabilities & events
    • Browse by device type
    • Device capabilities
      • Common methods
      • Detection and alarms
        • Arming
        • Attention zone
        • People counting
          • detection.counting.enabled (Read people-counting switch)
          • detection.counting.enabled (Set people-counting switch)
          • detection.counting.increment (Read people-counting increment)
          • detection.counting.region (Read people-counting region)
          • detection.counting.region (Set people-counting region)
          • detection.counting.sensitivity (Read people-counting sensitivity)
          • detection.counting.sensitivity (Set people-counting sensitivity)
          • detection.counting.clear (Clear people-counting data)
          • detection.counting.deletePic (Delete feature image)
          • detection.counting.distributePic (Distribute feature image)
          • detection.counting.picPage (Feature image paged query)
          • detection.counting.picState (Feature image status)
          • detection.counting.picRecognized (Feature image recognition result)
        • Cry detection
        • Absence from post
        • Face recognition
        • Fall detection
        • Gesture call
        • Intrusion
        • Loitering
        • Minor detection
        • Person and vehicle mix
        • Motion detection
        • Video occlusion
        • Illegal parking
        • Person detection
        • Pet detection
        • PIR
        • License plate recognition
        • Vehicle guard
        • Siren
        • Voice SOS
        • Abnormal sound
        • Tripwire
        • Unoccupied detection
        • Vehicle
        • Door contact
        • Tamper
        • Gate accessory
        • Environment sensing
        • Target detection frame
      • Image
      • PTZ
      • Light
      • Recording
      • Audio
      • Media
      • Network
      • Power
      • Privacy
      • Call
      • Storage
      • System
      • Algorithm
      • Maintenance
      • Control
    • Events overview
    • Permission codes
    • Capability error codes
    • Alarm and capability messages
    • Capability FAQ
    • Legacy ability and push types
  • API reference
  • SDK and tools
  • Solutions
  • Platform and support
On this page
What it does
Request URL
Minimum permission
Request parameters
Request example
Response data fields
Response example
Error codes

detection.counting.region (Read people-counting region)

detection.counting.region: Read people-counting region

detection.counting.region · Channel scope · Permission Config

What it does

Reads people-counting regions on this channel. Up to 100 entries with id, boundaryPoints, name, type, points, direction, rule (see response table).

Request URL

POST https://openapi-[DataCenter].easy4ip.com/openapi/v2/device.property.get

Minimum permission

The administrator does not need an extra permission on a device they bound. A shared device needs the basic configuration permission. A bound sub-user does not. A sub-account needs Config. Omitting channelId on a channel-scope capability returns DV2007. Mixing device and channel in one request returns DV2008.

Request parameters

NameTypeRequiredDescription
tokenStringyesaccessToken for administrator, sub-user, or sub-account
deviceIdStringyesDevice serial number
productIdStringnoOptional. If sent and it does not match the device model → DV2009
channelIdStringyesChannel number; "0" is common on IPCs
propertiesArrayyes["detection.counting.region"]

Common request fields and the signature are in Development specification.

Request example

{
 "id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
 "system": {
 "ver": "1.0",
 "appId": "lcdxxxxxxxxx",
 "sign": "xjhCQBoJ9hRDsCjyDcHjtDNzRZ3ZJezcawsfWeiaoxU=",
 "time": 1706511734,
 "nonce": "f5a1ae2d-c09c-4d39-a744-83a5c2c653c2"
 },
 "params": {
 "token": "<yourAccessToken>",
 "deviceId": "TESTIPC000012345",
 "channelId": "0",
 "properties": [
 "detection.counting.region"
 ]
 }
}

Response data fields

The value is in result.data.properties["detection.counting.region"].

Array limit 100.

NameDescriptionTypeRequiredValues
item.nameName.textyesstring
item.typeRegion type.enumyes0 People-counting region
item.pointsRegion coordinates. Coordinate string per device/TSL.textyesstring
item.directionDirection. 0 A->B, 1 B->A.enumyes0 A->B; 1 B->A
item.ruleRule.enumyes0 enter; 1 exit; 2 enter and exit
item.boundaryPointsBoundary points (example: [5,5,5,5]).textyesstring
item.idRegion ID. Range 0-999999, step 1.intyes0-999999, step 1

Response example

{
 "id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
 "result": {
 "code": "0",
 "msg": "Operation is successful",
 "data": {
 "properties": {
 "detection.counting.region": [
 {
 "name": "example",
 "type": "0",
 "points": "[0,0,100,0,100,100,0,100]",
 "direction": "0",
 "rule": "0",
 "boundaryPoints": "[0,0,100,0,100,100,0,100]",
 "id": 0
 }
 ]
 }
 }
 }
}

Error codes

Gateway and device error codes are in Global return codes.

Set people-counting region · People counting

detection.counting.increment (Read people-counting increment)
detection.counting.region (Set people-counting region)