AI NetRiva
Privacy

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.

The heartbeat can't switch your software off by failing. If the licence server is down, unreachable, slow, or returns something malformed, the app changes nothing and keeps monitoring. Only a correctly signed revocation, verified against a key compiled into the binary and matching your own licence, can stop it. An outage on our side is our problem, not yours.

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

DataWhyKept
Name and emailTo issue your licence and support youWhile you're a customer, then 7 years for accounting
Licence and order recordsRenewals, reissues, invoices7 years (statutory)
Heartbeat: instance, version, OS, device countTell you before you hit your limit; know which builds are liveDaily rollups, 24 months
Salted hash of IPSpot one licence used across many networks24 months
Support email and bug bundlesTo fix the thing you reported24 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.

Last updated 3 August 2026.