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
        • 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
          • detection.door.contactState (Read door contact state)
          • detection.door.opened (Door opened alarm)
          • detection.door.closed (Door closed alarm)
          • detection.door.blocked (Deadbolt jammed)
          • detection.door.cardFailed (Failed card unlock)
          • detection.door.fingerprintFailed (Failed fingerprint unlock)
          • detection.door.highTemperature (High temperature alarm)
          • detection.door.hijack (Lock hijack alarm)
          • detection.door.keyInserted (Key inserted)
          • detection.door.passwordFailed (Failed password unlock)
          • detection.door.unlockEvent (Unlock event)
          • detection.door.dynamicResult (Read dynamic result)
          • detection.door.keyData (Read key data)
          • detection.door.keyUpdateId (Read key ID update)
          • detection.door.remoteEnabled (Read remote unlock enable)
          • detection.door.reset (Read reset user data)
          • detection.door.keyAdd (Add key)
          • detection.door.keyDelete (Delete key)
          • detection.door.keyOnce (One-time password)
          • detection.door.keyPeriod (Recurring password)
          • detection.door.dynamicResult (Set dynamic result)
          • detection.door.keyData (Set key data)
          • detection.door.keyUpdateId (Set key ID update)
          • detection.door.remoteEnabled (Set remote unlock enable)
          • detection.door.reset (Set reset user data)
        • 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.door.contactState (Read door contact state)

detection.door.contactState: Read door contact state

detection.door.contactState · device scope · permission Config

What it does

Read door contact state. 0 closed, 1 open (int).

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 one of the capability row share_auth_code aliases (match the console share grant). A bound sub-user does not. A sub-account needs Config. See Permission codes. Do not send channelId on device-scope capabilities. Mixing device and channel properties in one request returns DV2008.

Request parameters

NameTypeRequiredDescription
tokenStringyesAccess token for an administrator, sub-user, or sub-account
deviceIdStringyesDevice serial number
productIdStringnoOptional. If sent and it does not match the device model → DV2009
propertiesArrayyes["detection.door.contactState"]

For common request fields and signing, see Signing conventions and Common request payload.

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",
 
 "properties": ["detection.door.contactState"]
 }
}

Response data fields

NameDescriptionTypeRequiredValues
detection.door.contactStateDoor contactintyes0 closed, 1 open

Response example

{
 "id": "d5c287b4-5b2f-4f03-baf5-8032c5c354af",
 "result": {
 "code": "0",
 "msg": "Operation is successful",
 "data": {
 "properties": {
 "detection.door.contactState": 0
 }
 }
 }
}

Error codes

CodeMeaningNext step
SN1001Signature errorCheck sign per Development specification
TK1002Token invalid or expiredRefresh accessToken
OP1002Missing required parameterAdd required fields
OP1003Invalid parameterMatch this page’s parameter table
OP1009Permission deniedCheck token and device bind/share grants
OP1013Total call limit exceededReduce call rate
OP1014Daily per-interface limit exceededSee Interface call limits
DV1007Device offlineWait until the device is online

See Return codes · OP/SN/TK for the full catalog.

CodeMeaningNext step
DV2003Property not on deviceUse device.capability.list
DV2004Value out of rangeCheck properties values
DV2007channelId vs scope mismatchRequired for channel scope; omit for device scope
DV2008Mixed device and channel propertiesSplit the request
DV2009productId mismatchOmit or set actual model id

See Capability errors.

Door contact

detection.vehicle.detected (Vehicle detected)
detection.door.opened (Door opened alarm)