Skip to content

PRTG Device Sync V2

PRTG Device Sync V2: End-to-End Setup in rConfig V8.2.0

Section titled “PRTG Device Sync V2: End-to-End Setup in rConfig V8.2.0”

The V2 PRTG driver pulls device inventory from a PRTG Network Monitor server using its API v2 REST endpoints and feeds it through the unified V2 pipeline. This guide follows the same model as the Statseeker V2 setup — only the Setup tab fields and upstream-side conventions are different.

PlatformrConfig V8 SupportAuth supportedV2 Status
PRTGV8.2.0+API token, or session (user + pass / passhash)Lab tested

The point of setting up a V2 integration is to land in a steady state where rConfig’s device inventory is continuously reconciled against PRTG on a schedule, with no operator in the loop. That end state looks like this:

A Scheduled Task of type Integration V2 Job runs the PRTG instance in Apply mode on a cron, e.g. nightly. It runs the same six-stage pipeline you’ll run interactively in this guide, writes any create and update decisions to rConfig, leaves any conflicts or ambiguous matches in Problem Devices for review, and notifies you on completion.

To get there, you walk a one-time setup and a sanity-check loop:

  1. Create the integration instance — PRTG connectivity and auth in the Setup tab. Validate with Test Connection.
  2. Set up the Device Profiles the synced devices will inherit from. This happens under Inventory → Device Profiles, not in the integration itself.
  3. Run an Extract Preview to confirm filters return the right PRTG devices.
  4. Run a Sync Preview to walk the full pipeline (canonicalize → reconcile → decide) without writing.
  5. Run a Full Sync (Apply) once the preview’s decisions look right.
  6. Schedule the integration to run on a cron from the rConfig scheduler.

PRTG:

  • A PRTG Network Monitor server with API v2 enabled. API v2 listens on a separate port from the main web UI — by default 1616. Confirm this in your PRTG admin settings (System Administration → Core & Probes).
  • An API key (preferred) or a service-user username + password (or legacy passhash) with read access to devices.
  • Network connectivity from rConfig to PRTG on the API v2 port.
  • Devices labelled with PRTG tags that match your rConfig Device Profile slugs (or a default profile set on the instance).

rConfig V8.2.0+:

  • Administrator access
  • A clear answer to: which Device Profile (vendor, category, template, credential set, optional SNMP group / Vector agent) every synced device should adopt by default

Step 1 — Create the Integration Instance (Setup Tab)

Section titled “Step 1 — Create the Integration Instance (Setup Tab)”

Navigate to Settings → Integrations, then click New V2 Integration.

Placeholder — V2 driver picker (Settings → Integrations → New V2 Integration) with PRTG highlighted

The PRTG card carries a Lab tested badge — click it to open the Setup tab.

The form is rendered from prtg.schema.php and is laid out in two sections.

Placeholder — PRTG Setup tab with Connectivity and Authentication sections expanded

Connectivity

FieldDefaultNotes
Base URLrequiredRoot of the PRTG server, e.g. https://prtg.example.com. The API v2 port is appended automatically if not present.
API v2 Port1616The port PRTG exposes API v2 on. Override only if your PRTG admin has changed it.
Session Path/api/v2/sessionAuth/session endpoint. Rarely changed.
Timeout (Seconds)30HTTP request timeout. Range 1–120.
Verify TLS PeeronLeave on for production. Disable only for self-signed labs.
Verify TLS HostnameonLeave on for production. Disable only for hostname mismatches in labs.
Import Source TagsoffWhen on, PRTG device tags become canonical tags in rConfig and are attached on Apply.

Authentication — pick an Auth Mode:

  • Auto (recommended) — tries API token first, falls back to session credentials.
  • API Token — supply an API Key (or Bearer Token). Sent as api-key, Bearer, or Api-Key header — the driver tries each in turn.
  • Session — supply Username + Password, or Username + Passhash (legacy MD5). The driver POSTs to /api/v2/session to exchange these for a bearer token.

Click Test Connection in the action bar. The driver hits GET /api/v2/session with the configured auth.

Placeholder — Setup tab after a successful Test Connection (green status pill)

Common failures:

What you seeMost likely fix
Connection refused / timeoutWrong Base URL, wrong API v2 Port, or firewall blocking the API v2 port (default 1616).
SSL / certificate errorSelf-signed cert — toggle Verify TLS Peer / Hostname off (lab only).
401/403API key invalid, or username/password/passhash wrong. Try the alternate Auth Mode.
404 from /api/v2/sessionAPI v2 not enabled on the PRTG server. Enable in PRTG System Administration and restart the core.

Click Save. Move to Step 2 before running a preview.

Step 2 — Set Up Device Profiles (Inventory)

Section titled “Step 2 — Set Up Device Profiles (Inventory)”

Device Profiles live outside the integration. The PRTG V2 driver matches the upstream record’s tag value to the Device Profile slug.

Navigate to Inventory → Device Profiles.

Placeholder — Inventory → Device Profiles list

2.2 Create a Device Profile per device class

Section titled “2.2 Create a Device Profile per device class”

For each device class you want to sync, click New Device Profile and fill in:

  • Name — human-readable.
  • Slug — the value PRTG tags will reference.
  • Vendor, Category, Template, Credential set — standard rConfig device classification.
  • SNMP group, Vector agent, default tags, default model / prompt patterns — optional.

The PRTG V2 driver reads the profile slug from basic.tags (and tags as a fallback) on each device record. PRTG stores tags as a single space/comma/semicolon-delimited string per device — the driver splits the string and looks for a token that matches an active Device Profile slug.

In PRTG: open the device, click Settings, scroll to Tags, and add the slug (space-delimited from any existing tags):

cisco-ios-core network production

If you cannot tag every device, set a default profile on the PRTG integration instance so untagged devices inherit a sensible fallback.

Placeholder — PRTG device with tags including a Device Profile slug

Click Extract Preview in the action bar (amber download icon).

Placeholder — PRTG Extract Preview tab with summary cards and result table

PRTG supports filters on:

  • name (operators: equals, contains, in)
  • basic.tags (operators: equals, contains, in)
  • status (operators: equals, in)

Open a row’s Details hover to see the full raw payload — confirm name, the chosen IP field (basic.host or basic.hostv6) and the tag value used for profile resolution are all present.

For the full anatomy of this tab, see the Extract Preview Tab reference.

Click Preview Sync in the action bar (sky icon). Sync Preview runs the complete pipeline through decide and stops without writing.

Switch to the Run Insights tab to inspect the result.

Placeholder — Run Insights tab populated after a PRTG Sync Preview

For PRTG the most-watched stage metrics are:

  • extract.items_extracted — should match the Extract Preview count (within filter scope).
  • canonicalize.invalid — non-zero usually means a device has no basic.host set, or no tag matches an active Device Profile.
  • reconcile.ambiguous — non-zero means more than one rConfig device matches the same PRTG device.

If Open Problems is greater than zero, switch to the Problem Devices tab and triage the rows.

For the full anatomy of these tabs, see the Run Insights Tab reference and Problem Devices Tab reference.

When the Sync Preview decisions look correct and Open Problems is at an acceptable level, click Full Sync in the action bar (indigo icon).

Full Sync re-runs the full pipeline and finishes by executing the apply stage:

  1. Creates new devices for each decision = create.
  2. Updates existing devices for each decision = update.
  3. Assigns the resolved Device Profile to each affected device.
  4. Syncs canonical tags onto the device when Import Source Tags was on at Setup.
  5. Updates integration_device_links (first_seen, last_seen).
  6. Schedules an initial configuration backup for newly created devices.

Placeholder — Run Insights tab after a Full Sync, with the apply stage card populated

Re-check Problem Devices after Apply.

For any of the runs above, you can swap the action-bar button for the Open Debug Console button (shimmer icon).

Placeholder — Debug Console modal mid-run for the PRTG driver

For the full anatomy of the dialog, see the Debug Console reference.

Once a manual Full Sync completes cleanly, navigate to Scheduled Tasks → Add Task → Integration V2 Job, pick the PRTG instance, choose Apply mode, and set the cron schedule.

Terminal window
# Sync Preview (does not write)
php /var/www/html/rconfig8/current/artisan rconfig:integration-v2-run --driver=prtg --mode=preview
# Full Sync (Apply) by explicit instance ID, with debug output
php artisan rconfig:integration-v2-run 18 --mode=apply --debug
# Queue an async run
php artisan rconfig:integration-v2-run 18 --mode=apply --queue
Canonical fieldPRTG payload paths checked, in order
External IDid
Hostnamenamebasic.host
Primary IPbasic.hostbasic.hostv6
Serialnot populated
Vendornot populated
Modelnot populated
Tags / Profilebasic.tagstags (space/comma/semi-delimited string, split on demand)
  • Strong match — by instance_link_external_id only (no serial available).
  • Medium match — hostname and primary IP both unique in rConfig.
  • No automatic medium-match auto-relink, no cross-family matching.

The default mode is disable_link_only — when a previously-synced PRTG device disappears from the upstream, rConfig disables the integration_device_links row but leaves the device intact.

  • Connection refused on the API v2 port. Confirm PRTG API v2 is enabled and the port (default 1616) is open from rConfig. Test from a shell: curl -k https://prtg.example.com:1616/api/v2/session.
  • API key auth fails but session works. PRTG accepts API keys via three different header forms. The driver tries api-key, Bearer and Api-Key in turn — if all three fail, your API key was likely revoked or scoped to a user without device read access. Generate a new key.
  • Session auth fails. If using passhash, regenerate it from PRTG (the passhash changes when the password changes). If using password, confirm the user can log in to the PRTG web UI.
  • Extract returns zero devices. Re-check name / basic.tags / status filters. The PRTG API filters Down devices the same as Up ones, so status filters can be useful to scope.
  • Profile resolution fails. PRTG tags are a single delimited string — confirm your profile slug appears as a discrete token in basic.tags. Check the Extract Preview row’s Details to see exactly what the upstream returned.
  • Reconciliation produces ambiguous matches. Two rConfig devices share the same hostname or primary IP. Resolve in Problem Devices by picking the correct target.