rejestr danych / data act
Rejestr struktur i formatów danych eksportowalnych Markerra Studio
Jak pobrać swoje dane
Dotyczy organizatorów gier (konto w Markerra Studio). Jeśli grasz w aplikacji, o kopię swoich danych napisz na kontakt@markerra.app — zasady opisuje Polityka prywatności.
- Zaloguj się do panelu organizatora Markerra Studio.
- Pod listą gier rozwiń „Twoje konto”.
- Kliknij „Pobierz moje dane (JSON)” — plik zapisze się na Twoim urządzeniu.
Nie musisz pisać maila. Droga mailowa z pkt 1 niżej zostaje dostępna równolegle — przyda się zwłaszcza, gdy panel zgłosi niepełny plik albo nie działa, a także gdy konto zamknięto już przy zmianie dostawcy.
Ostatnia aktualizacja: 6 października 2026 r. · Format eksportu: markerra-studio-export-1
Ten rejestr wykonuje art. 26 lit. b) rozporządzenia (UE) 2023/2854 (akt w sprawie danych — Data Act). Opisuje struktury danych, formaty danych oraz normy i otwarte specyfikacje interoperacyjności, w których organizator gry w Markerra Studio otrzymuje swoje dane eksportowalne, o których mowa w art. 25 ust. 2 lit. e) aktu w sprawie danych, a w Regulaminie Studio opisane w §15 („Zakończenie i przeniesienie danych”). Rejestr jest aktualizowany razem z kodem — każda zmiana formatu eksportu trafia do historii wersji niżej i do tego dokumentu w tym samym wydaniu, a zmiana niezgodna wstecz podnosi też numer wersji.
1. Sposób pobrania danych
Organizator pobiera swoje dane samodzielnie, gdy konto jest dostępne, przyciskiem „Pobierz moje dane (JSON)” w panelu Studio, w sekcji „Twoje konto”. Panel zapisuje odpowiedź jako plik markerra-studio-export-<RRRR-MM-DD>.json. Eksportu nie trzeba zamawiać mailem — droga opisana w §15 Regulaminu (wniosek na kontakt@markerra.app, odpowiedź w 14 dni) zostaje dostępna równolegle, jako uzupełnienie na wypadek przekroczenia limitu wierszy (zob. pkt 5) albo problemów z panelem. Po zakończeniu okresu przejściowego zapewniamy osobne co najmniej 30 dni na pobranie danych (§15 Regulaminu). Jeżeli konto zostało zamknięte w ramach przełączenia, bezpieczne pobranie zabezpieczonej kopii organizuje operator przez tę samą ścieżkę mailową, po potwierdzeniu tożsamości.
2. Format danych i zastosowane normy
- Format zapisu: JSON (JavaScript Object Notation), zgodny z normą RFC 8259 (The JavaScript Object Notation (JSON) Data Interchange Format) — otwartą, powszechnie używaną specyfikacją interoperacyjności bez elementów własnościowych.
- Kodowanie znaków: UTF-8.
- Daty i znaczniki czasu: ISO 8601 (np.
2026-09-04T10:15:30.000Z), zawsze w czasie uniwersalnym (UTC). - Identyfikatory: identyfikatory dokumentów bazy danych Appwrite (
$id) — ciągi znaków nadawane przez platformę bazodanową, stabilne w czasie, używane też jako klucze łączące rekordy między sekcjami eksportu (np.campaignIdw markerach odsyła do$idodpowiadającej kampanii). - Współrzędne geograficzne: szerokość i długość geograficzna jako liczby dziesiętne (stopnie), w zakresach -90…90 (szerokość) i -180…180 (długość) — te same zakresy, jakich wymaga walidacja przy tworzeniu gry. Są to standardowe dziesiętne stopnie geograficzne używane przez usługi map i GPS (odpowiednik układu WGS 84); kod nie nazywa układu odniesienia wprost, więc to zdanie jest wnioskiem z powszechnej praktyki branżowej, a nie cytatem z kodu.
- Brak formatów własnościowych: eksport nie używa żadnego formatu ani biblioteki wymagającej licencji, konkretnego oprogramowania albo zamkniętej specyfikacji. Cały dokument da się odczytać dowolnym parserem JSON zgodnym z RFC 8259.
3. Struktura odpowiedzi (koperta)
Odpowiedź eksportu to pojedynczy obiekt JSON o następujących polach:
| Pole | Typ | Opis |
|---|---|---|
status |
ciąg znaków | "ok" przy powodzeniu. |
generatedAt |
data (ISO 8601) | Chwila wygenerowania eksportu. |
format |
ciąg znaków | Identyfikator wersji formatu — dziś "markerra-studio-export-1". |
account |
obiekt | Dane konta organizatora, patrz pkt 4.1. |
games |
tablica obiektów | Gry organizatora, patrz pkt 4.2. |
campaigns |
tablica obiektów | Opublikowane konfiguracje gier, patrz pkt 4.3. |
markers |
tablica obiektów | Punkty (markery) opublikowanych gier, patrz pkt 4.4. |
payments |
tablica obiektów | Płatności organizatora, patrz pkt 4.5. |
acceptances |
tablica obiektów | Akceptacje zasad złożone przez organizatora jako gracza — ze wszystkich gier rozegranych na koncie, także z demo i z gier innych organizatorów; patrz pkt 4.6. |
notes |
obiekt | Opisy sekcji eksportu po polsku i po angielsku — dziś opis sekcji acceptances, patrz pkt 4.7. |
truncated |
wartość logiczna | true, jeżeli którakolwiek sekcja została obcięta do sufitu 5000 wierszy łącznie na odpowiedź — patrz pkt 5. |
4. Struktury poszczególnych sekcji
Poza wymienionymi niżej polami każdy wiersz pochodzący z bazy danych niesie trzy pola systemowe bazy danych: $id (identyfikator), $createdAt i $updatedAt (znaczniki czasu ISO 8601) — te trzy zostają w eksporcie celowo, bo bez nich danych nie dałoby się jednoznacznie dopasować przy przenosinach ani użyć jako dowodu przy reklamacji. Pola uprawnień i adresów wewnętrznych bazy ($permissions, $databaseId, $collectionId) są z eksportu usuwane — to szczegóły techniczne infrastruktury dostawcy, a nie dane klienta.
4.1 account (obiekt, bez pól systemowych — dane konta, nie wiersz tabeli)
| Pole | Typ | Opis |
|---|---|---|
userId |
ciąg znaków | Identyfikator konta Appwrite organizatora. |
email |
ciąg znaków | Adres e-mail konta. |
name |
ciąg znaków | Nazwa konta. |
4.2 games — wiersze gier organizatora (tabela studio_games)
| Pole | Typ | Opis |
|---|---|---|
ownerId |
ciąg znaków | Identyfikator konta właściciela gry. |
name |
ciąg znaków | Nazwa gry nadana w panelu. |
status |
ciąg znaków (opcjonalne) | Stan gry w panelu. |
pointsJson |
tekst (JSON zagnieżdżony jako ciąg znaków) | Lista punktów gry tak, jak wprowadził je organizator w kreatorze — patrz pkt 7.1. |
settingsJson |
tekst (JSON zagnieżdżony jako ciąg znaków) | Ustawienia gry (opis, miasto, czas trwania, dane organizatora, oświadczenia przed publikacją, etapy) — patrz pkt 7.2. |
publishedCampaignId |
ciąg znaków (opcjonalne) | Odniesienie do opublikowanej konfiguracji, zapisywane przez organizatora; przy rozbieżności rozstrzyga campaignId w sekcji campaigns, nie to pole. |
joinCode |
ciąg znaków (opcjonalne) | Kod dołączenia zapisany po stronie organizatora. |
4.3 campaigns — opublikowane konfiguracje gier (tabela campaigns, adresowane studio-<id gry>)
| Pole | Typ | Opis |
|---|---|---|
campaignId |
ciąg znaków | Identyfikator opublikowanej gry. |
active |
wartość logiczna | Czy gra jest aktywna. |
status |
ciąg znaków (opcjonalne) | Stan publikacji. |
archivedAt |
data ISO 8601 (opcjonalne) | Chwila archiwizacji, jeśli nastąpiła. |
appName |
ciąg znaków | Nazwa aplikacji wydawcy ("Markerra"). |
clientName |
ciąg znaków | Nazwa organizatora wyświetlana graczom. |
radiusMeters |
liczba zmiennoprzecinkowa | Promień strefy gry w metrach. |
targetLatitude, targetLongitude |
liczby zmiennoprzecinkowe | Współrzędne środka/celu strefy gry — patrz zasady w pkt 2. |
rewardCodePrefix |
ciąg znaków | Przedrostek kodu nagrody. |
rewardLandingUrl |
ciąg znaków | Adres strony finału. |
markersJson |
tekst (JSON zagnieżdżony jako ciąg znaków) | Lista punktów wydawana graczom — patrz pkt 7.3. |
routeJson |
tekst (JSON zagnieżdżony jako ciąg znaków) | Opis gry wydawany graczom (tytuł, opis, miasto, czas trwania, notatki, dane organizatora gry, etapy) — patrz pkt 7.4. |
allowedCirclesJson |
tekst (JSON zagnieżdżony jako ciąg znaków, opcjonalne) | Dozwolone okręgi geograficzne gry. |
organizerJson |
tekst (JSON zagnieżdżony jako ciąg znaków, opcjonalne) | Dane rejestrowe operatora platformy (Markerra) — te same co w publicznym demo Markerra. To nie są dane organizatora gry (te niesie routeJson.host, pkt 7.4 i 7.5) — patrz pkt 7.6. |
participantRulesJson |
tekst (JSON zagnieżdżony jako ciąg znaków, opcjonalne) | Zasady uczestnictwa obowiązujące w tej grze (wersja dokumentu i minimalny wiek). |
studioPaidUntil |
data ISO 8601 (opcjonalne) | Data, do której publikacja jest opłacona. |
joinCode |
ciąg znaków (opcjonalne) | Kod dołączenia poświadczony przez serwer — rozstrzygający w razie rozbieżności z studio_games.joinCode. |
4.4 markers — punkty opublikowanych gier (tabela markers)
| Pole | Typ | Opis |
|---|---|---|
campaignId |
ciąg znaków | Odniesienie do campaigns.campaignId. |
markerId |
ciąg znaków | Identyfikator punktu. |
titlePl, titleEn |
ciągi znaków | Nazwa punktu w obu językach. |
legacyDatabaseKey |
ciąg znaków (opcjonalne) | Klucz historyczny, jeśli istnieje. |
active |
wartość logiczna (opcjonalne) | Czy punkt jest aktywny. |
Sekrety punktów (skróty tokenów QR/NFC z tabeli marker_tokens) nie wchodzą do eksportu — są bezużyteczne przy przenosinach, bo to jednokierunkowe skróty kryptograficzne, nie da się z nich odtworzyć fizycznego markera.
4.5 payments — płatności organizatora (tabela studio_payments, pola stripe* inne niż wymienione niżej usunięte)
| Pole | Typ | Opis |
|---|---|---|
gameId |
ciąg znaków | Odniesienie do gry. |
ownerId |
ciąg znaków | Identyfikator konta płacącego. |
campaignId |
ciąg znaków | Odniesienie do opublikowanej konfiguracji. |
variant |
ciąg znaków | Wariant cenowy. |
amountTotal |
liczba całkowita | Kwota zapłacona (grosze). |
currency |
ciąg znaków | Waluta. |
status |
ciąg znaków | Stan płatności. |
stripeSessionId |
ciąg znaków | Identyfikator sesji płatności — dane organizatora, potrzebne do zgłoszenia reklamacji u operatora płatności. |
stripePaymentIntentId |
ciąg znaków (opcjonalne) | Identyfikator transakcji — z tego samego powodu co wyżej. |
buyerEmail |
ciąg znaków (opcjonalne) | E-mail nabywcy. |
consentsJson |
tekst (JSON zagnieżdżony jako ciąg znaków) | Zapisane zgody złożone przy zamówieniu (m.in. żądanie rozpoczęcia opłaconego okresu przy pierwszej udanej publikacji po zapłacie, przed upływem terminu odstąpienia, przyjęcie do wiadomości zasad rozliczenia przy odstąpieniu w trakcie okresu publikacji i wygaśnięcia prawa odstąpienia po pełnym wykonaniu usługi, wersja Regulaminu w chwili zamówienia). |
paidAt, expiresAt |
daty ISO 8601 | Chwila zapłaty i koniec opłaconego okresu. |
firstPublishedAt |
data ISO 8601 (opcjonalne) | Chwila pierwszego faktycznego uruchomienia opłaconej gry. |
refundedTotal |
liczba całkowita (opcjonalne) | Kwota zwrotu. |
refundedAt |
data ISO 8601 (opcjonalne) | Chwila zwrotu. |
confirmationSentAt |
data ISO 8601 (opcjonalne) | Chwila wysłania potwierdzenia zawarcia umowy na trwałym nośniku. |
buyerType |
ciąg znaków (opcjonalne) | Typ nabywcy (konsument/firma). |
buyerCountry |
ciąg znaków (opcjonalne) | Kod kraju nabywcy (dwuznakowy). |
amountTax |
liczba całkowita (opcjonalne) | Kwota podatku w cenie. |
fxRateToPln |
liczba zmiennoprzecinkowa (opcjonalne) | Zastosowany kurs waluty. |
viesCheckJson |
tekst (JSON zagnieżdżony jako ciąg znaków, opcjonalne) | Dowód weryfikacji numeru VAT UE nabywcy, jeśli dotyczy. |
Wewnętrzne identyfikatory operatora płatności inne niż stripeSessionId i stripePaymentIntentId są z eksportu usuwane regułą domyślnie odmowną — nowe pole zaczynające się od stripe, dodane w przyszłości do tabeli, wypada z eksportu samym faktem, że nie jest na liście wyjątków, bez potrzeby zmiany kodu eksportu.
4.6 acceptances — akceptacje zasad złożone przez organizatora jako gracza (tabela participant_rule_acceptances)
| Pole | Typ | Opis |
|---|---|---|
userId |
ciąg znaków | Identyfikator konta akceptującego (tu: organizatora). |
campaignId |
ciąg znaków | Gra, w której złożono akceptację. |
organizerId |
ciąg znaków | Identyfikator z danych rejestrowych, które gra podaje przy zasadach uczestnictwa. W grach z Markerra Studio to identyfikator operatora platformy (Markerra) — taki sam jak w publicznym demo Markerra — więc nie identyfikuje organizatora danej gry. |
documentKind |
ciąg znaków | Rodzaj dokumentu. Obecnie "studio-participant-rules" — zasady uczestnictwa w grze z Markerra Studio — albo "organizer-participant-rules" — zasady uczestnictwa w grze przygotowanej poza Studio, np. w publicznym demo Markerra. |
documentVersion |
ciąg znaków | Wersja dokumentu w chwili akceptacji. |
language |
ciąg znaków | Język dokumentu. |
documentSha256 |
ciąg znaków | Suma kontrolna SHA-256 treści zaakceptowanego dokumentu — dowód, że zaakceptowano dokładnie tę treść. |
minimumAge |
liczba całkowita | Minimalny wiek wymagany przez tę wersję zasad. |
ageConfirmed |
wartość logiczna | Czy wiek został potwierdzony. |
ageBracket |
ciąg znaków (opcjonalne) | Ścieżka potwierdzenia wieku. |
ageSource |
ciąg znaków (opcjonalne) | Skąd pochodzi potwierdzenie wieku: "birthDate" — wiek policzony z daty urodzenia podanej w aplikacji przy logowaniu albo przy tej akceptacji (samej daty nie zapisujemy), albo "priorAcceptance" — wiek potwierdzony wcześniejszą akceptacją tego konta (serwer sam ją odnajduje). Brak wartości w akceptacjach sprzed wprowadzenia tego pola albo złożonych w starszej wersji aplikacji, która go nie wysyła. |
acceptedAt |
data ISO 8601 | Chwila akceptacji. |
evidenceVersion |
liczba całkowita | Wersja formatu dowodu akceptacji. |
Ta sekcja niesie wyłącznie własne akceptacje organizatora, filtrowane po jego userId — nie akceptacje jego graczy. Obejmuje akceptacje ze wszystkich gier rozegranych na tym koncie: z gier organizatora, z publicznego demo Markerra i z gier innych organizatorów. Wiersz z gry innego organizatora niesie identyfikator tej gry (campaignId); jego pole organizerId to w grze ze Studio identyfikator operatora platformy (Markerra), taki sam jak w demo — nie identyfikuje organizatora tej gry. Ten zakres opisuje też w samym pliku pole notes.acceptances (pkt 4.7). Dane graczy (m.in. user_markers, reward_claims, zdarzenia analityczne innych osób) nie wchodzą do eksportu w żadnej sekcji: to dane, których administratorem jest Markerra wobec graczy, a nie organizator, więc organizator nie ma tytułu, żeby je otrzymać przez ten eksport.
4.7 notes — opisy sekcji (obiekt, bez pól systemowych — opis dołączony do pliku, nie wiersz tabeli)
| Pole | Typ | Opis |
|---|---|---|
acceptances |
obiekt {pl, en} (ciągi znaków) |
Opis zakresu sekcji acceptances po polsku (pl) i po angielsku (en). Brzmienie polskie: „Twoje akceptacje zasad uczestnictwa jako gracza — ze wszystkich gier rozegranych na tym koncie, także z demo i z gier innych organizatorów. Eksport nie zawiera akceptacji Twoich graczy.” |
Pole notes objaśnia plik i nie niesie danych z bazy. Jest polem dodatkowym: czytnik, który go nie zna, odczyta pozostałe pola i sekcje bez zmian, dlatego identyfikator formatu pozostał markerra-studio-export-1 (pkt 6).
5. Ograniczenia techniczne (art. 26 lit. a)
Odpowiedź ma twardy sufit 5000 wierszy łącznie (licząc wszystkie sekcje razem). Po jego przekroczeniu odpowiedź niesie truncated: true zamiast po cichu obcinać dane — organizator dostaje w panelu informację o możliwości uzupełnienia eksportu drogą mailową opisaną w §15 Regulaminu. Częstotliwość wywołań ogranicza ten sam limiter co publikację gry; przy przekroczeniu odpowiedź niesie kod 429 z nagłówkiem retry-after.
6. Historia wersji formatu
| Wersja formatu | Od kiedy | Zmiana |
|---|---|---|
markerra-studio-export-1 |
wdrożenie akcji studio-export (DA-02) |
Pierwsza wersja — koperta i sześć sekcji opisanych w pkt 3–4. |
markerra-studio-export-1 |
wprowadzenie etapów gry w panelu (17.09.2026) | Uzupełnienie zgodne wstecz: pola gameplay w games[].settingsJson (pkt 7.2) i w campaigns[].routeJson (pkt 7.4) — ustawienia i przebieg etapów gry. Pozostałe pola i sekcje bez zmian, więc numer wersji się nie zmienił. Wiersz dopisany przy sprostowaniu z 7.10.2026. |
markerra-studio-export-1 |
wdrożenie pola notes |
Uzupełnienie zgodne wstecz: pole notes z opisem sekcji acceptances (pkt 4.7). Pozostałe pola i sekcje bez zmian, więc numer wersji się nie zmienił. |
markerra-studio-export-1 |
wprowadzenie pola ageSource (wiek potwierdzany raz) |
Uzupełnienie zgodne wstecz: pole ageSource w wierszach acceptances (pkt 4.6). Pozostałe pola i sekcje bez zmian, więc numer wersji się nie zmienił. |
7. Struktury zagnieżdżone
7.1 games[].pointsJson — punkty gry wprowadzone przez organizatora w kreatorze
Tablica obiektów punktu, jak zapisał je organizator, każdy z polami: pid (identyfikator punktu, ciąg znaków), title (nazwa, do 128 znaków), type (sposób zaliczenia: "gps", "qr", "nfc" albo "code"), task (opis zadania, do 1024 znaków, opcjonalny), lat/lng (współrzędne, opcjonalne — wymagane dla typu "gps", zasady jak w pkt 2), oraz token (dla "qr"/"nfc") albo code (dla "code") — sekret punktu wprowadzony przez organizatora. To jest surowy zapis roboczy z kreatora gry, a nie kontrakt wydawany graczom (ten opisuje pkt 7.3).
7.2 games[].settingsJson — ustawienia gry
Obiekt z polami: desc (opis gry, do 1024 znaków, opcjonalny), city (miasto, do 120 znaków, opcjonalne), time (szacowany czas, do 60 znaków, opcjonalny), organizer (dane organizatora, struktura jak w pkt 7.5), publishAck (dowód złożenia trzech oświadczeń wymaganych przed publikacją: version, unmoderated, noThirdPartyData, lawfulAndSafe, at — znacznik czasu ISO 8601) i gameplay (ustawienia etapów zapisane przez panel).
Pole gameplay jest opcjonalne: null albo jego brak oznacza grę bez etapów. W grze z etapami to obiekt z polami version (dziś 1), order ("ordered" — etapy po kolei, albo "free" — w dowolnej kolejności) i stages (tablica od 1 do 25 etapów w kolejności ustawionej w panelu, każdy z polami: id (identyfikator etapu), title (nazwa etapu, do 120 znaków), kind ("points" albo "area"), markerIds (identyfikatory punktów etapu — wartości pid z pkt 7.1), requiredCount (dla kind: "area" liczba punktów do znalezienia albo null — wszystkie punkty obszaru; dla kind: "points" zawsze null) i opcjonalnie radiusMeters (promień obszaru w metrach wpisany przez organizatora albo null — dopasowany automatycznie; liczy się tylko dla kind: "area")). To surowy zapis roboczy z panelu (serwer sprawdza go i przelicza przy publikacji) — opublikowaną postać etapów, z obliczonym obszarem poszukiwań, opisuje routeJson.gameplay w pkt 7.4.
7.3 campaigns[].markersJson — punkty wydawane graczom
Tablica obiektów: markerId (identyfikator), title (nazwa dwujęzyczna, obiekt {polish, english}), type (jak w pkt 7.1), task (opis zadania), oraz opcjonalnie location: {latitude, longitude} dla punktów z współrzędnymi. To jest kontrakt wydawany aplikacji gracza — wyprowadzony z pointsJson, bez sekretów punktu (token/code nie wchodzą tutaj).
7.4 campaigns[].routeJson — opis gry wydawany graczom
Obiekt z polami dwujęzycznymi ({polish, english} w każdym): title (tytuł gry), subtitle (opis), city (lokalizacja), difficulty, estimatedTime, rewardTitle, privacyNote (informacja o użyciu lokalizacji), safetyNote (informacja o bezpieczeństwie). Do tego host — dane organizatora gry, którymi gra przedstawia się graczom (struktura w pkt 7.5), oraz gameplay — etapy gry, opcjonalne, tylko w grze z etapami: obiekt z polami version (dziś 1), order ("ordered" — etapy po kolei, albo "free" — w dowolnej kolejności) i stages (tablica od 1 do 25 etapów, każdy z polami: id (identyfikator etapu), title (nazwa etapu, do 120 znaków), kind ("points" albo "area"), markerIds (identyfikatory punktów etapu, jak markerId w pkt 7.3), requiredCount (liczba punktów potrzebna do zaliczenia etapu), a dla kind: "area" dodatkowo area: {center: {latitude, longitude}, radiusMeters} — obszar poszukiwań).
7.5 games[].settingsJson.organizer i campaigns[].routeJson.host — dane organizatora gry
Obiekt z polami: kind ("person" albo "company"), name (do 80 znaków), email (do 120 znaków), a dla kind: "company" dodatkowo legalName (pełna nazwa prawna, do 160 znaków), taxId (NIP, do 40 znaków) i address (adres, do 200 znaków). W settingsJson.organizer (zapis z panelu) stoi też confirmed (wartość logiczna — potwierdzenie przez organizatora odpowiedzialności za treści, zasady i finał gry), a przy kind: "person" pola legalName, taxId i address mogą być puste. W routeJson.host (kopia z chwili publikacji) adres e-mail nazywa się contactEmail, nie ma pola confirmed, a pola firmy występują tylko przy kind: "company". To dane organizatora gry — nie mylić z organizerJson (pkt 7.6).
7.6 campaigns[].organizerJson — dane rejestrowe operatora platformy
Dane rejestrowe operatora platformy (Markerra) jako dostawcy aplikacji, które gra podaje graczom przy zasadach uczestnictwa. Gra z Markerra Studio dostaje je od serwera jako kopię danych publicznego demo Markerra (przy publikacji; przy dołączeniu gracza serwer może je odświeżyć), więc we wszystkich grach ze Studio są takie same i nie opisują organizatora gry — jego dane niesie routeJson.host (pkt 7.4 i 7.5). Obiekt z polami: organizerId (identyfikator operatora — ta sama wartość trafia do pola organizerId akceptacji, pkt 4.6), legalName (nazwa prawna), registeredAddress (adres rejestrowy), registration (obiekt z polami nip — NIP, 10 cyfr — i regon — REGON, 9 cyfr), supportEmail (adres kontaktowy), complaintsEmail (adres do reklamacji) i privacyUrls (obiekt z polami polish i english — adresy HTTPS Polityki prywatności).