This document explains what the ONE//FM internet radio station stores on a visitor’s device, why, on what legal basis, and how to control it. It supplements the Privacy Policy and prevails over it in everything concerning access to the device. The list in section 4 is exhaustive: it is generated directly from the portal’s own code and therefore cannot drift from what actually happens.
1. What this document covers
A cookie is a small record a site stores in the browser and receives back with every subsequent request. Alongside it, browsers offer two further stores: local storage, which lives until it is cleared, and tab storage, which disappears the moment the tab is closed. Technically these differ, but the law looks at the fact of access to the user’s device, not at the name of the technology. Throughout this document “cookie” therefore covers all three, and the list states which store each record belongs to.
2. Legal basis
Records without which the site cannot do what it was asked to do — the chosen language, the signed-in state, the safeguard against voting twice — are stored as necessary to provide the service and on the basis of our legitimate interest (Articles 6(1)(b) and 6(1)(f) of the General Data Protection Regulation); Article 5(3) of Directive 2002/58/EC exempts strictly necessary records from consent. The only record that is not necessary is the anonymous visit identifier; it is created solely on the basis of consent (Article 6(1)(a) GDPR). In Ukraine the Law of Ukraine “On Personal Data Protection” applies.
3. Who we ask for consent
The consent bar is shown to visitors from the European Economic Area, the United Kingdom and Switzerland — the jurisdictions whose law requires it. The country is determined by the Cloudflare network at its own level, before the page is built; we store no IP address for this purpose. Other visitors are not shown the bar, but the choice is always available: the “Cookie settings” link sits in the footer of every page, and a refusal made there applies regardless of country. Until consent is given, no optional record is created.
4. The full list
Below is everything the portal stores on the device. The “Choice” column shows whether a record can be switched off without depriving the site of the ability to work.
Cookies
Sent to the server with every request. Both are first-party: they are set by the portal itself, not by a third-party service.
| Record | Purpose | Lifetime | Choice |
|---|---|---|---|
NEXT_LOCALE | The language the reader chose. Without it every later visit would revert to the default language. | 1 year | necessary |
onefm-consent | The answer the reader gave to the consent question. Stored so as not to ask twice and so that a refusal takes effect. | 1 year | necessary |
Local storage
Kept in the browser until the reader clears it, and not sent to the server automatically — the portal reads it only when it needs to.
| Record | Purpose | Lifetime | Choice |
|---|---|---|---|
onefm-aid | Anonymous visit identifier: it distinguishes a returning visit from a new one without establishing identity. The only record created solely with consent. | until the browser is cleared | can be switched off |
onefm-voter-id | Voting identifier. Prevents voting twice for the same track; an IP address is unfit for this because whole networks share one. | until the browser is cleared | necessary |
onefm-listener-auth | The reader’s profile and a session refresh token, so a sign-in survives a page reload. Created only after signing in. | until sign-out | necessary |
Tab storage
Lives exactly as long as the tab is open. Closing the tab removes these records without any action by the reader.
| Record | Purpose | Lifetime | Choice |
|---|---|---|---|
onefm_access_token | Short-lived API access token. Lives in the tab and does not survive its closing. | until the tab is closed | necessary |
onefm-listen-sid, onefm-listen-at | Listening-session identifier and the time of the last heartbeat. Without it one listener who opened three pages would count as three. | until the tab is closed | necessary |
onefm:resume-playback | A marker that the player was playing before the reload, so the stream resumes by itself. | until the tab is closed | necessary |
onefm:stream-cors | Whether the stream permits the spectrum analyser. Stored so the question is not asked again each time. | until the tab is closed | necessary |
nv-<id> | A marker that this story has already been counted, so re-reading does not inflate the view count. | until the tab is closed | necessary |
5. Third parties
The portal uses no advertising networks and sets none of their cookies: advertising is served by our own server, which builds no reader profile and passes no reader data to advertisers. The Cloudflare delivery network the site runs through may set its own technical records to protect against automated attacks; those belong to Cloudflare and are described in its policy. Embedded material (videos, social posts) loads from the respective platforms’ servers when the page opens and is governed by their rules; we have no access to what they store.
6. How to control it
The simplest route is the “Cookie settings” link in the footer of any page: consent can be given or withdrawn there in one action, and withdrawing is as easy as giving. A refusal deletes the visit identifier that already exists rather than merely stopping its use. Independently of this, the browser lets you delete or block any record; the site will still work, but it will forget the language, the sign-in will have to be repeated each time, and the view counter will count every re-reading.
7. What we do with it
None of the records listed is used for advertising, profiling or disclosure to third parties. Anonymous statistics are aggregated into reports with no link to a person: they show what is read and listened to, not who does it. Records in tab storage never leave the device at all.
8. Changes
The list in section 4 is updated together with the portal itself, because it is generated from its code. Material changes to the basis or the composition of the data will be announced separately, and the date of the last update is always shown at the top of the page. Questions about this document go to the station address given in the site footer.