Skip to content

N-able N-central → Breeze

N-central migrations have one structural wrinkle nobody expects: the probe. Alongside a per-endpoint agent, N-central deploys one or more Windows probes per site that perform network discovery and agentless monitoring of switches, printers, and ESXi hosts. Migrating the agents is straightforward; deciding what replaces the probe’s agentless coverage is the part that gets forgotten until cutover.

Service Templates and AMPs are the other two N-central-specific pieces. This page covers both.

Read Migrating to Breeze first.


N-central Breeze Notes
Service Organization (SO) Partner
Customer Organization Direct match.
Site Site Direct match. Many N-central estates only use the implicit single site per customer.
Device filter Device Group N-central filters map to Breeze dynamic device groups.
Device Device
Contact Breeze contacts are first-class records, organization-level or pinned to a site. Load them from your PSA export with Recipe 1c.
Probe Replaced by Breeze network discovery and SNMP monitoring. See below.

N-central exposes a legacy SOAP API and a newer REST API (/api/…, JWT-authenticated via a user’s API access token generated under Administration → User Management → your user → API Access). The REST API is the better choice for a migration export; the SOAP API remains the only way to reach some older endpoints.

  1. Authenticate and exchange your API-User token for a JWT:

    Terminal window
    NC=ncentral.yourdomain.com
    TOKEN=$(curl -sf -X POST "https://$NC/api/auth/authenticate" \
    -H "Authorization: Bearer $NC_API_USER_TOKEN" | jq -r .tokens.access.token)
  2. Export the customer → site tree:

    Terminal window
    curl -sf -H "Authorization: Bearer $TOKEN" \
    "https://$NC/api/org-units?pageSize=1000" > orgunits.json
    echo 'organization,site' > tree.csv
    jq -r '
    [.data[] | select(.orgUnitType=="CUSTOMER")] as $c
    | .data[] | select(.orgUnitType=="SITE") as $s
    | ($c[] | select(.orgUnitId == $s.parentId)) as $parent
    | [$parent.orgUnitName, $s.orgUnitName] | @csv' orgunits.json >> tree.csv

    Customers with no child site rows are single-site — emit them with a Main site.

  3. Export devices — your reconciliation checklist:

    Terminal window
    curl -sf -H "Authorization: Bearer $TOKEN" \
    "https://$NC/api/devices?pageSize=5000" \
    | jq -r '.data[] | [.customerName, .siteName, .longName,
    .osName, .deviceClass, .lastLoggedInUser] | @tsv' > nc-devices.tsv

    Filter deviceClass — N-central inventories network gear and printers discovered by the probe alongside real agent-managed endpoints. Only the agent-managed rows are migration targets; the rest belong in the probe-replacement plan below.

  4. Export custom properties, which N-central carries at customer, site, and device level:

    Terminal window
    curl -sf -H "Authorization: Bearer $TOKEN" \
    "https://$NC/api/devices/$DEVICE_ID/custom-properties" | jq .
  5. Export Service Templates for reference. You will rebuild these rather than import them, but you need the effective thresholds to hand.


Phase 3 — Deploy the Breeze Agent with an AMP

Section titled “Phase 3 — Deploy the Breeze Agent with an AMP”
  1. Build the AMP. N-central’s Automation Manager (a desktop authoring tool) produces .amp files. You need a single Execute PowerShell Script object; the AMP is just a wrapper around it.

  2. Parameterise the enrollment key. Expose BreezeServer, BreezeKey, and BreezeSecret as AMP input parameters so one AMP serves every site, and supply the per-site key from Recipe 2 when you schedule it.

  3. Body: the Windows PowerShell payload from Recipe 3. AMPs execute as SYSTEM under the agent, so no elevation wrapper is needed.

  4. Add AV/EDR exclusions in both directions first — see Antivirus Exceptions.

  5. Upload and schedule. Configuration → Scheduled Tasks → Add → Automation Policy, targeting one customer, on a daily recurrence for the length of your rollout window. Set the task to retry on failure. The agent.yaml check makes repeat runs a no-op.

  6. Roll in waves. Pilot customer → 10% → the rest.


This is the N-central-specific planning item. Before cutover, enumerate what your probes actually monitor — it is almost always more than people remember.

Probe function Breeze replacement
Network discovery / new-device detection Network discovery
SNMP monitoring of switches, firewalls, UPSes SNMP monitoring
Agentless printer / device status SNMP monitors
ESXi / Hyper-V host monitoring Agent on the host where supported; SNMP otherwise
WMI-based agentless Windows checks Install the Breeze agent — there is no agentless Windows path

Breeze’s discovery and SNMP monitoring run from an enrolled agent acting as the collector on that network, so designate a persistent, always-on machine per site — the same box that runs the N-central probe today is usually the right choice. Do this in Phase 5, before you decommission, so you are never without network visibility.


N-central carries custom properties at customer, site, and device level. Only device-scope custom properties map onto Breeze custom fields, and they become partner-wide field definitions — N-central’s device scope has no per-organization narrowing, so one import covers every customer.

Customer- and site-scope custom properties are out of scope for the importer. Breeze has no custom-field owner narrower than an organization and no site axis at all, so a customer- or site-scope property does not translate cleanly onto either ownership axis. Re-home that data as organization-level fields by hand rather than guessing at the importer.

Use the Import from another RMM wizard (Settings → Custom Fields, or the Devices page) for the device-scope properties:

  1. Export device-scope custom properties per device (the endpoint above) and note which property names are actually populated across a sample.
  2. Open the wizard, choose N-central, and import the definitions with owner All organizations.
  3. On the values step, map $DEVICE_ID (N-central’s own device id, used in the export URL above) to Source device ID — and longName as a fallback hostname identifier — then map each property column to the matching custom field.
  4. The device id is the durable identifier Custom Fields records on this first run, so a later re-import — after more devices enroll — resolves exactly rather than by hostname guess.

A row the wizard can’t resolve to exactly one device is reported, never guessed at. Re-run after each enrollment wave; an already-applied value is left alone by default.


Service Templates are N-central’s bundle of service monitors with thresholds, applied by device class or filter. Rebuild them as Breeze monitors plus alert rules, defined partner-wide so one definition covers every customer.

The translation is usually a simplification. A typical N-central estate runs a dozen templates that differ only in threshold values; in Breeze those become one partner-wide monitor set with an organization-level override where a customer genuinely differs.

AMPs are XML wrappers, and the useful part — the embedded PowerShell or VBScript — is extractable. Open the .amp in Automation Manager, copy the script object bodies out, and load them with Recipe 6. AMPs built entirely from Automation Manager’s own drag-and-drop objects (rather than a script object) do not port and need re-authoring.


Only after Recipe 4 is clean for that customer, and the probe’s agentless coverage has been replaced.

  1. Disable notifications for the customer at the SO level. Leave the agent installed.

  2. Wait one full patch cycle.

  3. Uninstall via N-central. Deleting a device in N-central triggers agent removal. To do it by AMP:

    Terminal window
    $p = Get-CimInstance Win32_Product |
    Where-Object { $_.Name -match 'Windows Agent|N-able|SolarWinds MSP' }
    foreach ($x in $p) { msiexec /x $x.IdentifyingNumber /qn /norestart }

    Remove the probe separately — it is a distinct install (Windows Probe) on a different machine.

  4. Verify from Breeze. Recipe 5 — Breeze Management Posture fingerprints N-able. Drive the count to zero, and check the probe machines explicitly since they will not appear in an agent-only list.

  5. Delete the customer in N-central and reduce your licence count, after exporting anything you must retain.