Skip to main content
POST
/
api
/
relay
/
addThirdPartyCameraViaOnvif
Add third party camera via ONVIF
curl --request POST \
  --url https://api2.rhombussystems.com/api/relay/addThirdPartyCameraViaOnvif \
  --header 'Content-Type: application/json' \
  --header 'x-auth-apikey: <api-key>' \
  --header 'x-auth-scheme: <x-auth-scheme>' \
  --data '
{
  "autoAssign": true,
  "ipAddress": "10.5.4.20",
  "locationUuid": "AAAAAAAAAAAAAAAAAAAAAA",
  "name": "<string>",
  "nvrUuid": "AAAAAAAAAAAAAAAAAAAAAA",
  "password": "<string>",
  "trySavedCredentials": true,
  "username": "<string>"
}
'
import requests

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

payload = {
"autoAssign": True,
"ipAddress": "10.5.4.20",
"locationUuid": "AAAAAAAAAAAAAAAAAAAAAA",
"name": "<string>",
"nvrUuid": "AAAAAAAAAAAAAAAAAAAAAA",
"password": "<string>",
"trySavedCredentials": True,
"username": "<string>"
}
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({
autoAssign: true,
ipAddress: '10.5.4.20',
locationUuid: 'AAAAAAAAAAAAAAAAAAAAAA',
name: '<string>',
nvrUuid: 'AAAAAAAAAAAAAAAAAAAAAA',
password: '<string>',
trySavedCredentials: true,
username: '<string>'
})
};

fetch('https://api2.rhombussystems.com/api/relay/addThirdPartyCameraViaOnvif', 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/addThirdPartyCameraViaOnvif")
.header("x-auth-scheme", "<x-auth-scheme>")
.header("x-auth-apikey", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"autoAssign\": true,\n \"ipAddress\": \"10.5.4.20\",\n \"locationUuid\": \"AAAAAAAAAAAAAAAAAAAAAA\",\n \"name\": \"<string>\",\n \"nvrUuid\": \"AAAAAAAAAAAAAAAAAAAAAA\",\n \"password\": \"<string>\",\n \"trySavedCredentials\": true,\n \"username\": \"<string>\"\n}")
.asString();
{
  "assignedDeviceUuid": "AAAAAAAAAAAAAAAAAAAAAA.v0",
  "assignmentMsg": "<string>",
  "codec": "<string>",
  "error": true,
  "errorMsg": "<string>",
  "found": true,
  "ipAddress": "<string>",
  "macAddress": "<string>",
  "manufacturer": "<string>",
  "model": "<string>",
  "name": "<string>",
  "rtspUrl": "<string>",
  "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

Add a third-party camera via ONVIF from an IP address and credentials.

autoAssign
boolean | null

Provision (assign to the NVR) automatically after a successful probe. Defaults to false (probe-then-confirm).

ipAddress
string | null

IPv4 address of the camera to probe

Example:

"10.5.4.20"

locationUuid
string<RUUID> | null

base 64 (url-safe) uuid string

Example:

"AAAAAAAAAAAAAAAAAAAAAA"

name
string | null

Camera name. When blank, derived from the ONVIF manufacturer and model.

nvrUuid
string<RUUID> | null

base 64 (url-safe) uuid string

Example:

"AAAAAAAAAAAAAAAAAAAAAA"

password
string | null

ONVIF password to try first (optional)

trySavedCredentials
boolean | null

Also try the org's saved third-party camera credentials. Defaults to true.

username
string | null

ONVIF username to try first (optional)

Response

200 - application/json

OK

Result of adding a third-party camera via ONVIF.

assignedDeviceUuid
string<DeviceFacetUuid> | null

RUUID with optional appended facet information

Example:

"AAAAAAAAAAAAAAAAAAAAAA.v0"

assignmentMsg
string | null

Why auto-assignment did not happen or failed, when applicable

codec
string | null

Detected codec(s)

error
boolean | null
errorMsg
string | null
found
boolean | null

Whether an ONVIF-streamable camera was found at the address

ipAddress
string | null

Resolved camera IP address

macAddress
string | null

Camera MAC address as reported by ONVIF

manufacturer
string | null

Manufacturer reported by ONVIF

model
string | null

Model reported by ONVIF

name
string | null

Name the camera was (or would be) provisioned with

rtspUrl
string | null

RTSP stream URL derived from ONVIF

warningMsg
string | null
Last modified on July 10, 2026