Skip to main content
POST
/
api
/
relay
/
getThirdPartyCameraDiscoveryScanStatus
Get third party camera discovery scan status
curl --request POST \
  --url https://api2.rhombussystems.com/api/relay/getThirdPartyCameraDiscoveryScanStatus \
  --header 'Content-Type: application/json' \
  --header 'x-auth-apikey: <api-key>' \
  --header 'x-auth-scheme: <x-auth-scheme>' \
  --data '{}'
import requests

url = "https://api2.rhombussystems.com/api/relay/getThirdPartyCameraDiscoveryScanStatus"

payload = {}
headers = {
    "x-auth-scheme": "<x-auth-scheme>",
    "x-auth-apikey": "<api-key>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
  method: 'POST',
  headers: {
    'x-auth-scheme': '<x-auth-scheme>',
    'x-auth-apikey': '<api-key>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({})
};

fetch('https://api2.rhombussystems.com/api/relay/getThirdPartyCameraDiscoveryScanStatus', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
HttpResponse<String> response = Unirest.post("https://api2.rhombussystems.com/api/relay/getThirdPartyCameraDiscoveryScanStatus")
  .header("x-auth-scheme", "<x-auth-scheme>")
  .header("x-auth-apikey", "<api-key>")
  .header("Content-Type", "application/json")
  .body("{}")
  .asString();
{
  "camerasFound": 123,
  "error": true,
  "errorMsg": "<string>",
  "hasRun": true,
  "inProgress": true,
  "nvrCount": 123,
  "nvrProgress": [
    {
      "camerasFound": 123,
      "currentIp": "<string>",
      "errorMsg": "<string>",
      "ipResults": [
        {
          "acceptedUsername": "<string>",
          "ipAddress": "<string>",
          "macAddress": "<string>",
          "manufacturer": "<string>",
          "model": "<string>",
          "rtspFound": true,
          "source": "<string>",
          "status": "<string>"
        }
      ],
      "ipResultsTruncated": true,
      "ipsProbed": 123,
      "ipsTotal": 123,
      "nvrUuid": "<string>",
      "phase": "<string>",
      "scannedCidrs": [
        "<string>"
      ],
      "updatedMs": 123
    }
  ],
  "pendingCount": 123,
  "scanId": "<string>",
  "startedMs": 123,
  "warningMsg": "<string>"
}

Authorizations

x-auth-apikey
string
header
required

Your Rhombus API key. Must be accompanied by the x-auth-scheme header set to api-token (or partner-api-token for partner endpoints).

Headers

x-auth-scheme
enum<string>
default:api-token
required

Authentication scheme identifier. Use api-token for standard API key authentication, partner-api-token for partner API key authentication. Must be paired with the x-auth-apikey header containing your API key.

Available options:
api-token,
api,
partner-api-token,
partner-api

Body

application/json

Request object for getting the progress of the current/most-recent third-party camera discovery run in the organization.

Response

200 - application/json

OK

Progress of the current/most-recent third-party camera discovery run.

camerasFound
integer<int32> | null

Number of cameras discovered so far in this run.

error
boolean | null
errorMsg
string | null
hasRun
boolean | null

Whether discovery has ever been run for this org. When false, all other fields are unset/zero.

inProgress
boolean | null

Whether a discovery run is still in progress (at least one Relay scan outstanding and the run is not stale).

nvrCount
integer<int32> | null

Total number of Relays (NVRs) this run is scanning.

nvrProgress
object[] | null

Per-Relay live scan progress and per-IP probe results (for troubleshooting).

pendingCount
integer<int32> | null

Number of Relays whose scan has not yet finished. Zero means the run is complete.

scanId
string | null

Opaque id of the run, so clients can tell if a newer run superseded theirs.

startedMs
integer<int64> | null

Epoch millis when the run started.

warningMsg
string | null
Last modified on July 10, 2026