What leaves your machine, exactly.
This product is sold on the claim that your network data stays on your network. That claim is only worth something if it's checkable — so this page lists every outbound request the software makes, field by field. Point a packet capture at it; you should find nothing here that surprises you.
Nothing about your monitored network is ever transmitted. No device names, no IP addresses, no hostnames, no MAC addresses, no interface counters, no syslog messages, no device configurations, no credentials, no topology, no map, no floor plan. None of it is uploaded, and no code path exists that would upload it.
AI NetRiva runs entirely on your machine. There is no cloud service holding your data, because there is no cloud service. Everything the product collects is written to the data directory on the machine you installed it on, and stays there until you delete it.
Three things do leave, and they're described below in full.
1. The licence heartbeat
If you hold a licence, the app contacts the licence service once every 24 hours (with a small random offset, so every install doesn't arrive at the same second), plus once about a minute after startup. It confirms the licence is still valid and refreshes its expiry date.
This is the entire request body. There are no other fields:
POST https://api.net-riva.com/v1/heartbeat
{
"licence_id": "lic_01J...", your licence
"instance_id": "inst_01J...", random ID made on first run
"version": "1.1.0", which release is running
"os": "windows/amd64", operating system and CPU architecture
"device_count": 37, how many devices, as a number
"uptime_s": 864000 seconds since the app started
}
device_count is a count and nothing else — the number 37, never a list of what those 37 things are. It exists so we can tell you when you're close to your device limit instead of letting you hit it unannounced.
instance_id is a random identifier generated on first run. It is tied to no hardware serial, no MAC address, no user account and no machine name. Delete the data directory and a new one is generated; we have no way to connect the two. Its only job is to distinguish "one customer upgraded" from "one customer installed it twice".
We do not store your IP address. The licence server records a salted hash of it, which lets us notice that one licence is running from many different networks without ever holding the addresses themselves.
2. The update check
The app asks whether a newer release exists. It never installs anything on its own — it tells you, and you decide when. A monitor that restarts itself in the middle of a live show is worse than one running a version that's a fortnight old.
The check is a GET request carrying exactly four query parameters:
GET https://.../manifest.json?id=<install id>&v=<version>&p=<platform>&lic=<mode>
id a random ID made at first run, tied to nothing
v which release is running, e.g. 1.1.0
p platform key, e.g. windows-amd64
lic licence mode: trial, licensed, grace or expired
This doubles as our install count — making two outbound requests where one would do is worse for you and no better for us. It carries no device names, no addresses, no counts of what you monitor, no logs, no configuration.
You can turn the reporting off in Settings. When you do, the manifest is fetched with no query parameters at all, so the opt-out genuinely stops the reporting rather than merely hiding it from you.
3. The AI assistant — only if you set it up
The assistant is off until you enter an API key. There is no built-in AI service and no key shipped with the product.
When you do configure it, your questions and the network context needed to answer them go directly from your machine to the provider you chose — OpenAI, Anthropic, Google, xAI, Mistral, DeepSeek, Groq, OpenRouter or Perplexity. The traffic does not pass through us. We never see it, never log it, and never pay for it; you're billed by your provider under your own account and their terms apply to that data.
If you'd rather nothing left the building at all, the assistant also supports Ollama running locally. Point it at your own machine and the feature works with zero outbound traffic.
Sending a bug report is always a decision
The diagnostic bundle is only ever created and sent when you click the button. Before anything is transmitted you are shown the exact list of files it contains, and you can cancel.
The bundle is redacted before you even see it. The credentials file is never read at all. SNMP community strings, SSH usernames, webhook URLs, SMTP passwords and push tokens are stripped out. There's also an optional anonymise mode that replaces every device name and address with a placeholder, so you can send a useful report about a network you're not allowed to describe.
Air-gapped and offline installs
Licences are verified by checking a cryptographic signature on your own machine. There is no activation server and no phone-home required to start the software, so it works fully air-gapped.
For sites where no outbound connection is acceptable, an offline licence is available on request. With one installed, the heartbeat is disabled at the licence level and the app makes no outbound connections whatsoever. Ask if you need one.
This website
- No analytics, no tracking pixels, no advertising, and no cookies. The site sets none — there is no consent banner because there is nothing to consent to.
- No third-party requests. Fonts are served from this domain rather than from Google, so loading a page doesn't hand your IP to anyone else.
- The site is served through Cloudflare, which processes request metadata (including your IP address) to deliver it and to block attacks. That's inherent to the connection; we don't add anything on top.
- If you use the contact form, we receive what you typed and your email address, and we use it to reply to you. Nothing more.
What we hold, and for how long
| Data | Why | Kept |
|---|---|---|
| Name and email | To issue your licence and support you | While you're a customer, then 7 years for accounting |
| Licence and order records | Renewals, reissues, invoices | 7 years (statutory) |
| Heartbeat: instance, version, OS, device count | Tell you before you hit your limit; know which builds are live | Daily rollups, 24 months |
| Salted hash of IP | Spot one licence used across many networks | 24 months |
| Support email and bug bundles | To fix the thing you reported | 24 months |
Your rights
The data controller is Stavanger Artistbyrå AS, Norway. Under GDPR you can ask for a copy of what we hold about you, ask for it to be corrected, or ask for it to be deleted — except where we're legally required to keep it, which in practice means accounting records. Email privacy@net-riva.com and you'll get an answer within 30 days.
We do not sell personal data, we do not share it for advertising, and we have no interest in doing either.
Changes to this page
If the list of transmitted fields ever changes, it will be stated here and in the release notes for the version that changes it. A quiet edit to this page would make the product's central claim untrue, which is the one thing we can't do.