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
      • Image
      • PTZ
      • Light
      • Recording
      • Audio
      • Media
      • Network
      • Power
      • Privacy
      • Call
      • Storage
      • System
        • Diagnostics
          • system.diagnostics.loginTime (Read login timestamp update)
          • system.diagnostics.maxOnline (Read maximum online duration)
          • system.diagnostics.state (Read device boot state)
          • system.diagnostics.heartbeat (Heartbeat)
          • system.diagnostics.selfTest (One-tap self-test)
          • system.diagnostics.booted (Device booted)
          • system.diagnostics.rebootState (Read reboot state)
          • system.diagnostics.rebootState (Set reboot state)
        • Information
        • Maintenance
        • Time
        • Upgrade
        • Credentials
      • 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
Error codes

system.diagnostics.selfTest (One-tap self-test)

system.diagnostics.selfTest: One-tap self-test

system.diagnostics.selfTest · device scope · permission Config

What it does

Trigger a one-tap self-test on the device. No public input fields. Each call runs once.

Request URL

POST https://openapi-[DataCenter].easy4ip.com/openapi/v2/device.service.invoke

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. A timeout does not mean the operation did not run.

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
serviceIdStringyessystem.diagnostics.selfTest
inputDataObjectyesEmpty object {}

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",
 "serviceId": "system.diagnostics.selfTest",
 "inputData": {}
 }
}

Error codes

Gateway

DV20xx

Diagnostics

system.diagnostics.heartbeat (Heartbeat)
system.diagnostics.booted (Device booted)