If you run NinjaOne, you already have a live, accurate inventory of every endpoint you manage. The problem is that inventory lives in NinjaOne, not in your documentation platform — so someone ends up copying hostnames, serial numbers, and warranty dates into asset records by hand, and that copy goes stale the moment a machine gets reimaged or reassigned.
Weavestream’s NinjaOne integration removes the copying step. It pulls device records straight from your NinjaOne organisations into Weavestream asset records, on a schedule, so the documentation you hand a technician actually matches what’s running in the field.
One NinjaOne Account, Many Client Tenants
Each NinjaOne organisation maps to a single Weavestream company. If you’re a multi-tenant MSP running one NinjaOne account across dozens of clients, that’s exactly the shape you need — one integration, fanned out across every client tenant, with each client’s synced devices staying scoped to that client’s own workspace.
Two Resources, Two Kinds of Devices
The NinjaOne driver doesn’t lump everything into one bucket. It exposes two independent resources, each of which can sync into its own asset layout:
Agent devices are workstations, servers, and anything else running the NinjaOne agent — Windows, macOS, or Linux. This is the full data set: OS details, hardware, processor, memory, volumes, warranty, and assigned owner. It’s configured by default, so a new integration starts pulling agent data immediately.
Network & non-agent devices covers everything NinjaOne discovers without an agent — switches, firewalls, printers, VoIP gear discovered via NMS, plus VMware, Hyper-V, and Xen guest VMs and their hypervisor hosts. This resource is optional. Leave it unconfigured if you only want agent-managed endpoints, or turn it on to bring switches and VMs into a separate part of your asset inventory with their own layout.
Splitting the two matters because the data shape is genuinely different. A workstation record includes processor cores and clock speed; a network switch record includes location and parent device. Forcing both into one layout means a lot of empty fields either way — two resources means each layout only has what actually applies.
What Actually Gets Synced
For agent devices, the field list is deep. Some of what’s mappable:
- Identity — system name, DNS name, NetBIOS name, device UID, node class, tags
- Operating system — OS name, architecture, build number, last boot time, needs-reboot flag
- Hardware — make, model, serial number, BIOS serial, chassis type, virtual-machine flag
- Processor — name, core count, logical core count, clock speed
- Memory — capacity in both raw bytes and a readable size like “127.5 GB”
- Volumes — per-volume detail plus a summary covering every volume on the device
- Network — public IP, primary IP and MAC, full IP/MAC arrays
- Warranty — start date, end date, manufacturer fulfilment date
- Assigned owner — name, email, phone, invitation status
- Lifecycle — created, last contact, last update, approval status, offline state
For network and non-agent devices, the fields are intentionally lighter: network identity, location, and parent device — enough to document a switch or a VM without pretending it reports the same telemetry as a full agent.
Either way, the field list you see when mapping isn’t a fixed schema — it refreshes from a live sample of your NinjaOne tenant, so custom agent fields show up automatically alongside the curated set.
Setting It Up
You’ll need an API client from NinjaOne first. In NinjaOne, go to Administration → Apps → API and create a client with the monitoring scope — that gives you a Client ID and Client Secret.
In Weavestream:
- Navigate to Admin → Integrations → New Integration and select NinjaOne RMM.
- Enter the Client ID and Client Secret. If your NinjaOne tenant is outside the US, override the API base URL for your region (
eu.ninjarmm.com,ca.ninjarmm.com, oroc.ninjarmm.com). - Click Test connection to confirm Weavestream can reach your NinjaOne tenant.
- On the Orgs tab, pick the NinjaOne organisation and map it to the Weavestream company it belongs to. You can optionally restrict the sync to a specific location ID.
- On the Agent devices resource tab, choose the asset layout for endpoints and set the match key. The device UID is the recommended choice — it’s NinjaOne’s stable GUID, so matching survives IP changes, MAC changes, and hostname renames that would otherwise break a sync keyed on something less stable.
- If you want network gear or VMs in Weavestream too, repeat the process on the Network & non-agent devices tab with its own layout and match key. Skip it if you only care about agent-managed endpoints.
- Click Save & Sync to run the initial import.
After that, syncs can be triggered manually whenever you want a fresh pull, or run automatically when background sync is enabled — so the inventory keeps itself current without anyone remembering to click refresh.
Why This Beats a Spreadsheet Export
A one-time CSV export from NinjaOne into a spreadsheet or wiki page is a snapshot — accurate on export day and increasingly wrong after that. The sync model in Weavestream is different in a way that matters for documentation you actually rely on during an incident:
Records are upserted, not overwritten. First sync creates the asset records; every sync after that updates the fields that changed. If a device is removed from NinjaOne, Weavestream doesn’t silently delete the record — it’s flagged as stale, so you keep a history of retired hardware instead of losing it the moment it’s decommissioned.
Every sync run and every field change is written to Weavestream’s audit log, right alongside every other change in that client’s workspace. If a device’s warranty date or assigned owner changes and someone asks why, the answer is in the same audit trail you’d use to investigate a credential change or an asset edit — not a separate export history you have to go dig up in NinjaOne.
And because the synced records land as regular Weavestream assets, they inherit everything else the platform already does: full-text search across your documentation, role-based access so a technician can look up a device without RMM access, and a place next to the client’s credentials, network diagrams, and IPAM subnets instead of off in a separate tool.
The Bigger Picture
RMM data and IT documentation solve different problems. NinjaOne tells you what’s happening on an endpoint right now. Documentation tells you the context around it — which client it belongs to, what credentials go with it, what subnet it’s on, who’s responsible for it. Keeping those in two disconnected places means every investigation starts with cross-referencing by hand.
Syncing NinjaOne into Weavestream doesn’t replace the RMM. It means the inventory NinjaOne already tracks accurately shows up where the rest of the client’s documentation lives, searchable and audited, without anyone maintaining a duplicate copy.
Weavestream is a free, self-hosted, open-source IT documentation platform for MSPs and IT teams. It runs on Docker and Postgres, and includes asset management, a credential vault, IPAM, domain and SSL monitoring, a client portal, audit logging, and integrations with tools like NinjaOne, Action1, UniFi, and Cloudflare. Find out more at weavestream.io.