H Series OpenAPI Instructions
Home
ChineseVersion
Home
ChineseVersion
  1. Home
  • Instructions
  • Error Codes
  • Change History
  • Devices
    • Read Device Detailed Information
      POST
    • Read Device Card Information
      POST
    • Read Device IP
      POST
  • Homepage
    • Read System Initialization Status
      POST
    • Read Video Server Address
      POST
  • Screen
    • Set Screen Gamma
      POST
    • Display Screen ID
      POST
    • Set Screen Brightness
      POST
    • Save Screen Brightness
      POST
    • Add Screens
      POST
    • Delete Screens
      POST
    • Read Screen Detailed Information
      POST
    • Query Screen List
      POST
    • Screen FTB
      POST
    • Set BKG
      POST
    • Set Freezing
      POST
    • Read Screen Not in Live Mode
      POST
    • Set 3D Effect
      POST
    • Set Screen Layout Information
      POST
    • Set Image OSD
      POST
    • Set Text OSD
      POST
    • Delete Multiple Screens
      POST
    • Rename Screens
      POST
  • Inputs
    • Read Input List
    • Read Detailed Information of Specified Inputs
    • Set Cropping
    • Delete
    • Edit Cropping
    • Set Resolutions
    • Set Timing
    • Create Input Groups
    • Sort Input Groups
    • Edit Groups
    • Delete Groups
    • Delete Input Sources by Groups
    • Import EDID
    • Rename
    • Create Signal Source Playlists
    • Read Signal Source Playlists
    • Edit Signal Source Playlist Information
    • Enable Signal Source Playlists
    • Delete Signal Source Playlists
  • Outputs
    • Set Image Quality
    • Set Gamma
    • Set Output Locating
    • Rename
    • Set Timing for 4K Output Card
    • Read Detailed Information
    • Read Output List
    • Se Output Timing
    • Set Output Resolutions
    • Set Areas Loaded by All-in-One Cards
  • Layers
    • Set Stream Pulling Rules for IPC Sources Only
    • Add Layers
    • Delete Layers
    • Read Layer List
    • Read Layer Details
    • Set Layer Basic Information
    • Read Layer Z-order
    • Set Layer Information
    • Clear Layers
    • Set Layer Z-order
    • Lock Layers
    • Change Layer Source Information
    • Freeze Layers
    • Open Layer Layouts
  • Presets
    • Create Presets
    • Delete Presets
    • Set Basic Information of Specified Presets
    • Load Presets
    • Read Detailed Information of Specified Presets
    • Clear Presets
    • Get Preset Group List
    • Create Preset Groups
    • Delete Preset Groups
    • Get Preset Group Enumeration
    • Play Preset Playlist
    • Read All Presets
    • Read Preset Playlist
    • Read Current Played Preset
    • Edit Preset Groups
    • Overwrite Presets
  • BKG
    • Create BKG
    • Delete BKG
    • Get BKG Detailed Information
    • Comprehensive Query
  • IPC
    • IPC Source List
    • Read Specified Data in IPC Source List
    • IP Camera List
    • Obtain IPC Source Channel List
    • Obtain Details of IPC Source Channel List
    • Details of IPC Mosaic Source Channel Data
    • Add IPC Sources
    • Delete IPC Sources
    • Rename IPC Sources
    • Change IPC Source Channels
    • Add IPC Source Channels
    • Delete IPC Source Channels
    • IPC Source Slot List
    • IPC Sources and Channels
    • Check IPC Source Names
    • IPC Source Group List
    • Create IPC Source Groups
    • Delete IPC Source Groups
    • Change IPC Groups
    • Delete IPC Source Group Nodes
    • IPC Mosaic Source List
    • Create IPC Mosaic Source Templates
    • Update IPC Mosaic Source Templates
    • Delete IPC Mosaic Source Templates
    • Apply IPC Mosaic Source Templates
    • Rename IPC Mosaic Sources
  1. Home

Instructions

1 Project Background#

2 Communication Method#

Interface communication:
Uses the HTTP protocol with the default POST method and JSON data format.

3 Access Procedure#

1.
The administrator logs in to the system and obtains the pId and secretKey of the requestor. (Go to Settings > OpenAPI Management to add an access information as shown below.)
1.png
pId: Requestor ID
secretKey: Requestor secret key which can be modified
2. Develop according to the service requirements and interface documents of the requestor.
3. After encryption is enabled, you need to transmit the request parameters in an encrypted way. You can transmit them directly without encryption. Please refer to the following example.
Encrypted
Unencrypted
image.png

4 Data Format#

The interface message includes two parts: header and body. The following description is the body which must include the following four parts.
body: Interface request parameters only
sign: The message signature
pId: Project ID of the requestor
timeStamp: The current time, accurate to milliseconds
Encrypted
Transmit the ciphertext as follows.
Request parameters:
{
    "body": "yqJeC3BgcOHfKReCHzmhtp8VH1Fr3vxi",
    "sign": "MjI0OGYzMGQwMjhlMmI4YTNmMjM2MjE3MjYzYTFkODg=",
    "pId": "1",
    "timeStamp": "1631949094265"
}
Unencrypted
Transmit the plain text as follows.
Request parameters:
{
    "body": {
        "deviceId": 0
    },
    "sign": "YjlhMWRmZTVlNzJhYTg4MTgzMDFhNTdlOWE0NjMyNDc=",
    "pId": "YmRj",
    "timeStamp": "1689586062335"
}
TimeStamp: The current time, accurate to milliseconds
Sign: The message signature The signing rules are as follows.
Enable encryption: Base64 (md5 (body ciphertext + timestamp + pId + secretKey))
Disable encryption: Base64 (md5 (timestamp + pId))
The body is business data.
Enable encryption: Base64 (DES (body plain text))
Disable encryption: body plain text
Note: md5 should be processed in hexadecimal format.
1.
Output Messages
Device response format/basic message
{
"status": 0,
 "msg": “”,
"sign": "", message signature
"body": ""
}
Status: “0” represents success, and other values represent failure.
msg: The error message
sign: The message signature whose rules are the same as the input data
body: he business data whose rules are the same as the input data
Note: When a non-interface error is reported, the response message will only be as follows.
{
"status": System error code,
"msg": “”,
"body": ""
}
Only the plain text of the body is described in the following input and output messages.
2. Message Signing and Encryption Examples
Des encrypt:

def des_encrypt(s):
    """
    DES encrypt
    :param s: Raw string
    :return: Encrypted string, hexadecimal format
    """
    secret_key = KEY
    iv = secret_key
    k = des(secret_key, ECB, iv, pad=None, padmode=PAD_PKC5)
    en = k.encrypt(s, padmode=PAD_PKCS5)
    return base64.b64encode(en).decode('ascii')
Des decrypt:
def des_decrypt(s):
    """
    DES decrypt
    :param s: Encrypted string, hexadecimal format
    :return:  Decrypted string
    """
    secret_key = KEY
    iv = secret_key
    k = des(secret_ke

5 Interface Address#

The ${ root } of the interface address is a fixed part of the URL.
E.g. http://192.168.10.228:8000/open/api
Each interface URL description below will omit the ${ root } portion and only the following content is described.
Note: The interfaces in the following examples are called in an unencrypted way. All request parameters not marked as optional are mandatory.
Modified at 2026-02-09 02:26:10
Next
Error Codes
Built with