Privacy policy
A. General information
1. Controller
The controller responsible for processing personal data on this website and in the PiPort service is:
ELEVAYTE Systems UG (haftungsbeschränkt)
represented by its managing director Jonas Trettin
Rüdigerstraße 16
40472 Düsseldorf, Germany
Telephone: +49 211 54553000
Email: [email protected]
Web: www.elevayte.de
2. Data protection contact
If you have questions about data protection or want to exercise your rights, please contact Jonas Trettin using the details above. We have not appointed a data protection officer because the legal requirements for doing so are not currently met.
3. Your rights
Where the respective legal requirements are met, you have the right in particular to
- obtain information about the personal data we process about you (Art. 15 GDPR),
- have inaccurate data corrected and incomplete data completed (Art. 16 GDPR),
- request the erasure of your data (Art. 17 GDPR),
- have the processing of your data restricted (Art. 18 GDPR),
- receive the data you provided in a portable format (Art. 20 GDPR) and
- object, on grounds relating to your particular situation, to processing based on legitimate interests (Art. 21 GDPR).
You can also lodge a complaint with a data protection supervisory authority. The authority responsible for us is the Landesbeauftragte für Datenschutz und Informationsfreiheit Nordrhein-Westfalen, Kavalleriestraße 2–4, 40213 Düsseldorf, www.ldi.nrw.de.
4. Retention
We store personal data only for as long as it is needed for the respective purpose. After that we delete or anonymise it, unless statutory retention obligations or legitimate interests – such as establishing, exercising or defending legal claims – require otherwise. Specific periods are given for each processing activity.
5. Recipients and transfers to third countries
We use service providers where this is necessary to operate the website and the service. We conclude the required agreements under Art. 28 GDPR with processors. Where data is processed outside the European Economic Area, we base the transfer on an adequacy decision, in particular the EU-US Data Privacy Framework, or on the European Commission's standard contractual clauses. Details are given for each service.
B. This website
1. Visiting the website and hosting
When you visit this website, your browser transmits technically necessary connection data, in particular IP address, date and time, the requested address and details about browser and operating system. This processing is necessary to deliver the website and to keep it stable and secure. The legal basis is Art. 6(1)(f) GDPR. Our legitimate interest lies in the secure and reliable operation of our website.
Our web server logs the time, requested address, status code, amount of data transferred and browser identifier, but no IP address. The website runs in a Kubernetes cluster operated by us in German data centres of Hetzner Online GmbH, Industriestraße 25, 91710 Gunzenhausen, Germany. Independently of this, Cloudflare processes connection data as our upstream security and delivery service, as described below.
TODO (Jonas): Confirm that the cluster's ingress writes no personal access logs.2. Cloudflare
We use services of Cloudflare, Inc., 101 Townsend Street, San Francisco, CA 94107, USA, for DNS, TLS encryption, the fast delivery of cached content and protection against attacks and abusive access. Cloudflare processes in particular IP address, requested address, date and time, and details about browser, device and connection. Requests may be routed through Cloudflare servers outside the European Economic Area.
This website (piport.io, piport.dev), the dashboard (dash.), the API (api.) and our Plausible instance (stats.elevayte.systems) are reached through Cloudflare. That includes what the PiPort agent and the command line send to the API: enrollment, metrics, sign-in and connection requests. The remote connections themselves (the agent's tunnel to the relay, and your access over SSH, port forwarding and the browser terminal) go directly to our relay: for its addresses Cloudflare only provides DNS, and this traffic does not pass through Cloudflare.
The legal basis is Art. 6(1)(f) GDPR. Our legitimate interest lies in a secure, resilient and fast provision of the website and the service. For transfers to the USA, Cloudflare relies on its certification under the EU-US Data Privacy Framework and, where necessary, on standard contractual clauses. More information is available in Cloudflare's privacy policy.
3. Cookies and similar technologies
This website sets no cookies and stores nothing in your browser's local storage. Our audience measurement with Plausible sets no cookies either. Its small script is the only JavaScript on this website; fonts, images and stylesheets come from our own server, and no third-party content is loaded. Cloudflare may use technically necessary cookies or similar information on your device as part of its security features, only as far as this is necessary to provide and protect the website you are visiting. The legal basis for accessing your device is § 25(2) no. 2 TDDDG; the subsequent processing is based on Art. 6(1)(f) GDPR.
4. Audience measurement with Plausible Analytics
We use Plausible Analytics to understand how this website and the dashboard are used. We run the software ourselves, in our own cluster in Germany. Plausible records the page visited, the referring website, browser, operating system, device type, approximate location at city or region level, visit duration, page views and clicks on “Sign in”. In the dashboard we replace IDs in addresses, for example of devices, groups and invitations, with placeholders before a page view is recorded.
Plausible uses no cookies and builds no permanent or cross-site user profiles. IP address and user agent are used to form an identifier that changes daily and are not stored as raw data. The analysis runs in our cluster in Germany; the measurements reach it through Cloudflare like this website does (section B.2). The legal basis is Art. 6(1)(f) GDPR. Our legitimate interest lies in measuring and improving our website and service in a data-minimising way. We delete analytics data as soon as it is no longer needed for this purpose.
C. The PiPort service
1. Account and sign-in to the dashboard
For a PiPort account we process your name, email address, password (as a hash only), your language and your organisations and roles. For each browser you sign in with we store a session with its IP address (first and latest), its browser identifier (user agent) with browser and operating system derived from it, the time of the first sign-in and of the latest activity, and a hash of the session token. You see your sessions in the dashboard and can end them there; this protects your account.
Where uploads are enabled, you can optionally upload a profile picture. It is kept in object storage and can be retrieved publicly through its address, so the dashboard can display it. Uploads are currently not enabled; before we turn them on, we will name the storage provider and its location here.
The dashboard sets the technically necessary, httpOnly cookies token (15 minutes) and refreshToken (30 days), which keep you signed in, and deviceId (one year), which recognises your browser as a known session. It also sets sidebar_state (seven days), which remembers whether the sidebar is collapsed. In your browser's local storage it keeps the visible table columns and, per device, the user name you last used in the browser terminal. Your appearance (light or dark) and language are saved in your account. The dashboard sets no tracking or advertising cookies; the audience measurement with Plausible (section B.4) works without cookies. The legal basis for accessing your device is § 25(2) no. 2 TDDDG, for the processing Art. 6(1)(b) GDPR (performance of the contract of use).
2. Invitations to organisations
When you invite someone to your organisation, we process the invitee's email address and, if given, their name, the intended role and who sent the invitation, and email them an invitation link. The legal basis is Art. 6(1)(b) GDPR towards you and Art. 6(1)(f) GDPR towards the invitee; our legitimate interest lies in letting people share an organisation.
3. Devices and telemetry
The PiPort agent on your device reports to our API at regular intervals. It sends the hostname, operating system, model, agent version, uptime, CPU load and temperature, memory and disk usage, and the relay region it is connected to. We show these values in the dashboard and keep their history for 30 days.
To detect cloned SD cards, the agent binds its identity to the hardware: it sends a hash (SHA-256) of a hardware identifier, such as the board's serial number, combined with a random value that is stored only on the device. The identifier itself is not transmitted, and we cannot recover it from the hash. Device credentials and enrollment tokens are stored as hashes only.
The legal basis is Art. 6(1)(b) GDPR.
TODO (Jonas): Confirm the metrics retention in production (default 30 days, DEVICE_METRICS_RETENTION_DAYS).4. Remote access through the relay
Connections made with piport ssh and piport forward run through our relay (region eu-de-1). The relay passes the data on without storing or analysing its content; SSH connections stay end-to-end encrypted between your ssh client and the device. The legal basis is Art. 6(1)(b) GDPR.
In the browser terminal, the SSH connection runs inside your browser tab. The password or key you enter there is only used in that tab; the connection to the device is end-to-end encrypted, and PiPort neither receives nor stores your password or key. We save the device's SSH host key with the device, together with who trusted it and when, so the terminal can warn you if it changes.
5. Command-line sign-in
When you sign in with piport login, we store the requesting computer's host name, operating system and IP address for the approval in the dashboard, so you can check the request. We delete these details at the latest about 70 minutes after the request. The access token issued is stored as a hash only, labelled with the host name. The legal basis is Art. 6(1)(b) GDPR.
6. Server logs
To operate the service, find errors and detect abuse, the API and the relay log technical events. API logs contain the requested address, status code and the internal IDs of account and organisation, and for outgoing email also the recipient address. The relay logs every connection with the internal IDs of account, organisation and device and the target port, and rejected connection attempts with the sender's IP address. Pending emails wait in a queue (Redis) until sent and are deleted one day after sending, or seven days after a failure. The legal basis is Art. 6(1)(f) GDPR. Our legitimate interest lies in the secure and reliable operation of the service.
TODO (Jonas): State how long server logs (Loki) are kept.7. Email delivery through Resend
Emails from the service – for example to confirm your email address, for invitations to an organisation and to reset your password – are sent through Resend, a service of Plus Five Five, Inc., 2261 Market Street #5039, San Francisco, CA 94114, USA. The recipient address, name, email content and technical delivery data are processed in the USA. According to Resend, email content and delivery logs are kept for up to 30 days on standard plans; backups may exist for another seven days. For the transfer, Resend relies on the EU-US Data Privacy Framework and standard contractual clauses. The legal basis is Art. 6(1)(b) GDPR. More information is available in Resend's privacy policy.
8. Error monitoring with Sentry
To detect and fix errors in the API and the dashboard, we use Sentry, a service of Functional Software, Inc., 45 Fremont Street, 8th Floor, San Francisco, CA 94105, USA. When an error occurs, the server or browser sends an error report with the error message, technical trace, requested address, browser and operating system, and the internal IDs of your account and organisation. Passwords, tokens and cookie values are removed before sending; of your account, only the internal ID is transmitted. The legal basis is Art. 6(1)(f) GDPR. Our legitimate interest lies in a stable and secure service. More information is available in Sentry's privacy policy.
TODO (Jonas): State the data region of the Sentry organisation (EU or US) and confirm that "Prevent storing of IP addresses" is enabled in the projects; otherwise add the IP address above.9. Hosting of the service
The API, dashboard, relay, database (MongoDB), Redis and our Plausible instance run in a Kubernetes cluster operated by us in German data centres of Hetzner Online GmbH, Industriestraße 25, 91710 Gunzenhausen, Germany.
D. Other
1. Automated decisions
We make no solely automated decisions that have legal effects on you or similarly significantly affect you. No profiling within the meaning of Art. 22 GDPR takes place.
2. Security and updates to this policy
We use appropriate technical and organisational measures to protect personal data against loss, manipulation and unauthorised access. Transmission to the website, dashboard, API and relay is TLS-encrypted. However, no method of transmission or storage offers absolute security.
We update this privacy policy when the website, the service, the service providers we use or legal requirements change. Last updated: 4 November 2026.