Data export and data formats
Transferable data, excluded data and the export format (Data Act Article 26).
This page is Bokko's data format register under Article 26 of Regulation (EU) 2023/2854 (Data Act): it describes which data and digital assets can be taken out of Bokko when switching or exporting, and in which structure and format they are delivered.
The contractual rules (notice period, transition period, data retrieval period, charges) are set out in Section 10 of the Service Agreement; this page details them at collection level.
Transferable data#
| Category | File in the export | Source (collection / storage path) | Access |
|---|---|---|---|
| Guest profiles and guest register | data/guests.json | guests, guests/block_history, guests/guest_discounts, guest_imports | self-service (dashboard) and on request |
| Bookings and booking history | data/bookings.json | bookings, bookings/events, sessions | self-service (dashboard) and on request |
| Services, prices and categories | data/service-catalog.json | services, serviceCategories, serviceLocationAssignments | self-service (dashboard) and on request |
| Staff profiles, schedules and opening hours | data/staff-schedules.json | staff, staff/exceptions, blocked_slots, staffLocationAssignments, members, invitations | self-service (dashboard) and on request |
| Locations | data/locations.json | locations, location_private | self-service (dashboard) and on request |
| Waitlist | data/waitlist.json | waitlist, waitlist/waitlist_proposals | self-service (dashboard) and on request |
| Discount code, gift card and pass records | data/promotions.json | promo_codes, promo_code_usage, promo_code_usage/per_guest, discount_reversals, gift_cards, gift_cards/ledger, gift_card_redemptions, gift_card_purchases, gift_card_tax_policy_acceptances, pass_templates, session_passes, session_passes/pass_ledger, session_pass_redemptions, session_pass_purchases | self-service (dashboard) and on request |
| Guest payment and billing records | data/payments.json | bookings/payments, bookings/payment_attempts, disputes, payment_connections, billing, billing_invoices, billing_audit_events, platformBillingProfile, referral_claims, referral_stats | self-service (dashboard) and on request |
| Business profile, booking page content and settings | data/profile.json | @salon, meta, meta/legal_status_history, policy_acceptances, emailBranding, emailTemplates, integrations, staff/integrations, setup_state, owner_state, staff/notification_preferences, members/learning | self-service (dashboard) and on request |
| Newsletter campaigns, marketing consents and unsubscribes | data/marketing.json | marketing_consents, marketing_suppressions, newsletter_campaigns, newsletter_campaigns/recipients, marketing_events | self-service (dashboard) and on request |
| Uploaded images and files | files/ | salons/{salonId}/branding/, salons/{salonId}/public_profile/, salons/{salonId}/staff/, imports/{salonId}/, bug-reports/{salonId}/ | self-service (dashboard) and on request |
| Event logs and notification metadata | data/logs.json | bookings/notification_failures, notifications_sent, notification_log, owner_notifications, staff/staff_notifications, staff/notifications, audit_log, calendar_conflicts, staff/pending_calendar_invitations, review_request_tasks, bug_reports, booking_test_runs | self-service (dashboard) and on request |
Collection names are the names used in Bokko's data model; nested collections are written as parent/name, and @salon is the root document of the business profile.
Excluded data#
The following are not part of the transferable data. The exclusion does not impede or delay switching.
| Excluded data | Source (collection / storage path) |
|---|---|
| Security and abuse-prevention settings, authentication secrets, access tokens and keyed fingerprints | integrations_secrets, staff/integrations_secrets, staff/integrations_private, payment_connections/_credentials, bookings/dispatch, preview_tokens, member_access_revocations, booking_dedup, waitlist_dedup |
| Platform-level security and audit logs | bookings/_payment_audit, _diagnostics, admin_alerts, _demo_infra |
| Transient technical state derived from the transferred data | bookings/ops_state, newsletter_campaigns/ops_state, slot_holds, availability_locks, staff/freebusy_cache, guest_phone_index, guest_email_index, staff_link_index, location_slug_index, gift_card_index, session_pass_index, owner_notification_counters, owner_notification_counter_events, staff/notification_counters, staff/notification_counter_events, marketing_throttle_state, _marketing_audience_state, marketing_consent_outbox, cleanupTasks, exports/{salonId}/ |
| The subscriber's own upload in moderation quarantine until the review is concluded (the internal security state of quarantine is not transferable) | salons/{salonId}/moderation_quarantine/ |
Export format#
| Package | ZIP |
| Table of contents | manifest.json |
| Character encoding | UTF-8 |
| Record structure | One JSON file per category in the data/ folder; the file holds one array per collection, each record being { "id", "path", ...the stored fields under their original names }. |
| Timestamps | ISO 8601, UTC (RFC 3339) |
| Monetary amounts | monetary amounts with their stored value and field name, together with the currency code stored alongside |
| References | document references as full path strings |
| Geographic data | geographic point: { "latitude", "longitude" } |
| Binary data | Base64 |
| Files | original format and file name, keeping the storage path inside the files/ folder |
| Omitted fields | access tokens, secrets and keyed fingerprints are also left out at field level (field name: token, secret, password, apiKey, hmac, encrypted, hash) |
Format version: 1.0
_This page is generated from shared/legal/data_export_register.json._