URI: /cgi-bin/blink.cgi

Request Method: POST

Function: Control the LED on the miner control board to flash for miner positioning.

Request Content:

{"blink": true}         // Turn on blinking.  
{"blink": false}        // Turn off blinking.

Response Content:

{"code":"B000"}         //  Parse to {"blink":true}and execute.   
{"code":"B100"}         //  Parse to {"blink":false}and execute.  
{"code":"B001"}         //  Others.

Curl Command Demonstration:

curl --digest -u root:root -X POST -H "Content-Type: application/json" -d '{"blink": true}' http://192.168.1.1/cgi-bin/blink.cgi


URI: /cgi-bin/get_blink_status.cgi

Request Method: GET

Function: Get miner LED information.(whether it is flashing, whether the miner positioning function is turned on.)

Request Content: Empty

Response Content:

{"blink": true}        // Blinking.
{"blink": false}       // Not blinking.

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/get_blink_status.cgi


Get list of log dates

URI: /cgi-bin/dlog.cgi

Request Method: GET

Function: Get log date list of the miner.

Request Content: Empty

Response Content: Log date list.

{
  "dlog": true, 
  "log_list":[
    "/2025-06/18",            // Year-Month/Day.
    "/2025-06/19",
    "/2025-06/20",
    "/2025-06/21",
    "/2025-06/22",
    "/2025-06/23",
    "/2025-06/24",
    "/2025-06/25",
    "/2025-07/08"
  ]
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/dlog.cgi


Backup logs

URI: /cgi-bin/create_log_backup.cgi

Request Method: POST

Function: Back up logs.

Request Content: The date on which the log will be saved.Check the dates on which logs can be saved from Get list of log dates.Supports log backup for one or more days.

[  
  "/2025-07/04",       // Year-Month/Day.
  "/2025-07/05" 
]

Response Content: If successful, a file named "antminer_log_202507-04_202507-05.tar" is generated, where 202507-04 is the earliest date of the log and 202507-05 is the latest date of the log.If you only back up one day's log, the file name is "antminer_log2025-07-04.tar",2025-07-04 is the backup date.

{"stats":"success","code":"L000","msg":"antminer_log_2025-07-04_2025-07-05.tar"}  // The backup was successful.
{"stats":"error","code":"L[code]","msg":"[msg]"}          // Get the failure reason based on "code" and "msg".

Curl Command Demonstration:

curl --digest -u root:root -X POST -H "Content-Type: application/json" -d '["/2025-07/04","/2025-07/05"]' http://192.168.1.1/cgi-bin/create_log_backup.cgi

If the execution is successful, download the log to your local machine using the following command.

curl --digest -u root:root -O http://192.168.1.1/log/antminer_log_2025-07-04_2025-07-05.tar

Get historical logs

URI: /cgi-bin/hlog.cgi

Request Method: GET

Function: Get historical logs of the miner.

Request Content: Empty

Response Content: Log

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/hlog.cgi


Get miner log data

URI: /cgi-bin/log.cgi

Request Method: GET

Function: Get log data of the miner.

Request Content: Empty

Response Content: Log

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/log.cgi


Get miner type and build information

URI: /cgi-bin/miner_type.cgi

Request Method: GET

Function: Get the miner's type and build information.

Request Content: Empty

Response Content:

{
    "miner_type": "Antminer S21+", 
    "subtype": "AMLCtrl_A3HB70XXX", 
    "fw_version": "Fri Apr 18 16:15:41 CST 2025"
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/miner_type.cgi


Get miner’s pool information

URI: /cgi-bin/pools.cgi

Request Method: GET

Function: Get mining pool information for the miner.

Request Content: Empty

Response Content: Mining pool information.

{
  "STATUS": {
    "STATUS": "S",
    "when": 1751944006,
    "Msg": "pools",
    "api_version": "1.0.0"
  },
  "INFO": {
    "miner_version": "platform[AML]",
    "CompileTime": "Fri Apr 18 16:15:41 CST 2025"
  },
  "POOLS": [
    {
      "index": 0,
      "url": "YOUR_URL_1",      // Pool 1 url.
      "user": "YOUR_USER_1",    // Pool 1 username.
      "status": "Alive",        // Connection status.
      "priority": 0,            // Use priority,the smaller the value, the higher the priority.
      "getworks": 308,          // Number of times the work was requested.
      "accepted": 0,            // The total number of shares accepted by the pool.
      "rejected": 0,            // Total number of shares rejected by the pool.
      "discarded": 0,           // Total number of shares discarded.
      "stale": 0,               // Total number of shares submitted but expired.
      "diff": "1.05M",          // The current target difficulty of the pool.
      "diffa": 0,               // The cumulative difficulty of the accepted shares.
      "diffr": 0,               // The cumulative difficulty of rejected shares.
      "diffs": 0,               // The cumulative difficulty of outdated shares.
      "lsdiff": 0,              // The last successfully submitted share difficulty.
      "lstime": "0"             // Time since the last share submission.
    },
    {
      "index": 1,
      "url": "YOUR_URL_2",      // Pool 2 url.
      "user": "YOUR_USER_2",    // Pool 2 username.
      "status": "Dead",
      "priority": 1,
      "getworks": 0,
      "accepted": 0,
      "rejected": 0,
      "discarded": 0,
      "stale": 0,
      "diff": "0",
      "diffa": 0,
      "diffr": 0,
      "diffs": 0,
      "lsdiff": 0,
      "lstime": "0"
    },
    {
      "index": 2,
      "url": "YOUR_URL_3",      // Pool 3 url.
      "user": "YOUR_USER_3",    // Pool 3 username.
      "status": "Dead",
      "priority": 2,
      "getworks": 0,
      "accepted": 0,
      "rejected": 0,
      "discarded": 0,
      "stale": 0,
      "diff": "0",
      "diffa": 0,
      "diffr": 0,
      "diffs": 0,
      "lsdiff": 0,
      "lstime": "0"
    }
  ]
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/pools.cgi


Reboot miner

URI: /cgi-bin/reboot.cgi

Request Method: GET

Function: Reboot the miner.

Request Content: Empty

Response Content:

Status 200      // Executed successfully.

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/reboot.cgi


Clear miner configuration

URI: /cgi-bin/reset_conf.cgi

Request Method: GET

Function: Clear miner configuration.

Request Content: Empty

Response Content:

Status 200      // Executed successfully.

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/reset_conf.cgi


Get IP configuration

URI: /cgi-bin/get_network_info.cgi

Request Method: GET

Function: Get IP configuration information.

Request Content: Empty

Response Content: IP configuration information.

{
  "nettype": "DHCP",
  "netdevice": "eth0",
  "macaddr": "02:34:DA:F1:EB:5D",
  "ipaddress": "192.168.1.99",
  "netmask": "255.255.255.0",
  "conf_nettype": "DHCP",
  "conf_hostname": "Antminer",
  "conf_ipaddress": "",
  "conf_netmask": "",
  "conf_gateway": "",
  "conf_dnsservers": ""
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/get_network_info.cgi


Modify IP configuration

URI: /cgi-bin/set_network_conf.cgi

Request Method: POST

Function: Modify IP configuration.This API is typically used to enable static IP mode.

Request Content:

For static IP mode, please use the following JSON configuration:
{
  "ipHost":   "YOUR_HOSTNAME", 
  "ipPro":    2,                        // IP address allocation method.   1:DHCP  2:static
  "ipAddress":"YOUR_IP_Address",   
  "ipSub":    "YOUR_SUBNET_MASK",
  "ipGateway":"YOUR_GATEWAY_IP",
  "ipDns":    "YOUR_DNS_SERVER_IP"
}

For DHCP mode, please use the following JSON configuration:
{
  "ipHost":   "YOUR_HOSTNAME", 
  "ipPro":    1                
}

Response Content:

{"stats":"success","code":"N000","msg":"OK!"}           // Modification successful.
{"stats":"error","code":"N[code]","msg":"[msg]"}        // Get the failure reason based on "code" and "msg".

Curl Command Demonstration:

curl --digest -u root:root -X POST -H "Content-Type: application/json" -d '{"ipHost":"Antminer","ipPro":2,"ipAddress":"192.168.137.4","ipSub":"255.255.255.0","ipGateway":"192.168.137.1","ipDns":"8.8.8.8"}' http://192.168.1.1/cgi-bin/set_network_conf.cgi


Get miner configuration

URI: /cgi-bin/get_miner_conf.cgi

Request Method: GET

Function: Get the configuration of the miner.(mining pool, running mode)

Request Content: Empty

Response Content:

{
    "pools": [
        {
            "url": "",              // Pool 1 url.
            "user": "",             // Pool 1 username.
            "pass": ""              // Pool 1 password.
        },
        {
            "url": "",              // Pool 2 url.
            "user": "",             // Pool 2 username.
            "pass": ""              // Pool 2 password.
        },
        {
            "url": "",              // Pool 3 url.
            "user": "",             // Pool 3 username.
            "pass": ""              // Pool 3 password.
        }
    ],
    "bitmain-user-ip-cat": false,   // Whether to append IP as a suffix to the pool username.
    "bitmain-fan-ctrl": false,      // Whether the fan can be controlled manually.
    "bitmain-fan-pwm": 100,         // The fan's current PWM(0-100). 
    "bitmain-work-mode": 0          // Operation mode: 0:Normal mode, 1:Sleep mode, 2:High-performance mode, 3:Low-power mode.
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/get_miner_conf.cgi


Get adjustable range of hashrate percent

URI: /cgi-bin/get_adjustment_params.cgi

Request Method: GET

Function: Get an adjustable range of hashrate.

Request Content: Empty

Response Content:

{
    "hashrate_percent_min": 50,
    "hashrate_percent_max": 100
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/get_adjustment_params.cgi


Modify miner configuration

URI: /cgi-bin/set_miner_conf.cgi

Request Method: POST

Function: Modify miner configuration.(mining pool, operation mode, hashrate percent)

Request Content: All key-value pairs that need modification.

{
    "bitmain-work-mode":"2",          // Operation mode: 0:Normal mode, 1:Sleep mode, 2:High-performance mode, 3:Low-power mode.
    "bitmain-hashrate-percent": "98", // The hashrate-percent that will be set.Adjustable range reference: Get adjustable range of hashrate.
    "pools":[
        {"url":"YOUR_NEW_URL_1",      // Pool 1 url.
        "user":"YOUR_NEW_USER_1",     // Pool 1 username.
        "pass":"YOUR_NEW_PASS_1"      // Pool 1 password.
        },
        {"url":"YOUR_NEW_URL_2",      // Pool 2 url.
        "user":"YOUR_NEW_USER_2",     // Pool 2 username.
        "pass":"YOUR_NEW_PASS_2"      // Pool 2 password.
        },
        {"url":"YOUR_NEW_URL_3",      // Pool 3 url.
        "user":"YOUR_NEW_USER_3",     // Pool 3 username.
        "pass":"YOUR_NEW_PASS_3"      // Pool 3 password.
        }
    ]
}

Response Content:

{"stats": "success", "code": "M000", "msg": "OK!"}              // Modification successful.
{"stats": "error", "code": "M001", "msg": "Illegal request!"}   // Modification failed.

Curl Command Demonstration:

curl --digest -u root:root -X POST -H "Content-Type: application/json" -d '{"bitmain-work-mode":"2","bitmain-hashrate-percent": "98","bitmain-energy-consumption":"31","pools":[{"url":"YOUR_NEW_URL_1","user":"YOUR_NEW_USER_1","pass":"YOUR_NEW_PASS_1"},{"url":"YOUR_NEW_URL_2","user":"YOUR_NEW_USER_2","pass":"YOUR_NEW_PASS_2"},{"url":"YOUR_NEW_URL_3","user":"YOUR_NEW_USER_3","pass":"YOUR_NEW_PASS_3"}]}' http://192.168.1.1/cgi-bin/set_miner_conf.cgi

ATTENTION:

Supports individual configuration of key-value pairs. For firmware versions before May 20th, if only the mode is switched without changing the pool, the pool settings will be reset to zero.


Get miner status

URI: /cgi-bin/stats.cgi

Request Method: GET

Function: Get the status of the miner.

Request Content: Empty

Response Content:

{
    "STATUS": {
        "STATUS": "S",
        "when": 1751944531,
        "Msg": "stats",
        "api_version": "1.0.0"
    },
    "INFO": {
        "miner_version": "platform[AML]",
        "CompileTime": "Fri Apr 18 16:15:41 CST 2025",
    },
    "STATS": [
        {
            "elapsed": 0,                   // Elapsed time.
            "rate_5s": 0.00,                // Hashrate in the last 5 seconds.
            "rate_30m": 0.00,               // Hashrate in the last 30 minutes.
            "rate_avg": 0.34,               // Average Hashrate.
            "rate_ideal": 16830.0,          // Theoretical Hashrate.
            "rate_sale": 225000,            // Sales of Hashrate.
            "rate_unit": "GH/s",
            "chain_num": 3, 
            "fan_num": 4,
            "fan": [
                4560,                       // Fan speed.
                4560,
                4530,
                4530
            ],
            "miner-mode": 0,                // Operation mode: 0:Normal mode, 1:Sleep mode, 2:High-performance mode, 3:Low-power mode.
            "freq-level-mode": false,       // Whether to enable dynamic frequency adjustment.
            "freq-level-min": 50,           // Miner minimum frequency level.
            "freq-level": 100,              // Current frequency level of the miner.
            "watt": 0,                      // Power consumption.
            "jt": 0.00,                     // Energy consumption per unit Hashrate.
            "ambient_temp": 34.50,          // Ambient temperature.
            "chain": [
                {
                    "index": 0,
                    "freq_avg": 708,        // The average frequency of the chain.
                    "rate_ideal": 5610.0,   // Theoretical Hashrate.
                    "rate_real": 0.00,      // Real Hashrate.
                    "asic_num": 55,
                    "temp_pic": [               
                        40,
                        40,
                        50,
                        50
                    ],
                    "temp_pcb": [
                        50,
                        50,
                        60,
                        60
                    ],
                    "temp_chip": [
                        55,
                        55,
                        65,
                        65
                    ],
                    "eeprom_loaded": true,      // Whether the EEPROM configuration loaded.
                    "sn": "JYZZYT0BEJCAH002M",  // Serial number.
                    "eeprom_level": 1,
                    "eeprom_vol": 1331,
                    "eeprom_freq": 708, 
                    "eeprom_bin": 2,
                    "eeprom_ft": "F1V01B4C2",
                    "tpl": [                    // ASIC arrangement in chain.
                        [1,2,3,4,5],
                        [10,9,8,7,6],
                        [11,12,13,14,15],
                        [20,19,18,17,16],
                        [21,22,23,24,25],
                        [30,29,28,27,26],
                        [31,32,33,34,35],
                        [40,39,38,37,36],
                        [41,42,43,44,45],
                        [50,49,48,47,46],
                        [51,52,53,54,55]
                    ]
                },
                {
                    "index": 1,
                    "freq_avg": 710,
                    "rate_ideal": 5610.0,
                    "rate_real": 0.00,
                    "asic_num": 55,
                    "temp_pic": [
                        40,
                        40,
                        49,
                        49
                    ],
                    "temp_pcb": [
                        50,
                        50,
                        59,
                        59
                    ],
                    "temp_chip": [
                        55,
                        55,
                        64,
                        64
                    ],
                    "eeprom_loaded": true,
                    "sn": "JYZZYT0BEJCAH002J",
                    "eeprom_level": 1,
                    "eeprom_vol": 1331,
                    "eeprom_freq": 710,
                    "eeprom_bin": 2,
                    "eeprom_ft": "F1V01B4C2",
                    "tpl": [
                        [1,2,3,4,5],
                        [10,9,8,7,6],
                        [11,12,13,14,15],
                        [20,19,18,17,16],
                        [21,22,23,24,25],
                        [30,29,28,27,26],
                        [31,32,33,34,35],
                        [40,39,38,37,36],
                        [41,42,43,44,45],
                        [50,49,48,47,46],
                        [51,52,53,54,55]
                    ]
                },
                {
                    "index": 2,
                    "freq_avg": 710,
                    "rate_ideal": 5610.0,
                    "rate_real": 0.00,
                    "asic_num": 55,
                    "temp_pic": [
                        39,
                        39,
                        48,
                        48
                    ],
                    "temp_pcb": [
                        49,
                        49,
                        58,
                        58
                    ],
                    "temp_chip": [
                        54,
                        54,
                        63,
                        63
                    ],
                    "eeprom_loaded": true,
                    "sn": "JYZZYT0BEJCAH002P",
                    "eeprom_level": 1,
                    "eeprom_vol": 1331,
                    "eeprom_freq": 710,
                    "eeprom_bin": 2,
                    "eeprom_ft": "F1V01B4C2",
                    "tpl": [
                        [1,2,3,4,5],
                        [10,9,8,7,6],
                        [11,12,13,14,15],
                        [20,19,18,17,16],
                        [21,22,23,24,25],
                        [30,29,28,27,26],
                        [31,32,33,34,35],
                        [40,39,38,37,36],
                        [41,42,43,44,45],
                        [50,49,48,47,46],
                        [51,52,53,54,55]
                    ]
                }
            ]
        }
    ]
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/stats.cgi


Get hashrate

URI: /cgi-bin/chart.cgi

Request Method: GET

Function: Get the real-time and historical hashrate of chains.

Request Content: Empty

Response Content:

{
    "STATUS": {
        "STATUS": "S",
        "when": 1751532202,
        "Msg": "rate",
        "api_version": "1.0.0"
    },
    "INFO": {
        "miner_version": "platform[AML]",
        "CompileTime": "Fri Apr 18 16:15:41 CST 2025",
    },
    "RATE": [
        {
            "unit": "GH/s",
            "xAxis": [                   // Time point.
                "0min",
                "10min",
                "20min",
                "30min",
                "40min",
                "50min",
                "60min",
                "70min"
            ],
            "series": [
                {
                    "name": "chain0",
                    "data": [           
                        72347,          // Hashrate at the corresponding time point.
                        72388,
                        72758,
                        72772,
                        72531,
                        72054,
                        71891,
                        72619
                    ]
                },
                {
                    "name": "chain1",
                    "data": [
                        74180,
                        72615,
                        72281,
                        72536,
                        73227,
                        72681,
                        72954,
                        73240
                    ]
                },
                {
                    "name": "chain2",
                    "data": [
                        75829,
                        73786,
                        73308,
                        73839,
                        74180,
                        73370,
                        74453,
                        73746
                    ]
                }
            ]
        }
    ]
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/chart.cgi


Get DROA runtime logs

URI: /cgi-bin/get_droa.cgi

Request Method: GET

Function: Get droa logs.

Request Content: Empty

Response Content: Log

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/get_droa.cgi


Get system information

URI: /cgi-bin/get_system_info.cgi

Request Method: GET

Function: Get system information.

Request Content: Empty

Response Content:

{  
  "nettype": "DHCP",  
  "netdevice": "eth0",  
  "macaddr": "02:34:DA:F1:EB:5D",  
  "hostname": "Antminer",  
  "ipaddress": "192.168.1.99",  
  "netmask": "255.255.255.0",  
  "gateway": "",  
  "dnsservers": "",  
  "system_mode": "GNU/Linux",  
  "system_kernel_version": "Linux 4.9.113 #1 SMP PREEMPT Fri Apr 18 16:41:29 CST 2025",  
  "system_filesystem_version": "FD-1.5(250418-S21+)",  
  "firmware_type": "Factory",  
  "serinum": "JYZZG4UBEJCAH000F"  
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/get_system_info.cgi


Change password

URI: /cgi-bin/passwd.cgi

Request Method: POST

Function: Change the password.

Request Content:

{
  "curPwd": "root",
  "newPwd": "newpassword",
  "confirmPwd": "newpassword"
}

Response Content:

{"stats":"success","code":"P000","msg":"OK!"}           // The setup was successful.  
{"stats":"error","code":"P[code]","msg":"[msg]"}        // Get the failure reason based on "code" and "msg".

Curl Command Demonstration:

curl --digest -u root:root -X POST -H "Content-Type: application/json" -d '{"curPwd": "root","newPwd": "newpassword","confirmPwd": "newpassword"}' http://192.168.1.1/cgi-bin/passwd.cgi


Get an overview of the miner

URI: /cgi-bin/summary.cgi

Request Method: GET

Function: Get an overview of the miner.

Request Content: Empty

Response Content:

{  
  "STATUS": {  
    "STATUS": "S",  
    "when": 1751945786,  
    "Msg": "summary",  
    "api_version": "1.0.0"  
  },  
  "INFO": {  
    "miner_version": "platform[AML]",  
    "CompileTime": "Fri Apr 18 16:15:41 CST 2025",  
  },  
  "SUMMARY": [  
    {  
      "elapsed": 818,           // Elapsed time.
      "rate_5s": 232436.76,     // Hashrate in the last 5 seconds.
      "rate_30m": 231431.07,    // Hashrate in the last 30 minutes.
      "rate_avg": 231429.72,    // Average Hashrate.
      "rate_ideal": 232866.0,   // Theoretical Hashrate.
      "rate_unit": "GH/s",  
      "bestshare": 0,           // Bestshare value submitted to the pool.
      "status": [  
        {  
          "type": "rate",  
          "status": "s",        // s:normal, e:abnormal.
          "code": 0,  
          "msg": ""  
        },  
        {  
          "type": "network",  
          "status": "s",  
          "code": 0,  
          "msg": ""  
        },  
        {  
          "type": "fans",  
          "status": "s",  
          "code": 0,  
          "msg": ""  
        },  
        {  
          "type": "temp",  
          "status": "s",  
          "code": 0,  
          "msg": ""  
        }  
      ]  
    }  
  ]  
}

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/summary.cgi


Upgrading the firmware

URI: /cgi-bin/upgrade.cgi

Request Method: POST

Function: Upgrade the firmware and keep the configuration.

Request Content: Firmware path and file.

file=@<firmware_file_path>

Response Content:

{"stats":"success","code":"U000","msg":"OK!"}               // Upgrade successfully.  
{"stats":"error","code":"U[code]","msg":"[msg]"}            // Upgrade failed.The following are the reasons for the error:
                                                            // 1.Incorrect firmware signature, damaged file.
                                                            // 2.Subtype mismatch.
                                                            // 3.Unsupported firmware version.

Curl Command Demonstration:

curl --digest -u root:root -v -H "Expect:" -F "file=@<firmware_file_path>" http://192.168.1.1/cgi-bin/upgrade.cgi


Upgrading the firmware(clear the configuration)

URI: /cgi-bin/upgrade_clear.cgi

Request Method: POST

Function: Upgrade the firmware and clear the configuration.

Request Content: Firmware path and file.

file=@<firmware_file_path>

Response Content:

{"stats":"success","code":"U000","msg":"OK!"}             // Upgrade successfully.  
{"stats":"error","code":"U[code]","msg":"[msg]"}          // Upgrade failed.The following are the reasons for the error:
                                                          // 1.Incorrect firmware signature, damaged file.
                                                          // 2.Subtype mismatch.
                                                          // 3.Unsupported firmware version.

Curl Command Demonstration:

curl --digest -u root:root -v -H "Expect:" -F "file=@<firmware_file_path>" http://192.168.1.1/cgi-bin/upgrade_clear.cgi


Get device abnormality warnings

URI: /cgi-bin/warning.cgi

Request Method: GET

Function: Get device abnormality warnings.

Request Content: Empty

Response Content:

Go to https://service.bitmain.com/support/productManual to download and review the User Guide for the device.

Curl Command Demonstration:

curl --digest -u root:root http://192.168.1.1/cgi-bin/warning.cgi


results matching ""

    No results matching ""